From b06ccd76e50812d81ee689dcd609bb02ac5c4ed4 Mon Sep 17 00:00:00 2001
From: xiaogang <905166056@qq.com>
Date: 星期四, 11 八月 2022 14:48:52 +0800
Subject: [PATCH] 1、优化页面展示行问题

---
 service-fee/src/main/java/com/java110/fee/cmd/fee/ListFeeCmd.java |   49 ++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 48 insertions(+), 1 deletions(-)

diff --git a/service-fee/src/main/java/com/java110/fee/cmd/fee/ListFeeCmd.java b/service-fee/src/main/java/com/java110/fee/cmd/fee/ListFeeCmd.java
index 718182b..f81ac58 100644
--- a/service-fee/src/main/java/com/java110/fee/cmd/fee/ListFeeCmd.java
+++ b/service-fee/src/main/java/com/java110/fee/cmd/fee/ListFeeCmd.java
@@ -8,10 +8,16 @@
 import com.java110.core.factory.CommunitySettingFactory;
 import com.java110.core.log.LoggerFactory;
 import com.java110.core.smo.IComputeFeeSMO;
+import com.java110.dto.FloorDto;
+import com.java110.dto.RoomDto;
+import com.java110.dto.UnitDto;
 import com.java110.dto.fee.FeeDto;
 import com.java110.dto.owner.OwnerCarDto;
 import com.java110.dto.parking.ParkingSpaceDto;
+import com.java110.intf.community.IFloorInnerServiceSMO;
 import com.java110.intf.community.IParkingSpaceInnerServiceSMO;
+import com.java110.intf.community.IRoomInnerServiceSMO;
+import com.java110.intf.community.IUnitInnerServiceSMO;
 import com.java110.intf.fee.IFeeAttrInnerServiceSMO;
 import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
 import com.java110.intf.fee.IFeeInnerServiceSMO;
@@ -38,6 +44,7 @@
 
 @Java110Cmd(serviceCode = "fee.listFee")
 public class ListFeeCmd extends Cmd {
+
     private static Logger logger = LoggerFactory.getLogger(ListFeeCmd.class);
 
     @Autowired
@@ -57,6 +64,15 @@
 
     @Autowired
     private IComputeFeeSMO computeFeeSMOImpl;
+
+    @Autowired
+    private IFloorInnerServiceSMO floorInnerServiceSMOImpl;
+
+    @Autowired
+    private IUnitInnerServiceSMO unitInnerServiceSMOImpl;
+
+    @Autowired
+    private IRoomInnerServiceSMO roomInnerServiceSMOImpl;
 
     //鍩�
     public static final String DOMAIN_COMMON = "DOMAIN.COMMON";
@@ -78,6 +94,38 @@
 
     @Override
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
+        if (reqJson.containsKey("roomNum") && !StringUtil.isEmpty(reqJson.getString("roomNum"))) {
+            String[] roomNums = reqJson.getString("roomNum").split("-");
+            if (roomNums == null || roomNums.length != 3) {
+                throw new IllegalArgumentException("鎴垮眿缂栧彿鏍煎紡閿欒锛�");
+            }
+            String floorNum = roomNums[0];
+            String unitNum = roomNums[1];
+            String roomNum = roomNums[2];
+            FloorDto floorDto = new FloorDto();
+            floorDto.setFloorNum(floorNum);
+            floorDto.setCommunityId(reqJson.getString("communityId"));
+            List<FloorDto> floorDtos = floorInnerServiceSMOImpl.queryFloors(floorDto);
+            if (floorDtos != null && floorDtos.size() > 0) {
+                for (FloorDto floor : floorDtos) {
+                    UnitDto unitDto = new UnitDto();
+                    unitDto.setFloorId(floor.getFloorId());
+                    unitDto.setUnitNum(unitNum);
+                    List<UnitDto> unitDtos = unitInnerServiceSMOImpl.queryUnits(unitDto);
+                    if (unitDtos != null && unitDtos.size() > 0) {
+                        for (UnitDto unit : unitDtos) {
+                            RoomDto roomDto = new RoomDto();
+                            roomDto.setUnitId(unit.getUnitId());
+                            roomDto.setRoomNum(roomNum);
+                            roomDto.setCommunityId(reqJson.getString("communityId"));
+                            List<RoomDto> roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto);
+                            Assert.listOnlyOne(roomDtos, "鏌ヨ鎴垮眿閿欒锛�");
+                            reqJson.put("payerObjId", roomDtos.get(0).getRoomId());
+                        }
+                    }
+                }
+            }
+        }
 
         FeeDto feeDto = BeanConvertUtil.covertBean(reqJson, FeeDto.class);
 
@@ -258,7 +306,6 @@
             feeDto.setAmountOwed(df.format(curFeePrice) + "");
             feeDto.setDeadlineTime(DateUtil.getCurrentDate());
         }
-
         //鑰冭檻绉熼噾閫掑
         computeFeeSMOImpl.dealRentRate(feeDto);
     }

--
Gitblit v1.8.0