From d4b5fb54fdf0febfd433099f05ec63adf3578546 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期日, 06 十一月 2022 14:39:42 +0800
Subject: [PATCH] 优化代码

---
 service-community/src/main/java/com/java110/community/cmd/communityLocation/ListCommunityLocationCmd.java |   43 +++++++++++++++++++++++++++++++++----------
 1 files changed, 33 insertions(+), 10 deletions(-)

diff --git a/service-community/src/main/java/com/java110/community/cmd/communityLocation/ListCommunityLocationCmd.java b/service-community/src/main/java/com/java110/community/cmd/communityLocation/ListCommunityLocationCmd.java
index 321deda..0a313ca 100644
--- a/service-community/src/main/java/com/java110/community/cmd/communityLocation/ListCommunityLocationCmd.java
+++ b/service-community/src/main/java/com/java110/community/cmd/communityLocation/ListCommunityLocationCmd.java
@@ -17,26 +17,29 @@
 
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.annotation.Java110Cmd;
-import com.java110.core.annotation.Java110Transactional;
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
-import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.FloorDto;
+import com.java110.dto.UnitDto;
 import com.java110.dto.community.CommunityLocationDto;
 import com.java110.intf.community.ICommunityLocationInnerServiceSMO;
-import com.java110.intf.community.ICommunityLocationV1InnerServiceSMO;
+import com.java110.intf.community.IFloorInnerServiceSMO;
+import com.java110.intf.community.IUnitInnerServiceSMO;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.StringUtil;
 import com.java110.vo.ResultVo;
 import org.springframework.beans.factory.annotation.Autowired;
+
 import java.util.List;
 import java.util.ArrayList;
+
 import org.springframework.http.ResponseEntity;
 import org.springframework.http.HttpStatus;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-
 
 /**
  * 绫昏〃杩帮細鏌ヨ
@@ -51,12 +54,16 @@
 @Java110Cmd(serviceCode = "communityLocation.listCommunityLocations")
 public class ListCommunityLocationCmd extends Cmd {
 
-  private static Logger logger = LoggerFactory.getLogger(ListCommunityLocationCmd.class);
-    @Autowired
-    private ICommunityLocationV1InnerServiceSMO communityLocationV1InnerServiceSMOImpl;
+    private static Logger logger = LoggerFactory.getLogger(ListCommunityLocationCmd.class);
 
     @Autowired
     private ICommunityLocationInnerServiceSMO communityLocationInnerServiceSMOImpl;
+
+    @Autowired
+    private IUnitInnerServiceSMO unitInnerServiceSMOImpl;
+
+    @Autowired
+    private IFloorInnerServiceSMO floorInnerServiceSMOImpl;
 
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
@@ -67,15 +74,31 @@
     @Override
     public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
 
-
         CommunityLocationDto communityLocationDto = BeanConvertUtil.covertBean(reqJson, CommunityLocationDto.class);
 
         int count = communityLocationInnerServiceSMOImpl.queryCommunityLocationsCount(communityLocationDto);
 
-        List<CommunityLocationDto> communityLocationDtos = null;
+        List<CommunityLocationDto> communityLocationDtos = new ArrayList<>();
 
         if (count > 0) {
-            communityLocationDtos = communityLocationInnerServiceSMOImpl.queryCommunityLocations(communityLocationDto);
+            List<CommunityLocationDto> communityLocations = communityLocationInnerServiceSMOImpl.queryCommunityLocations(communityLocationDto);
+            for (CommunityLocationDto communityLocation : communityLocations) {
+                if (!StringUtil.isEmpty(communityLocation.getLocationType()) && communityLocation.getLocationType().equals("2000")
+                        && !StringUtil.isEmpty(communityLocation.getLocationObjId()) && !communityLocation.getLocationObjId().equals("-1")) { //鍗曞厓
+                    UnitDto unitDto = new UnitDto();
+                    unitDto.setUnitId(communityLocation.getLocationObjId());
+                    List<UnitDto> unitDtos = unitInnerServiceSMOImpl.queryUnits(unitDto);
+                    Assert.listOnlyOne(unitDtos, "鏌ヨ鍗曞厓閿欒");
+                    communityLocation.setFloorId(unitDtos.get(0).getFloorId());
+                    communityLocation.setUnitNum(unitDtos.get(0).getUnitNum());
+                    FloorDto floorDto = new FloorDto();
+                    floorDto.setFloorId(unitDtos.get(0).getFloorId());
+                    List<FloorDto> floorDtos = floorInnerServiceSMOImpl.queryFloors(floorDto);
+                    Assert.listOnlyOne(floorDtos, "鏌ヨ妤兼爧閿欒");
+                    communityLocation.setFloorNum(floorDtos.get(0).getFloorNum());
+                }
+                communityLocationDtos.add(communityLocation);
+            }
         } else {
             communityLocationDtos = new ArrayList<>();
         }

--
Gitblit v1.8.0