From f71331be3d231448ff696353140739bd5809a3b6 Mon Sep 17 00:00:00 2001 From: xiachao Date: Wed, 20 Nov 2024 17:23:31 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A2=B3=E8=B6=B3=E8=BF=B9=E6=89=B9=E6=AC=A1?= =?UTF-8?q?=E6=8A=A5=E8=A1=A8=EF=BC=8Cbug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CarbonPubProductionReportController.java | 2 +- .../pub/dto/CarbonPubProductionReportDTO.java | 2 - .../CarbonPubProductionReportServiceImpl.java | 1 + .../CarbonPubProductionResultServiceImpl.java | 90 ++++++++++--------- 4 files changed, 48 insertions(+), 47 deletions(-) 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; }