From c65dd376f3b2a78fad7e41d9ad9bbd85920d0382 Mon Sep 17 00:00:00 2001 From: "shuo.wang" Date: Fri, 16 May 2025 10:56:49 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E6=8A=A5=E8=A1=A8=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=EF=BC=8C=E6=95=B0=E6=8D=AE=E6=A2=B3=E7=90=86=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/FranchiseReportServiceImpl.java | 33 +++++++++++-------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FranchiseReportServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FranchiseReportServiceImpl.java index 7ccf8eade..b7a018798 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FranchiseReportServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FranchiseReportServiceImpl.java @@ -58,8 +58,8 @@ public class FranchiseReportServiceImpl implements FranchiseReportService { request.setRegionIds(regionIdByGroupName); } else { request.getRegionIds().retainAll(regionIdByGroupName); - if (CollectionUtils.isEmpty(request.getRegionIds())){ - throw new ServiceException(ErrorCodeEnum.REGION_INTERSECTION_IS_NULL); + if (CollectionUtils.isEmpty(request.getRegionIds())) { + throw new ServiceException(ErrorCodeEnum.REGION_INTERSECTION_IS_NULL); } } } @@ -76,22 +76,25 @@ public class FranchiseReportServiceImpl implements FranchiseReportService { List bigRegionDOList = bigRegionDAO.getByRegionIdList(new ArrayList<>(regionSet)); Map bigRegionDOMap = bigRegionDOList.stream().collect(Collectors.toMap(BigRegionDO::getRegionId, bigRegionDO -> bigRegionDO)); Map responseByRegionIdMap = new HashMap<>(); - Map responseByJoinGroupNameMap = new HashMap<>(); + Map responseByJoinGroupNameMap = new HashMap<>(); for (FranchiseReportDTO shopFranchiseReportDTO : shopFranchiseReportList) { - FranchiseReportResponse response = new FranchiseReportResponse(); - if(CollectionUtils.isEmpty(request.getJoinGroupName()) && CollectionUtils.isEmpty(request.getRegionIds())){ - BigRegionDO bigRegionDO = bigRegionDOMap.get(shopFranchiseReportDTO.getRegionId()); - response = responseByJoinGroupNameMap.get(bigRegionDO.getGroupName()); + BigRegionDO bigRegionDO = bigRegionDOMap.get(shopFranchiseReportDTO.getRegionId()); + if (bigRegionDO == null) { + continue; } - else { - response = responseByRegionIdMap.get(shopFranchiseReportDTO.getRegionId()); + FranchiseReportResponse response = new FranchiseReportResponse(); + if (CollectionUtils.isEmpty(request.getJoinGroupName()) && CollectionUtils.isEmpty(request.getRegionIds())) { + response = responseByJoinGroupNameMap.getOrDefault(bigRegionDO.getGroupName(), new FranchiseReportResponse()); + response.setJoinGroupName(bigRegionDO.getGroupName()); + } else { + response = responseByRegionIdMap.get(shopFranchiseReportDTO.getRegionId()); } - if (response == null) { + if (response == null && CollectionUtils.isNotEmpty(request.getJoinGroupName()) && CollectionUtils.isNotEmpty(request.getRegionIds())) { response = new FranchiseReportResponse(); response.setRegionId(shopFranchiseReportDTO.getRegionId()); - response.setRegionName(bigRegionDOMap.getOrDefault(shopFranchiseReportDTO.getRegionId(), new BigRegionDO()).getRegionName()); - String groupName = bigRegionDOMap.getOrDefault(shopFranchiseReportDTO.getRegionId(), new BigRegionDO()).getGroupName(); + response.setRegionName(bigRegionDO.getRegionName()); + String groupName = bigRegionDO.getGroupName(); if (StringUtils.isBlank(groupName)) { continue; } @@ -117,7 +120,11 @@ public class FranchiseReportServiceImpl implements FranchiseReportService { .add(new BigDecimal(franchiseFeeDO.getFirstYearFee())) .add(new BigDecimal(franchiseFeeDO.getPerformanceBond()))); } - responseByRegionIdMap.put(shopFranchiseReportDTO.getRegionId(), response); + if (CollectionUtils.isEmpty(request.getJoinGroupName()) && CollectionUtils.isEmpty(request.getRegionIds())) { + responseByJoinGroupNameMap.put(bigRegionDO.getGroupName(), response); + } else { + responseByRegionIdMap.put(shopFranchiseReportDTO.getRegionId(), response); + } } FranchiseReportRequest yesterdayRequest = new FranchiseReportRequest(); yesterdayRequest.setRegionIds(request.getRegionIds());