From b536b4e005a3aee7908a60c31eddff90bf4b98dc Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期六, 07 八月 2021 22:20:16 +0800
Subject: [PATCH] Merge branch 'master' of http://git.homecommunity.cn/supervip/MicroCommunity

---
 service-fee/src/main/java/com/java110/fee/bmo/payFeeDetail/impl/ImportPayFeeDetailBMOImpl.java |  143 ++++++++++++++++++++++++++++-------------------
 1 files changed, 85 insertions(+), 58 deletions(-)

diff --git a/service-fee/src/main/java/com/java110/fee/bmo/payFeeDetail/impl/ImportPayFeeDetailBMOImpl.java b/service-fee/src/main/java/com/java110/fee/bmo/payFeeDetail/impl/ImportPayFeeDetailBMOImpl.java
old mode 100644
new mode 100755
index 8089390..5915f5e
--- a/service-fee/src/main/java/com/java110/fee/bmo/payFeeDetail/impl/ImportPayFeeDetailBMOImpl.java
+++ b/service-fee/src/main/java/com/java110/fee/bmo/payFeeDetail/impl/ImportPayFeeDetailBMOImpl.java
@@ -6,14 +6,13 @@
 import com.java110.dto.fee.FeeConfigDto;
 import com.java110.dto.fee.FeeDetailDto;
 import com.java110.dto.fee.FeeDto;
-import com.java110.dto.feeReceipt.FeeReceiptDetailDto;
 import com.java110.entity.assetImport.ImportRoomFee;
 import com.java110.fee.bmo.payFeeDetail.IImportPayFeeBMODetail;
-import com.java110.intf.fee.IImportFeeDetailInnerServiceSMO;
 import com.java110.intf.community.IRoomInnerServiceSMO;
 import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
 import com.java110.intf.fee.IFeeDetailInnerServiceSMO;
 import com.java110.intf.fee.IFeeInnerServiceSMO;
+import com.java110.intf.fee.IImportFeeDetailInnerServiceSMO;
 import com.java110.intf.user.IOwnerCarInnerServiceSMO;
 import com.java110.po.fee.PayFeeDetailPo;
 import com.java110.po.fee.PayFeePo;
@@ -21,6 +20,7 @@
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.utils.util.DateUtil;
+import com.java110.utils.util.StringUtil;
 import com.java110.vo.ResultVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.ResponseEntity;
@@ -77,9 +77,9 @@
         if (importRoomFees.size() < 1) {
             return ResultVo.success();
         }
-        if(FeeDto.PAYER_OBJ_TYPE_ROOM.equals(objType)) {
+        if (FeeDto.PAYER_OBJ_TYPE_ROOM.equals(objType)) {
             importFeeDetails(storeId, userId, importRoomFees);
-        }else{
+        } else {
             importCarFeeDetails(storeId, userId, importRoomFees);
         }
 
@@ -90,6 +90,9 @@
 
         importRoomFees = roomInnerServiceSMOImpl.freshRoomIds(importRoomFees);
         for (ImportRoomFee importRoomFee : importRoomFees) {
+            if (StringUtil.isEmpty(importRoomFee.getRoomId())) {
+                continue;
+            }
             importFeeDetail(importRoomFee, storeId, userId);
         }
     }
@@ -99,6 +102,9 @@
 
         importCarFees = ownerCarInnerServiceSMOImpl.freshCarIds(importCarFees);
         for (ImportRoomFee importCarFee : importCarFees) {
+            if (StringUtil.isEmpty(importCarFee.getCarId())) {
+                continue;
+            }
             importCarFeeDetail(importCarFee, storeId, userId);
         }
     }
@@ -111,11 +117,11 @@
     private void importCarFeeDetail(ImportRoomFee importRoomFee, String storeId, String userId) {
 
         FeeConfigDto feeConfigDto = new FeeConfigDto();
-        feeConfigDto.setFeeName(importRoomFee.getFeeName());
+        feeConfigDto.setFeeNameEq(importRoomFee.getFeeName());
         feeConfigDto.setCommunityId(importRoomFee.getCommunityId());
         List<FeeConfigDto> feeConfigDtos = feeConfigInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
 
-        Assert.listOnlyOne(feeConfigDtos, "璐圭敤涓嶅瓨鍦ㄦ垨瀛樺湪澶氭潯");
+        Assert.listOnlyOne(feeConfigDtos, "璐圭敤椤逛笉瀛樺湪鎴栧瓨鍦ㄥ鏉�");
 
         FeeConfigDto tmpFeeConfigDto = feeConfigDtos.get(0);
 
@@ -128,24 +134,32 @@
 
         List<PayFeePo> payFeePos = null;
         if (feeDtos == null || feeDtos.size() < 1) {
-            PayFeePo payFeePo = new PayFeePo();
-            payFeePo.setCommunityId(importRoomFee.getCommunityId());
-            payFeePo.setConfigId(feeDto.getConfigId());
-            payFeePo.setPayerObjType(FeeDto.PAYER_OBJ_TYPE_CAR);
-            payFeePo.setStartTime(importRoomFee.getStartTime());
-            payFeePo.setEndTime(importRoomFee.getEndTime());
-            payFeePo.setAmount(importRoomFee.getAmount());
-            payFeePo.setFeeFlag(tmpFeeConfigDto.getFeeFlag());
-            payFeePo.setFeeTypeCd(tmpFeeConfigDto.getFeeTypeCd());
-            payFeePo.setIncomeObjId(storeId);
-            payFeePo.setState(FeeDto.STATE_DOING);
-            payFeePo.setFeeId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_feeId));
-            payFeePo.setPayerObjId(importRoomFee.getCarId());
-            payFeePo.setUserId(userId);
-            payFeePo.setCreateTime(importRoomFee.getCreateTime());
-            payFeePos = new ArrayList<>();
-            payFeePos.add(payFeePo);
-            feeInnerServiceSMOImpl.saveFee(payFeePos);
+            try {
+                PayFeePo payFeePo = new PayFeePo();
+                payFeePo.setCommunityId(importRoomFee.getCommunityId());
+                payFeePo.setConfigId(feeDto.getConfigId());
+                payFeePo.setPayerObjType(FeeDto.PAYER_OBJ_TYPE_CAR);
+                payFeePo.setStartTime(importRoomFee.getStartTime());
+                payFeePo.setEndTime(importRoomFee.getEndTime());
+                payFeePo.setAmount(importRoomFee.getAmount());
+                payFeePo.setFeeFlag(tmpFeeConfigDto.getFeeFlag());
+                payFeePo.setFeeTypeCd(tmpFeeConfigDto.getFeeTypeCd());
+                payFeePo.setIncomeObjId(storeId);
+                if (FeeDto.FEE_FLAG_ONCE.equals(tmpFeeConfigDto.getFeeFlag())) {
+                    payFeePo.setState(FeeDto.STATE_FINISH);
+                } else {
+                    payFeePo.setState(FeeDto.STATE_DOING);
+                }
+                payFeePo.setFeeId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_feeId));
+                payFeePo.setPayerObjId(importRoomFee.getCarId());
+                payFeePo.setUserId(userId);
+                payFeePo.setCreateTime(importRoomFee.getCreateTime());
+                payFeePos = new ArrayList<>();
+                payFeePos.add(payFeePo);
+                feeInnerServiceSMOImpl.saveFee(payFeePos);
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
             feeDtos = feeInnerServiceSMOImpl.queryFees(feeDto);
         }
 
@@ -171,7 +185,7 @@
         feeConfigDto.setCommunityId(importRoomFee.getCommunityId());
         List<FeeConfigDto> feeConfigDtos = feeConfigInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
 
-        Assert.listOnlyOne(feeConfigDtos, "璐圭敤涓嶅瓨鍦ㄦ垨瀛樺湪澶氭潯");
+        Assert.listOnlyOne(feeConfigDtos, "璐圭敤椤逛笉瀛樺湪鎴栧瓨鍦ㄥ鏉�");
 
         FeeConfigDto tmpFeeConfigDto = feeConfigDtos.get(0);
 
@@ -184,31 +198,39 @@
 
         List<PayFeePo> payFeePos = null;
         if (feeDtos == null || feeDtos.size() < 1) {
-            PayFeePo payFeePo = new PayFeePo();
-            payFeePo.setCommunityId(importRoomFee.getCommunityId());
-            payFeePo.setConfigId(feeDto.getConfigId());
-            payFeePo.setPayerObjType(FeeDto.PAYER_OBJ_TYPE_ROOM);
-            payFeePo.setStartTime(importRoomFee.getStartTime());
-            payFeePo.setEndTime(importRoomFee.getEndTime());
-            payFeePo.setAmount(importRoomFee.getAmount());
-            payFeePo.setFeeFlag(tmpFeeConfigDto.getFeeFlag());
-            payFeePo.setFeeTypeCd(tmpFeeConfigDto.getFeeTypeCd());
-            payFeePo.setIncomeObjId(storeId);
-            payFeePo.setState(FeeDto.STATE_DOING);
-            payFeePo.setFeeId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_feeId));
-            payFeePo.setPayerObjId(importRoomFee.getRoomId());
-            payFeePo.setUserId(userId);
-            payFeePo.setCreateTime(importRoomFee.getCreateTime());
-            payFeePos = new ArrayList<>();
-            payFeePos.add(payFeePo);
-            feeInnerServiceSMOImpl.saveFee(payFeePos);
+            try {
+                PayFeePo payFeePo = new PayFeePo();
+                payFeePo.setCommunityId(importRoomFee.getCommunityId());
+                payFeePo.setConfigId(feeDto.getConfigId());
+                payFeePo.setPayerObjType(FeeDto.PAYER_OBJ_TYPE_ROOM);
+                payFeePo.setStartTime(importRoomFee.getStartTime());
+                payFeePo.setEndTime(importRoomFee.getEndTime());
+                payFeePo.setAmount(importRoomFee.getAmount());
+                payFeePo.setFeeFlag(tmpFeeConfigDto.getFeeFlag());
+                payFeePo.setFeeTypeCd(tmpFeeConfigDto.getFeeTypeCd());
+                payFeePo.setIncomeObjId(storeId);
+                if (FeeDto.FEE_FLAG_ONCE.equals(tmpFeeConfigDto.getFeeFlag())) {
+                    payFeePo.setState(FeeDto.STATE_FINISH);
+                } else {
+                    payFeePo.setState(FeeDto.STATE_DOING);
+                }
+                payFeePo.setFeeId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_feeId));
+                payFeePo.setPayerObjId(importRoomFee.getRoomId());
+                payFeePo.setUserId(userId);
+                payFeePo.setCreateTime(importRoomFee.getCreateTime());
+                payFeePos = new ArrayList<>();
+                payFeePos.add(payFeePo);
+                feeInnerServiceSMOImpl.saveFee(payFeePos);
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
             feeDtos = feeInnerServiceSMOImpl.queryFees(feeDto);
         }
 
         for (FeeDto tmpFeeDto : feeDtos) {
             try {
                 doImportFeeDetail(tmpFeeDto, importRoomFee);
-            } catch (ParseException e) {
+            } catch (Exception e) {
                 e.printStackTrace();
             }
         }
@@ -216,20 +238,20 @@
     }
 
     private void doImportFeeDetail(FeeDto tmpFeeDto, ImportRoomFee importRoomFee) throws ParseException {
-        FeeDetailDto feeDetailDto = new FeeDetailDto();
-        feeDetailDto.setCommunityId(importRoomFee.getCommunityId());
-        feeDetailDto.setFeeId(tmpFeeDto.getFeeId());
-
-
-        feeDetailDto.setStartTime(DateUtil.getDateFromString(importRoomFee.getStartTime(), DateUtil.DATE_FORMATE_STRING_B));
-        feeDetailDto.setEndTime(DateUtil.getDateFromString(importRoomFee.getEndTime(), DateUtil.DATE_FORMATE_STRING_B));
-        feeDetailDto.setCreateTime(DateUtil.getDateFromString(importRoomFee.getCreateTime(), DateUtil.DATE_FORMATE_STRING_B));
-
-        List<FeeDetailDto> feeDetailDtos = feeDetailInnerServiceSMOImpl.queryFeeDetails(feeDetailDto);
-
-        if (feeDetailDtos != null && feeDetailDtos.size() > 0) {//璇存槑宸茬粡瀵煎叆杩囦簡
-            return;
-        }
+//        FeeDetailDto feeDetailDto = new FeeDetailDto();
+//        feeDetailDto.setCommunityId(importRoomFee.getCommunityId());
+//        feeDetailDto.setFeeId(tmpFeeDto.getFeeId());
+//
+//
+//        feeDetailDto.setStartTime(DateUtil.getDateFromString(importRoomFee.getStartTime(), DateUtil.DATE_FORMATE_STRING_B));
+//        feeDetailDto.setEndTime(DateUtil.getDateFromString(importRoomFee.getEndTime(), DateUtil.DATE_FORMATE_STRING_B));
+//        feeDetailDto.setCreateTime(DateUtil.getDateFromString(importRoomFee.getCreateTime(), DateUtil.DATE_FORMATE_STRING_B));
+//
+//        List<FeeDetailDto> feeDetailDtos = feeDetailInnerServiceSMOImpl.queryFeeDetails(feeDetailDto);
+//
+//        if (feeDetailDtos != null && feeDetailDtos.size() > 0) {//璇存槑宸茬粡瀵煎叆杩囦簡
+//            return;
+//        }
 
         PayFeeDetailPo payFeeDetailPo = new PayFeeDetailPo();
         payFeeDetailPo.setCommunityId(importRoomFee.getCommunityId());
@@ -243,6 +265,7 @@
         payFeeDetailPo.setDetailId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_detailId));
         payFeeDetailPo.setRemark(importRoomFee.getRemark());
         payFeeDetailPo.setCreateTime(importRoomFee.getCreateTime());
+        payFeeDetailPo.setState("1400");
         int saved = feeDetailInnerServiceSMOImpl.saveFeeDetail(payFeeDetailPo);
 
         if (saved < 1) {
@@ -259,6 +282,10 @@
         payFeePo.setStatusCd(StatusConstant.STATUS_CD_VALID);
         payFeePo.setFeeId(tmpFeeDto.getFeeId());
         payFeePo.setEndTime(importRoomFee.getEndTime());
+        if (FeeDto.FEE_FLAG_ONCE.equals(tmpFeeDto.getFeeFlag())) {
+            payFeePo.setState(FeeDto.STATE_FINISH);
+        }
+
         feeInnerServiceSMOImpl.updateFee(payFeePo);
     }
 

--
Gitblit v1.8.0