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/PayMonthFeeCmd.java | 36 +++++++++++++++++++++++-------------
1 files changed, 23 insertions(+), 13 deletions(-)
diff --git a/service-fee/src/main/java/com/java110/fee/cmd/fee/PayMonthFeeCmd.java b/service-fee/src/main/java/com/java110/fee/cmd/fee/PayMonthFeeCmd.java
index fd68f1b..fa968d9 100644
--- a/service-fee/src/main/java/com/java110/fee/cmd/fee/PayMonthFeeCmd.java
+++ b/service-fee/src/main/java/com/java110/fee/cmd/fee/PayMonthFeeCmd.java
@@ -159,11 +159,27 @@
List<PayFeeDetailMonthDto> payFeeDetailMonthDtos = (List<PayFeeDetailMonthDto>) reqJson.get("payFeeDetailMonthDtos");
+ Calendar createTimeCal = Calendar.getInstance();
+
+ Map<String, FeeDto> feeDtoMap = new HashMap<>();
JSONArray details = new JSONArray();
for (PayFeeDetailMonthDto payFeeDetailMonthDto : payFeeDetailMonthDtos) {
+ // todo 璐圭敤鍙煡涓�娆℃彁楂� 鏁堢巼
+ if (!feeDtoMap.containsKey(payFeeDetailMonthDto.getFeeId())) {
+ //todo 鏌ヨ璐圭敤鏄惁瀛樺湪
+ FeeDto feeDto = new FeeDto();
+ feeDto.setFeeId(payFeeDetailMonthDto.getFeeId());
+ feeDto.setCommunityId(payFeeDetailMonthDto.getCommunityId());
+ List<FeeDto> feeDtos = feeInnerServiceSMOImpl.queryFees(feeDto);
+ if (feeDtos == null || feeDtos.size() != 1) {
+ throw new CmdException("璐圭敤涓嶅瓨鍦�");
+ }
+ feeDtoMap.put(payFeeDetailMonthDto.getFeeId(), feeDtos.get(0));
+ }
+ createTimeCal.add(Calendar.SECOND, 1);
try {
- doMonthFee(payFeeDetailMonthDto, context, userDtos.get(0), reqJson);
+ doMonthFee(payFeeDetailMonthDto, context, userDtos.get(0), reqJson, createTimeCal.getTime(), feeDtoMap);
} catch (Exception e) {
logger.error("澶勭悊寮傚父", e);
throw new CmdException(e.getMessage());
@@ -185,7 +201,7 @@
* @param userDto
* @param reqJson
*/
- private void doMonthFee(PayFeeDetailMonthDto payFeeDetailMonthDto, ICmdDataFlowContext context, UserDto userDto, JSONObject reqJson) {
+ private void doMonthFee(PayFeeDetailMonthDto payFeeDetailMonthDto, ICmdDataFlowContext context, UserDto userDto, JSONObject reqJson, Date createTime, Map<String, FeeDto> feeDtoMap) {
//todo 璁$畻缁撴潫鏃堕棿
Date startTime = DateUtil.getDateFromStringB(payFeeDetailMonthDto.getCurMonthTime());
Calendar calendar = Calendar.getInstance();
@@ -193,14 +209,6 @@
calendar.add(Calendar.MONTH, 1);
String endTime = DateUtil.getFormatTimeStringB(calendar.getTime());
- //todo 鏌ヨ璐圭敤鏄惁瀛樺湪
- FeeDto feeDto = new FeeDto();
- feeDto.setFeeId(payFeeDetailMonthDto.getFeeId());
- feeDto.setCommunityId(payFeeDetailMonthDto.getCommunityId());
- List<FeeDto> feeDtos = feeInnerServiceSMOImpl.queryFees(feeDto);
- if (feeDtos == null || feeDtos.size() != 1) {
- throw new CmdException("璐圭敤涓嶅瓨鍦�");
- }
//鑾峰彇璁㈠崟ID
String oId = Java110TransactionalFactory.getOId();
@@ -218,12 +226,14 @@
}
payFeeDetailPo.setPayOrderId(oId);
payFeeDetailPo.setEndTime(endTime);
+ // todo 鎸夋湀浜よ垂鏃� 涓昏鎸夋椂闂撮『搴忔帓搴忔椂 鑳藉鏁撮綈
+ payFeeDetailPo.setCreateTime(DateUtil.getFormatTimeStringA(createTime));
int flag = payFeeDetailNewV1InnerServiceSMOImpl.savePayFeeDetailNew(payFeeDetailPo);
if (flag < 1) {
throw new CmdException("缂磋垂澶辫触");
}
- payFeePo = modifyFee(payFeeDetailMonthDto, reqJson, feeDtos.get(0), endTime);
+ payFeePo = modifyFee(payFeeDetailMonthDto, reqJson, feeDtoMap.get(payFeeDetailMonthDto.getFeeId()), endTime);
flag = payFeeV1InnerServiceSMOImpl.updatePayFee(payFeePo);
if (flag < 1) {
@@ -238,10 +248,10 @@
DistributedLock.releaseDistributedLock(key, requestId);
}
//杞﹁締寤舵湡
- updateOwnerCarEndTime(payFeePo, reqJson, feeDtos.get(0));
+ updateOwnerCarEndTime(payFeePo, reqJson, feeDtoMap.get(payFeeDetailMonthDto.getFeeId()));
//澶勭悊鎶ヤ慨鍗�
- doDealRepairOrder(payFeeDetailMonthDto, feeDtos.get(0));
+ doDealRepairOrder(payFeeDetailMonthDto, feeDtoMap.get(payFeeDetailMonthDto.getFeeId()));
}
--
Gitblit v1.8.0