From 2359f0ad99b43b9d03ef36b7625309af8fa10bb9 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Thu, 12 May 2022 15:35:43 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A5=BC=E6=A0=8B=E6=9B=B4=E6=96=B0=E6=A0=87?= =?UTF-8?q?=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/dto/ImportGeneralDTO.java | 6 +++ .../model/ImportBuildingInfoListener.java | 1 + .../impl/IcNeighborHoodServiceImpl.java | 42 ++++++++++--------- 3 files changed, 29 insertions(+), 20 deletions(-) diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/ImportGeneralDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/ImportGeneralDTO.java index e91bf8e3a3..1bfeb17521 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/ImportGeneralDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/ImportGeneralDTO.java @@ -173,4 +173,10 @@ public class ImportGeneralDTO implements Serializable { * 排序 */ private BigDecimal sort; + + /** + * 是否更新状态,false:不更,true:更新 + */ + private Boolean buildingUpdateStatus = false; + private Boolean neighborHoodUpdateStatus = false; } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportBuildingInfoListener.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportBuildingInfoListener.java index df4d9d3243..c9b9140f9d 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportBuildingInfoListener.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportBuildingInfoListener.java @@ -87,6 +87,7 @@ public class ImportBuildingInfoListener extends AnalysisEventListener units = icBuildingUnitService.getUnitOptions(building.getId()); - Map unitMap = units.stream().collect(Collectors.toMap(OptionResultDTO::getCode, OptionResultDTO::getLabel)); - List unitList = new ArrayList<>(); - for (int i = 1; i <= info.getTotalUnitNum(); i++) { - String unitNum = String.valueOf(i); - if (!unitMap.containsKey(unitNum)) { - IcBuildingUnitEntity icBuildingUnit = new IcBuildingUnitEntity(); - icBuildingUnit.setId(IdWorker.getIdStr()); - icBuildingUnit.setBuildingId(building.getId()); - icBuildingUnit.setCustomerId(customerId); - icBuildingUnit.setUnitName(unitNum + "单元"); - icBuildingUnit.setUnitNum(unitNum); - unitList.add(icBuildingUnit); + if (info.getBuildingUpdateStatus()){ + if (info.getTotalUnitNum() < building.getTotalUnitNum()){ + info.setBuildingUnitNumStatus(true); + }else { + info.setBuildingId(building.getId()); + icBuildingService.updateBuilding(info); + //新增单元 + List units = icBuildingUnitService.getUnitOptions(building.getId()); + Map unitMap = units.stream().collect(Collectors.toMap(OptionResultDTO::getCode, OptionResultDTO::getLabel)); + List unitList = new ArrayList<>(); + for (int i = 1; i <= info.getTotalUnitNum(); i++) { + String unitNum = String.valueOf(i); + if (!unitMap.containsKey(unitNum)) { + IcBuildingUnitEntity icBuildingUnit = new IcBuildingUnitEntity(); + icBuildingUnit.setId(IdWorker.getIdStr()); + icBuildingUnit.setBuildingId(building.getId()); + icBuildingUnit.setCustomerId(customerId); + icBuildingUnit.setUnitName(unitNum + "单元"); + icBuildingUnit.setUnitNum(unitNum); + unitList.add(icBuildingUnit); + } } + icBuildingUnitService.insertBatch(unitList, NumConstant.ONE_HUNDRED); } - icBuildingUnitService.insertBatch(unitList, NumConstant.ONE_HUNDRED); } return building.getId(); }