From 2d079ac843ebcb335f2ef7d6952f9700a16fddde Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期三, 05 五月 2021 14:11:00 +0800
Subject: [PATCH] 游湖阿底阿妈
---
service-fee/src/main/java/com/java110/fee/bmo/impl/ImportRoomFeeImpl.java | 180 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 174 insertions(+), 6 deletions(-)
diff --git a/service-fee/src/main/java/com/java110/fee/bmo/impl/ImportRoomFeeImpl.java b/service-fee/src/main/java/com/java110/fee/bmo/impl/ImportRoomFeeImpl.java
index eeaef5e..d0be61c 100755
--- a/service-fee/src/main/java/com/java110/fee/bmo/impl/ImportRoomFeeImpl.java
+++ b/service-fee/src/main/java/com/java110/fee/bmo/impl/ImportRoomFeeImpl.java
@@ -13,12 +13,7 @@
import com.java110.fee.bmo.IImportRoomFee;
import com.java110.fee.listener.fee.UpdateFeeInfoListener;
import com.java110.intf.community.IRoomInnerServiceSMO;
-import com.java110.intf.fee.IFeeAttrInnerServiceSMO;
-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.fee.IImportFeeInnerServiceSMO;
+import com.java110.intf.fee.*;
import com.java110.intf.user.IOwnerCarInnerServiceSMO;
import com.java110.intf.user.IOwnerInnerServiceSMO;
import com.java110.po.fee.FeeAttrPo;
@@ -455,6 +450,179 @@
}
/**
+ * 鍚堝悓璐圭敤瀵煎叆
+ *
+ * @param reqJson
+ * @return
+ */
+ @Override
+ @Java110Transactional
+ public ResponseEntity<String> importContractFees(JSONObject reqJson) {
+
+ int successCount = 0;
+ int errorCount = 0;
+
+ //灏忓尯ID
+ String communityId = reqJson.getString("communityId");
+ String importFeeId = reqJson.getString("importFeeId");
+ String feeTypeCd = reqJson.getString("feeTypeCd");//璐圭敤澶х被
+ String storeId = reqJson.getString("storeId");
+ String userId = reqJson.getString("userId");
+ String feeName = reqJson.getString("feeName");
+
+ if (StringUtil.isEmpty(feeName)) {
+ feeName = IMPORT_FEE_NAME;
+ }
+ FeeConfigDto feeConfigDto = new FeeConfigDto();
+ feeConfigDto.setFeeTypeCd(feeTypeCd);
+ feeConfigDto.setFeeName(feeName);
+ feeConfigDto.setCommunityId(communityId);
+ List<FeeConfigDto> feeConfigDtos = feeConfigInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
+ // 鏍规嵁璐圭敤澶х被 鍒ゆ柇鏄惁鏈夊瓨鍦� 璐圭敤瀵煎叆鏀跺叆椤�
+ if (feeConfigDtos == null || feeConfigDtos.size() < 1) {
+ //鐢熸垚瀵煎叆璐�
+ feeConfigDto.setConfigId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_configId));
+ saveFeeConfig(feeConfigDto);
+ } else {
+ feeConfigDto.setConfigId(feeConfigDtos.get(0).getConfigId());
+ }
+
+
+ JSONArray importCarFees = reqJson.getJSONArray("importRoomFees");
+
+ List<ImportRoomFee> tmpImportContractFees = importCarFees.toJavaList(ImportRoomFee.class);
+
+ for (ImportRoomFee tmpImportCarFee : tmpImportContractFees) {
+ tmpImportCarFee.setCommunityId(communityId);
+ }
+
+ Assert.isNotNull(tmpImportContractFees, "鍙傛暟閿欒锛屾湭鍖呭惈澶勭悊璐圭敤");
+
+ List<PayFeePo> payFeePos = new ArrayList<>();
+ List<FeeAttrPo> feeAttrPos = new ArrayList<>();
+ List<ImportFeeDetailPo> importFeeDetailPos = new ArrayList<>();
+ PayFeePo payFeePo = null;
+ ImportFeeDetailPo importFeeDetailPo = null;
+ for (ImportRoomFee importCarFee : tmpImportContractFees) {
+ if (StringUtil.isEmpty(importCarFee.getContractId()) || importCarFee.getContractId().startsWith("-")
+ ) {
+ errorCount++;
+ continue;
+ }
+ successCount++;
+ payFeePo = new PayFeePo();
+ payFeePo.setFeeId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_feeId));
+ payFeePo.setEndTime(importCarFee.getStartTime());
+ payFeePo.setState(FeeDto.STATE_DOING);
+ payFeePo.setCommunityId(communityId);
+ payFeePo.setConfigId(feeConfigDto.getConfigId());
+ payFeePo.setPayerObjId(importCarFee.getContractId());
+ payFeePo.setPayerObjType(FeeDto.PAYER_OBJ_TYPE_CONTRACT);
+ payFeePo.setUserId(userId);
+ payFeePo.setIncomeObjId(storeId);
+ payFeePo.setFeeTypeCd(feeTypeCd);
+ payFeePo.setFeeFlag(FeeDto.FEE_FLAG_ONCE);
+ payFeePo.setAmount(importCarFee.getAmount());
+ payFeePo.setStartTime(importCarFee.getStartTime());
+ //payFeePo.setStartTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
+
+ payFeePos.add(payFeePo);
+
+ FeeAttrPo feeAttrPo = new FeeAttrPo();
+ feeAttrPo.setCommunityId(communityId);
+ feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId));
+ feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_IMPORT_FEE_NAME);
+ feeAttrPo.setValue(importCarFee.getFeeName());
+ feeAttrPo.setFeeId(payFeePo.getFeeId());
+ feeAttrPos.add(feeAttrPo);
+
+
+ feeAttrPo = new FeeAttrPo();
+ feeAttrPo.setCommunityId(communityId);
+ feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId));
+ feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_ONCE_FEE_DEADLINE_TIME);
+ feeAttrPo.setValue(importCarFee.getEndTime());
+ feeAttrPo.setFeeId(payFeePo.getFeeId());
+ feeAttrPos.add(feeAttrPo);
+
+
+ if (!StringUtil.isEmpty(importCarFee.getOwnerId())) {
+ feeAttrPo = new FeeAttrPo();
+ feeAttrPo.setCommunityId(communityId);
+ feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId));
+ feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_OWNER_ID);
+ feeAttrPo.setValue(importCarFee.getOwnerId());
+ feeAttrPo.setFeeId(payFeePo.getFeeId());
+ feeAttrPos.add(feeAttrPo);
+
+ feeAttrPo = new FeeAttrPo();
+ feeAttrPo.setCommunityId(communityId);
+ feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId));
+ feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_OWNER_NAME);
+ feeAttrPo.setValue(importCarFee.getOwnerName());
+ feeAttrPo.setFeeId(payFeePo.getFeeId());
+ feeAttrPos.add(feeAttrPo);
+
+ feeAttrPo = new FeeAttrPo();
+ feeAttrPo.setCommunityId(communityId);
+ feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId));
+ feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_OWNER_LINK);
+ feeAttrPo.setValue(importCarFee.getOwnerLink());
+ feeAttrPo.setFeeId(payFeePo.getFeeId());
+ feeAttrPos.add(feeAttrPo);
+ }
+
+ importFeeDetailPo = new ImportFeeDetailPo();
+ importFeeDetailPo.setAmount(importCarFee.getAmount());
+ importFeeDetailPo.setCommunityId(communityId);
+ importFeeDetailPo.setEndTime(importCarFee.getEndTime());
+ importFeeDetailPo.setFeeId(payFeePo.getFeeId());
+ importFeeDetailPo.setFeeName(importCarFee.getFeeName());
+ importFeeDetailPo.setFloorNum("-");
+ importFeeDetailPo.setUnitNum("-");
+ importFeeDetailPo.setRoomNum("-");
+ importFeeDetailPo.setRoomId("-");
+ importFeeDetailPo.setObjId(importCarFee.getContractId());
+ importFeeDetailPo.setObjType(FeeDto.PAYER_OBJ_TYPE_CONTRACT);
+ importFeeDetailPo.setObjName("鍚堝悓");
+ importFeeDetailPo.setStartTime(importCarFee.getStartTime());
+ importFeeDetailPo.setIfdId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_IfdId));
+ importFeeDetailPo.setState("1000");
+ importFeeDetailPo.setImportFeeId(importFeeId);
+ importFeeDetailPos.add(importFeeDetailPo);
+ }
+
+ feeInnerServiceSMOImpl.saveFee(payFeePos);
+
+ feeAttrInnerServiceSMOImpl.saveFeeAttrs(feeAttrPos);
+
+ ImportFeeDto importFeeDto = new ImportFeeDto();
+ importFeeDto.setCommunityId(communityId);
+ importFeeDto.setImportFeeId(importFeeId);
+
+ List<ImportFeeDto> importRoomFeess = importFeeInnerServiceSMOImpl.queryImportFees(importFeeDto);
+
+ if (importRoomFeess == null || importRoomFeess.size() < 1) {
+ //淇濆瓨鏃ュ織
+ ImportFeePo importFeePo = new ImportFeePo();
+ importFeePo.setCommunityId(communityId);
+ importFeePo.setFeeTypeCd(feeTypeCd);
+ importFeePo.setImportFeeId(importFeeId);
+ importFeeInnerServiceSMOImpl.saveImportFee(importFeePo);
+ }
+
+
+ importFeeDetailInnerServiceSMOImpl.saveImportFeeDetails(importFeeDetailPos);
+
+
+ JSONObject data = new JSONObject();
+ data.put("successCount", successCount);
+ data.put("errorCount", errorCount);
+
+ return ResultVo.createResponseEntity(data);
+ }
+
+ /**
* 淇濆瓨淇濆瓨瀵煎叆璐圭敤閰嶇疆
*
* @param feeConfigDto
--
Gitblit v1.8.0