From 2703710ab562eca0b94fbfda76a196cc30e64483 Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: 星期二, 18 四月 2023 00:06:07 +0800
Subject: [PATCH] 优化 导入费用时,模板上能体现一下房屋状态,这样未销售房就不会依然被填入

---
 service-fee/src/main/java/com/java110/fee/cmd/fee/ListFeeCmd.java |   35 +++++++++++------------------------
 1 files changed, 11 insertions(+), 24 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 526b985..3e82feb 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
@@ -22,7 +22,6 @@
 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;
 import com.java110.intf.user.IOwnerCarInnerServiceSMO;
 import com.java110.intf.user.IOwnerInnerServiceSMO;
@@ -49,9 +48,6 @@
 public class ListFeeCmd extends Cmd {
 
     private static Logger logger = LoggerFactory.getLogger(ListFeeCmd.class);
-
-    @Autowired
-    private IFeeConfigInnerServiceSMO feeConfigInnerServiceSMOImpl;
 
     @Autowired
     private IParkingSpaceInnerServiceSMO parkingSpaceInnerServiceSMOImpl;
@@ -128,14 +124,13 @@
                             roomDto.setRoomNum(roomNum);
                             roomDto.setCommunityId(reqJson.getString("communityId"));
                             List<RoomDto> roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto);
-                            Assert.listOnlyOne(roomDtos, "鏌ヨ鎴垮眿閿欒锛�");
+                            Assert.listOnlyOne(roomDtos, "鏌ヨ涓嶅埌鎴垮眿锛�");
                             reqJson.put("payerObjId", roomDtos.get(0).getRoomId());
                         }
                     }
                 }
             }
         }
-
         FeeDto feeDto = BeanConvertUtil.covertBean(reqJson, FeeDto.class);
         List<ApiFeeDataVo> fees = new ArrayList<>();
         if (reqJson.containsKey("ownerId") && !StringUtil.isEmpty(reqJson.getString("ownerId"))) {
@@ -185,12 +180,15 @@
                     OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();
                     ownerRoomRelDto.setRoomId(feeDto.getPayerObjId());
                     List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelV1InnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
-                    Assert.listOnlyOne(ownerRoomRelDtos, "鏌ヨ涓氫富鎴垮眿鍏崇郴琛ㄩ敊璇紒");
-                    OwnerDto ownerDto = new OwnerDto();
-                    ownerDto.setMemberId(ownerRoomRelDtos.get(0).getOwnerId());
-                    List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwners(ownerDto);
-                    Assert.listOnlyOne(ownerDtos, "鏌ヨ涓氫富閿欒锛�");
-                    link = ownerDtos.get(0).getLink();
+                    if (ownerRoomRelDtos != null && ownerRoomRelDtos.size() == 1) {
+                        OwnerDto ownerDto = new OwnerDto();
+                        ownerDto.setMemberId(ownerRoomRelDtos.get(0).getOwnerId());
+                        List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwners(ownerDto);
+                        Assert.listOnlyOne(ownerDtos, "鏌ヨ涓氫富閿欒锛�");
+                        link = ownerDtos.get(0).getLink();
+                    } else {
+                        continue;
+                    }
                 } else if (!StringUtil.isEmpty(feeDto.getPayerObjType()) && feeDto.getPayerObjType().equals("6666")) {
                     OwnerCarDto ownerCarDto = new OwnerCarDto();
                     ownerCarDto.setCarId(feeDto.getPayerObjId());
@@ -228,7 +226,6 @@
     }
 
     private void computeFeePrice(List<FeeDto> feeDtos) {
-
         if (feeDtos == null || feeDtos.size() < 1) {
             return;
         }
@@ -236,19 +233,16 @@
         if (StringUtil.isEmpty(val)) {
             val = MappingCache.getValue(DOMAIN_COMMON, TOTAL_FEE_PRICE);
         }
-
         //鍏堝彇鍗曞皬鍖虹殑濡傛灉娌℃湁閰嶇疆 鍙� 鍏ㄥ眬鐨�
         String received_amount_switch = CommunitySettingFactory.getValue(feeDtos.get(0).getCommunityId(), RECEIVED_AMOUNT_SWITCH);
         if (StringUtil.isEmpty(received_amount_switch)) {
             received_amount_switch = MappingCache.getValue(DOMAIN_COMMON, RECEIVED_AMOUNT_SWITCH);
         }
-
         //鍏堝彇鍗曞皬鍖虹殑濡傛灉娌℃湁閰嶇疆 鍙� 鍏ㄥ眬鐨�
         String offlinePayFeeSwitch = CommunitySettingFactory.getValue(feeDtos.get(0).getCommunityId(), OFFLINE_PAY_FEE_SWITCH);
         if (StringUtil.isEmpty(offlinePayFeeSwitch)) {
             offlinePayFeeSwitch = MappingCache.getValue(DOMAIN_COMMON, OFFLINE_PAY_FEE_SWITCH);
         }
-
         for (FeeDto feeDto : feeDtos) {
             try {
                 // 杞暟 * 鍛ㄦ湡 * 30 + 寮�濮嬫椂闂� = 鐩爣 鍒版湡鏃堕棿
@@ -264,7 +258,6 @@
                 } else if (FeeDto.PAYER_OBJ_TYPE_CONTRACT.equals(feeDto.getPayerObjType())) {//杞︿綅鐩稿叧
                     computeFeePriceByContract(feeDto, oweMonth);
                 }
-
                 feeDto.setVal(val);
                 //鍏抽棴 绾夸笅鏀堕摱鍔熻兘
                 if (StringUtil.isEmpty(received_amount_switch)) {
@@ -273,14 +266,12 @@
                     feeDto.setReceivedAmountSwitch(received_amount_switch);
                 }
                 feeDto.setOfflinePayFeeSwitch(offlinePayFeeSwitch);
-
             } catch (Exception e) {
                 logger.error("鏌ヨ璐圭敤淇℃伅 锛岃垂鐢ㄤ俊鎭敊璇�", e);
             }
-
             //鍘绘帀澶氫綑0
             feeDto.setSquarePrice(Double.parseDouble(feeDto.getSquarePrice()) + "");
-            feeDto.setAdditionalAmount(Double.parseDouble(feeDto.getAdditionalAmount())+"");
+            feeDto.setAdditionalAmount(Double.parseDouble(feeDto.getAdditionalAmount()) + "");
         }
     }
 
@@ -305,7 +296,6 @@
         Map feePriceAll = computeFeeSMOImpl.getFeePrice(feeDto);
         feeDto.setFeePrice(Double.parseDouble(feePriceAll.get("feePrice").toString()));
         feeDto.setFeeTotalPrice(Double.parseDouble(feePriceAll.get("feeTotalPrice").toString()));
-
         BigDecimal curFeePrice = new BigDecimal(feeDto.getFeePrice());
         curFeePrice = curFeePrice.multiply(new BigDecimal(oweMonth));
         feeDto.setAmountOwed(df.format(curFeePrice));
@@ -316,7 +306,6 @@
             feeDto.setAmountOwed(df.format(curFeePrice));
             feeDto.setDeadlineTime(DateUtil.getCurrentDate());
         }
-
         //鑰冭檻绉熼噾閫掑
         computeFeeSMOImpl.dealRentRate(feeDto);
     }
@@ -344,12 +333,10 @@
                 && feeDto.getDeadlineTime() == null) {
             feeDto.setDeadlineTime(DateUtil.getCurrentDate());
         }
-
         //鑰冭檻绉熼噾閫掑
         computeFeeSMOImpl.dealRentRate(feeDto);
 
     }
-
 
     /**
      * 鏍规嵁鍚堝悓鏉ョ畻鍗曚环

--
Gitblit v1.8.0