From d7d9b601b2e4fdb663375993e2cfbdbd363df421 Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: 星期二, 11 七月 2023 22:17:37 +0800
Subject: [PATCH] Merge branch 'master' of http://git.homecommunity.cn/supervip/MicroCommunity

---
 service-fee/src/main/java/com/java110/fee/cmd/fee/SaveParkingSpaceCreateFeeCmd.java |   42 ++++++++++++++++++++++++++++++++----------
 1 files changed, 32 insertions(+), 10 deletions(-)

diff --git a/service-fee/src/main/java/com/java110/fee/cmd/fee/SaveParkingSpaceCreateFeeCmd.java b/service-fee/src/main/java/com/java110/fee/cmd/fee/SaveParkingSpaceCreateFeeCmd.java
index 659c550..23e2802 100644
--- a/service-fee/src/main/java/com/java110/fee/cmd/fee/SaveParkingSpaceCreateFeeCmd.java
+++ b/service-fee/src/main/java/com/java110/fee/cmd/fee/SaveParkingSpaceCreateFeeCmd.java
@@ -4,7 +4,7 @@
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.annotation.Java110Cmd;
 import com.java110.core.context.ICmdDataFlowContext;
-import com.java110.core.event.cmd.AbstractServiceCmdListener;
+import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.dto.fee.FeeAttrDto;
@@ -12,9 +12,10 @@
 import com.java110.dto.fee.FeeDto;
 import com.java110.dto.owner.OwnerCarDto;
 import com.java110.dto.parking.ParkingSpaceDto;
-import com.java110.dto.payFeeBatch.PayFeeBatchDto;
+import com.java110.dto.payFee.PayFeeBatchDto;
 import com.java110.dto.user.UserDto;
 import com.java110.fee.bmo.fee.IFeeBMO;
+import com.java110.fee.feeMonth.IPayFeeMonth;
 import com.java110.intf.community.IParkingSpaceInnerServiceSMO;
 import com.java110.intf.fee.IFeeAttrInnerServiceSMO;
 import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
@@ -24,7 +25,7 @@
 import com.java110.intf.user.IUserInnerServiceSMO;
 import com.java110.po.fee.FeeAttrPo;
 import com.java110.po.fee.PayFeePo;
-import com.java110.po.payFeeBatch.PayFeeBatchPo;
+import com.java110.po.payFee.PayFeeBatchPo;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
@@ -40,7 +41,7 @@
 import java.util.List;
 
 @Java110Cmd(serviceCode = "fee.saveParkingSpaceCreateFee")
-public class SaveParkingSpaceCreateFeeCmd extends AbstractServiceCmdListener {
+public class SaveParkingSpaceCreateFeeCmd extends Cmd {
 
     @Autowired
     private IFeeBMO feeBMOImpl;
@@ -61,6 +62,9 @@
 
     @Autowired
     private IUserInnerServiceSMO userInnerServiceSMOImpl;
+
+    @Autowired
+    private IPayFeeMonth payFeeMonthImpl;
 
     @Autowired
     private IFeeInnerServiceSMO feeInnerServiceSMOImpl;
@@ -91,7 +95,7 @@
         reqJson.put("feeFlag", feeConfigDtos.get(0).getFeeFlag());
         reqJson.put("configEndTime", feeConfigDtos.get(0).getEndTime());
 
-        if (FeeDto.FEE_FLAG_ONCE.equals(feeConfigDtos.get(0).getFeeFlag()) && reqJson.containsKey("endTime")) {
+        if (!FeeDto.FEE_FLAG_CYCLE.equals(feeConfigDtos.get(0).getFeeFlag()) && reqJson.containsKey("endTime")) {
             Date endTime = null;
             Date configEndTime = null;
             try {
@@ -110,9 +114,6 @@
         OwnerCarDto ownerCarDto = new OwnerCarDto();
 
         if ("1000".equals(reqJson.getString("locationTypeCd"))) {//灏忓尯
-//            ownerCarDto.setCommunityId(reqJson.getString("communityId"));
-//            ownerCarDto.setValid("1");
-//            ownerCarDtos = ownerCarInnerServiceSMOImpl.queryOwnerCars(ownerCarDto);
             reqJson.put("locationObjId", "");//鍒锋垚绌�
             ownerCarDtos = getOwnerCarByParkingArea(reqJson);
         } else if ("2000".equals(reqJson.getString("locationTypeCd"))) {//杞﹁締
@@ -220,11 +221,14 @@
         int curFailRoomCount = 0;
         //娣诲姞鍗曞厓淇℃伅
         int saveFlag = 0;
+        List<ParkingSpaceDto> parkingSpaceDtos = null;
+        ParkingSpaceDto parkingSpaceDto = null;
+        String carName = "";
         for (int ownerCarIndex = 0; ownerCarIndex < ownerCarDtos.size(); ownerCarIndex++) {
             curFailRoomCount++;
             feePos.add(BeanConvertUtil.covertBean(feeBMOImpl.addFee(ownerCarDtos.get(ownerCarIndex), reqJson, context), PayFeePo.class));
             if (!StringUtil.isEmpty(ownerCarDtos.get(ownerCarIndex).getOwnerId())) {
-                if (FeeDto.FEE_FLAG_ONCE.equals(reqJson.getString("feeFlag"))) {
+                if (!FeeDto.FEE_FLAG_CYCLE.equals(reqJson.getString("feeFlag"))) {
                     feeAttrsPos.add(feeBMOImpl.addFeeAttr(reqJson, context, FeeAttrDto.SPEC_CD_ONCE_FEE_DEADLINE_TIME,
                             reqJson.containsKey("endTime") ? reqJson.getString("endTime") : reqJson.getString("configEndTime")));
                 }
@@ -233,9 +237,20 @@
                 feeAttrsPos.add(feeBMOImpl.addFeeAttr(reqJson, context, FeeAttrDto.SPEC_CD_OWNER_NAME, ownerCarDtos.get(ownerCarIndex).getOwnerName()));
             }
 
+            parkingSpaceDto = new ParkingSpaceDto();
+            parkingSpaceDto.setCarNum(ownerCarDtos.get(ownerCarIndex).getCarNum());
+            parkingSpaceDto.setCommunityId(ownerCarDtos.get(0).getCommunityId());
+            parkingSpaceDtos = parkingSpaceInnerServiceSMOImpl.queryParkingSpaces(parkingSpaceDto);
+
+            if (parkingSpaceDtos != null && parkingSpaceDtos.size() > 0) {
+                carName = parkingSpaceDtos.get(0).getAreaNum() + parkingSpaceDtos.get(0).getNum() + "(" + ownerCarDtos.get(ownerCarIndex).getCarNum() + ")";
+            } else {
+                carName = ownerCarDtos.get(ownerCarIndex).getCarNum();
+            }
+
             //浠樿垂瀵硅薄鍚嶇О
             feeAttrsPos.add(feeBMOImpl.addFeeAttr(reqJson, context, FeeAttrDto.SPEC_CD_PAY_OBJECT_NAME,
-                    ownerCarDtos.get(ownerCarIndex).getAreaNum() + ownerCarDtos.get(ownerCarIndex).getNum() + "(" + ownerCarDtos.get(ownerCarIndex).getCarNum() + ")"));
+                    carName));
 
             if (ownerCarIndex % DEFAULT_ADD_FEE_COUNT == 0 && ownerCarIndex != 0) {
                 saveFlag = saveFeeAndAttrs(feePos, feeAttrsPos);
@@ -273,6 +288,13 @@
 
         flag = feeAttrInnerServiceSMOImpl.saveFeeAttrs(feeAttrsPos);
 
+        // todo 杩欓噷寮傛鐨勬柟寮忚绠� 鏈堟暟鎹� 鍜屾瑺璐规暟鎹�
+        List<String> feeIds = new ArrayList<>();
+        for (PayFeePo feePo : feePos) {
+            feeIds.add(feePo.getFeeId());
+        }
+        payFeeMonthImpl.doGeneratorFeeMonths(feeIds, feePos.get(0).getCommunityId());
+
         return flag;
     }
 

--
Gitblit v1.8.0