From 4f9c122f237fbee16d5ef9c602b6db95d28ed7b0 Mon Sep 17 00:00:00 2001
From: mrzcc <121184950@qq.com>
Date: 星期一, 10 二月 2020 14:35:03 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
FeeService/src/main/java/com/java110/fee/listener/fee/UpdateFeeInfoListener.java | 18 +++++++++++++-----
1 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/FeeService/src/main/java/com/java110/fee/listener/fee/UpdateFeeInfoListener.java b/FeeService/src/main/java/com/java110/fee/listener/fee/UpdateFeeInfoListener.java
index 4979c37..961e692 100644
--- a/FeeService/src/main/java/com/java110/fee/listener/fee/UpdateFeeInfoListener.java
+++ b/FeeService/src/main/java/com/java110/fee/listener/fee/UpdateFeeInfoListener.java
@@ -15,10 +15,13 @@
import com.java110.core.context.DataFlowContext;
import com.java110.entity.center.Business;
import com.java110.fee.dao.IFeeServiceDao;
+import com.java110.utils.util.DateUtil;
+import com.java110.utils.util.StringUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.NumberUtils;
import java.util.*;
@@ -126,8 +129,8 @@
feeDetailInfo.put("operate", "ADD");
List<Map> feeDetails = feeDetailServiceDaoImpl.getBusinessFeeDetailInfo(feeDetailInfo);
Assert.listOnlyOne(feeDetails, "business琛ㄤ腑瀛樺湪澶氭潯缂磋垂璁板綍鎴栨病鏈�");
-
- int cycles = Integer.parseInt(feeDetails.get(0).get("cycles").toString());
+ String cyclesStr = feeDetails.get(0).get("cycles").toString();
+ double cycles = Double.parseDouble(cyclesStr);
Map feeMap = null;
if (businessFeeInfos != null && businessFeeInfos.size() > 0) {
@@ -147,10 +150,15 @@
Assert.listOnlyOne(feeInfo, "鏌ヨ鍒板鏉℃暟鎹垨鏈煡璇㈠埌鏁版嵁" + feeMap);
//鏍规嵁褰撳墠鐨勭粨鏉熸椂闂� 淇敼
Date endTime = (Date) feeInfo.get(0).get("end_time");
- Calendar endCalender = Calendar.getInstance();
- endCalender.setTime(endTime);
- endCalender.add(Calendar.MONTH, cycles);
if(cycles > 0) {
+ Calendar endCalender = Calendar.getInstance();
+ endCalender.setTime(endTime);
+ if(StringUtil.isNumber(cyclesStr)) {
+ endCalender.add(Calendar.MONTH, new Double(cycles).intValue());
+ }else{
+ int hours = new Double(cycles * DateUtil.getCurrentMonthDay() * 24).intValue();
+ endCalender.add(Calendar.HOUR, hours);
+ }
businessFeeInfo.put("end_time", endCalender.getTime());
}
flushBusinessFeeInfo(businessFeeInfo, StatusConstant.STATUS_CD_VALID);
--
Gitblit v1.8.0