diff --git a/modules/carbon-public/src/main/java/com/thing/carbon/pub/controller/CarbonPubProductionReportController.java b/modules/carbon-public/src/main/java/com/thing/carbon/pub/controller/CarbonPubProductionReportController.java index d6d658c..c1c5bd0 100644 --- a/modules/carbon-public/src/main/java/com/thing/carbon/pub/controller/CarbonPubProductionReportController.java +++ b/modules/carbon-public/src/main/java/com/thing/carbon/pub/controller/CarbonPubProductionReportController.java @@ -70,7 +70,7 @@ public class CarbonPubProductionReportController { @Parameter(name = "tenantCode", description = "租户编码"), }) public Result> list(@Parameter(hidden = true) @RequestParam Map params){ - Long tenantCode = MapUtils.getLong(params, "tenantCode"); + Long tenantCode = MapUtils.getLong(params, "tenantCodes"); if (Objects.isNull(tenantCode)) { return new Result>().ok(List.of()); } diff --git a/modules/carbon-public/src/main/java/com/thing/carbon/pub/dto/CarbonPubProductionReportDTO.java b/modules/carbon-public/src/main/java/com/thing/carbon/pub/dto/CarbonPubProductionReportDTO.java index 27e404d..8980fe3 100644 --- a/modules/carbon-public/src/main/java/com/thing/carbon/pub/dto/CarbonPubProductionReportDTO.java +++ b/modules/carbon-public/src/main/java/com/thing/carbon/pub/dto/CarbonPubProductionReportDTO.java @@ -40,11 +40,9 @@ public class CarbonPubProductionReportDTO implements Serializable { @Schema(description = "数据边界类型:1-自然月;2-自然年;3-自定义") private Integer boundaryType; @Schema(description = "数据边界开始时间") - @JsonProperty(access = JsonProperty.Access.READ_ONLY) @JsonFormat(pattern = DateTimeUtils.DATE_TIME_PATTERN_STR) private Date boundaryStart; @Schema(description = "数据边界结束时间") - @JsonProperty(access = JsonProperty.Access.READ_ONLY) @JsonFormat(pattern = DateTimeUtils.DATE_TIME_PATTERN_STR) private Date boundaryEnd; @Schema(description = "碳足迹值") diff --git a/modules/carbon-public/src/main/java/com/thing/carbon/pub/service/impl/CarbonPubProductionReportServiceImpl.java b/modules/carbon-public/src/main/java/com/thing/carbon/pub/service/impl/CarbonPubProductionReportServiceImpl.java index bc61c1e..45b20d2 100644 --- a/modules/carbon-public/src/main/java/com/thing/carbon/pub/service/impl/CarbonPubProductionReportServiceImpl.java +++ b/modules/carbon-public/src/main/java/com/thing/carbon/pub/service/impl/CarbonPubProductionReportServiceImpl.java @@ -119,6 +119,7 @@ public class CarbonPubProductionReportServiceImpl extends BaseServiceImpl pmJsonArrayList = carbonTypeDetailMap.get("2"); List pmProcessDetailResult = new ArrayList<>(); - List pmProcessDetails = - pmJsonArrayList.stream() - .map(arr -> arr.toJavaList(PmProcessDetail.class)) - .flatMap(Collection::stream) - .sorted(Comparator.comparing(PmProcessDetail::getOrderNum)) - .toList(); - pmProcessDetails.stream() - .collect( - Collectors.groupingBy( - e -> - e.getProcessName() - + "_" - + e.getProcessCode() - + "_" - + e.getEvId())) - .forEach( - (k, v) -> { - Optional opt = v.stream().reduce(PmProcessDetail::add); - opt.ifPresent(pmProcessDetailResult::add); - }); + if(Objects.nonNull(pmJsonArrayList.get(0))){ + List pmProcessDetails = + pmJsonArrayList.stream() + .map(arr -> arr.toJavaList(PmProcessDetail.class)) + .flatMap(Collection::stream) + .sorted(Comparator.comparing(PmProcessDetail::getOrderNum)) + .toList(); + pmProcessDetails.stream() + .collect( + Collectors.groupingBy( + e -> + e.getProcessName() + + "_" + + e.getProcessCode() + + "_" + + e.getEvId())) + .forEach( + (k, v) -> { + Optional opt = v.stream().reduce(PmProcessDetail::add); + opt.ifPresent(pmProcessDetailResult::add); + }); + } res.setProductDetails(pmProcessDetailResult); - // 公摊消耗与排放 List shareJsonArrayList = carbonTypeDetailMap.get("3"); List pIndirectDetailResult = new ArrayList<>(); - List pIndirectDetails = - shareJsonArrayList.stream() - .map(arr -> arr.toJavaList(PIndirectDetail.class)) - .flatMap(Collection::stream) - .sorted(Comparator.comparing(PIndirectDetail::getOrderNum)) - .toList(); - pIndirectDetails.stream() - .collect( - Collectors.groupingBy( - e -> - e.getProcessName() - + "_" - + e.getProcessCode() - + "_" - + e.getIeName() - + "_" - + e.getEvId())) - .forEach( - (k, v) -> { - Optional opt = v.stream().reduce(PIndirectDetail::add); - opt.ifPresent(pIndirectDetailResult::add); - }); + if(Objects.nonNull(shareJsonArrayList.get(0))){ + List pIndirectDetails = + shareJsonArrayList.stream() + .map(arr -> arr.toJavaList(PIndirectDetail.class)) + .flatMap(Collection::stream) + .sorted(Comparator.comparing(PIndirectDetail::getOrderNum)) + .toList(); + pIndirectDetails.stream() + .collect( + Collectors.groupingBy( + e -> + e.getProcessName() + + "_" + + e.getProcessCode() + + "_" + + e.getIeName() + + "_" + + e.getEvId())) + .forEach( + (k, v) -> { + Optional opt = v.stream().reduce(PIndirectDetail::add); + opt.ifPresent(pIndirectDetailResult::add); + }); + } res.setShareDetails(pIndirectDetailResult); - return res; }