From a40c2eb885bcdb697c2e16dae4f43cb6cd718973 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期一, 22 一月 2024 11:28:03 +0800
Subject: [PATCH] 优化小区数据
---
service-job/src/main/java/com/java110/job/adapt/fee/RoomCreatePayFeeAdapt.java | 43 +++++++++++++++++++++++++++++++++++--------
1 files changed, 35 insertions(+), 8 deletions(-)
diff --git a/service-job/src/main/java/com/java110/job/adapt/fee/RoomCreatePayFeeAdapt.java b/service-job/src/main/java/com/java110/job/adapt/fee/RoomCreatePayFeeAdapt.java
index 9420d64..9413d99 100644
--- a/service-job/src/main/java/com/java110/job/adapt/fee/RoomCreatePayFeeAdapt.java
+++ b/service-job/src/main/java/com/java110/job/adapt/fee/RoomCreatePayFeeAdapt.java
@@ -18,10 +18,7 @@
import com.java110.dto.user.UserDto;
import com.java110.intf.community.IRoomInnerServiceSMO;
import com.java110.intf.community.IRoomV1InnerServiceSMO;
-import com.java110.intf.fee.IFeeAttrInnerServiceSMO;
-import com.java110.intf.fee.IFeeInnerServiceSMO;
-import com.java110.intf.fee.IOweFeeCallableV1InnerServiceSMO;
-import com.java110.intf.fee.IPayFeeMonthInnerServiceSMO;
+import com.java110.intf.fee.*;
import com.java110.intf.report.IReportOweFeeInnerServiceSMO;
import com.java110.intf.user.*;
import com.java110.job.adapt.DatabusAdaptImpl;
@@ -82,6 +79,12 @@
@Autowired
private IPayFeeMonthInnerServiceSMO payFeeMonthInnerServiceSMOImpl;
+
+ @Autowired
+ private IRuleGeneratorPayFeeBillV1InnerServiceSMO ruleGeneratorPayFeeBillV1InnerServiceSMOImpl;
+ @Autowired
+ private IFeeConfigInnerServiceSMO feeConfigInnerServiceSMOImpl;
+
@Override
public void execute(Business business, List<Business> businesses) throws ParseException {
JSONObject data = business.getData();
@@ -131,15 +134,23 @@
}
}
- // todo
+ // todo 灏佽 payFeePo 鍜� attrs
List<PayFeePo> feePos = new ArrayList<>();
List<FeeAttrPo> feeAttrsPos = new ArrayList<>();
+
+ FeeConfigDto feeConfigDto = new FeeConfigDto();
+ feeConfigDto.setCommunityId(data.getString("communityId"));
+ feeConfigDto.setConfigId(data.getString("configId"));
+ List<FeeConfigDto> feeConfigDtos = feeConfigInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
+ Assert.listOnlyOne(feeConfigDtos, "褰撳墠璐圭敤椤笽D涓嶅瓨鍦ㄦ垨瀛樺湪澶氭潯" + data.getString("configId"));
+
+
int saveFlag = 0;
for (int roomIndex = 0; roomIndex < roomDtos.size(); roomIndex++) {
//todo 鍔犲叆 鎴垮眿璐圭敤
- feePos.add(addRoomFee(roomDtos.get(roomIndex), data));
+ feePos.add(addRoomFee(roomDtos.get(roomIndex), data, feeConfigDtos.get(0)));
if (!StringUtil.isEmpty(roomDtos.get(roomIndex).getOwnerId())) {
if (!FeeDto.FEE_FLAG_CYCLE.equals(data.getString("feeFlag"))) {
feeAttrsPos.add(addFeeAttr(data, FeeAttrDto.SPEC_CD_ONCE_FEE_DEADLINE_TIME, data.containsKey("endTime") ? data.getString("endTime") : data.getString("configEndTime")));
@@ -173,7 +184,8 @@
}
- private PayFeePo addRoomFee(RoomDto roomDto, JSONObject paramInJson) {
+ private PayFeePo addRoomFee(RoomDto roomDto, JSONObject paramInJson, FeeConfigDto feeConfigDto) {
+
String time = DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A);
if (paramInJson.containsKey("feeEndDate")) {
time = paramInJson.getString("feeEndDate");
@@ -200,7 +212,13 @@
businessUnit.put("batchId", paramInJson.getString("batchId"));
businessUnit.put("userId", paramInJson.getString("userId"));
paramInJson.put("feeId", businessUnit.getString("feeId"));
- return BeanConvertUtil.covertBean(paramInJson, PayFeePo.class)
+ if (!FeeDto.FEE_FLAG_CYCLE.equals(feeConfigDto.getFeeFlag())
+ && !StringUtil.isEmpty(paramInJson.getString("endTime"))) {
+ paramInJson.put("maxTime", paramInJson.getString("endTime"));
+ } else {
+ paramInJson.put("maxTime", feeConfigDto.getEndTime());
+ }
+ return BeanConvertUtil.covertBean(businessUnit, PayFeePo.class);
}
private FeeAttrPo addFeeAttr(JSONObject paramInJson, String specCd, String value) {
@@ -218,6 +236,15 @@
if (feePos == null || feePos.isEmpty()) {
return 1;
}
+
+ //todo 璐﹀崟妯″紡
+ String billModal = ruleGeneratorPayFeeBillV1InnerServiceSMOImpl.needGeneratorBillData(feePos);
+
+ if ("Y".equals(billModal)) {
+ return 1;
+ }
+
+
int flag = feeInnerServiceSMOImpl.saveFee(feePos);
if (flag < 1) {
return flag;
--
Gitblit v1.8.0