From 20001a775126c1be95a2b84cebb8813a54608712 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 15 八月 2023 14:42:27 +0800
Subject: [PATCH] Merge branch 'master' of http://git.homecommunity.cn/supervip/MicroCommunity
---
java110-core/src/main/java/com/java110/core/smo/impl/ComputeFeeSMOImpl.java | 27 ++++++++++++++++++++++-----
1 files changed, 22 insertions(+), 5 deletions(-)
diff --git a/java110-core/src/main/java/com/java110/core/smo/impl/ComputeFeeSMOImpl.java b/java110-core/src/main/java/com/java110/core/smo/impl/ComputeFeeSMOImpl.java
index 5d5a91e..5e72802 100755
--- a/java110-core/src/main/java/com/java110/core/smo/impl/ComputeFeeSMOImpl.java
+++ b/java110-core/src/main/java/com/java110/core/smo/impl/ComputeFeeSMOImpl.java
@@ -951,7 +951,7 @@
return getFeePrice(feeDto, null);
}
- /*
+ /*
*
* @param feeDto
* @param roomDto
@@ -1701,7 +1701,7 @@
//todo 鑰冭檻璐圭敤椤� 璐圭敤鎻愬墠鐢熸垚
Calendar preEndTimeCal = Calendar.getInstance();
preEndTimeCal.setTime(feeDto.getEndTime());
- if(StringUtil.isNumber(feeDto.getPrepaymentPeriod())) {
+ if (StringUtil.isNumber(feeDto.getPrepaymentPeriod())) {
preEndTimeCal.add(Calendar.DAY_OF_MONTH, Integer.parseInt(feeDto.getPrepaymentPeriod()) * -1);
}
Date preEndTime = preEndTimeCal.getTime();
@@ -1745,12 +1745,21 @@
}
// 杞暟 * 鍛ㄦ湡 * 30 + 寮�濮嬫椂闂� = 鐩爣 鍒版湡鏃堕棿
targetEndDate = getTargetEndTime(round * paymentCycle, startDate);//鐩爣缁撴潫鏃堕棿
- //璐圭敤椤圭殑缁撴潫鏃堕棿<缂磋垂鐨勭粨鏉熸椂闂� 璐圭敤蹇粨鏉熶簡 鍙栬垂鐢ㄩ」鐨勭粨鏉熸椂闂�
+
+ //todo 濡傛灉 鍒颁簡 棰勪粯鏈� 浜х敓涓嬩釜鍛ㄦ湡鐨勮垂鐢�
+ if (DateUtil.getFormatTimeStringB(targetEndDate).equals(DateUtil.getFormatTimeStringB(endDate))
+ && DateUtil.getCurrentDate().getTime() > preEndTime.getTime()
+ ) {
+ targetEndDate = getTargetEndTime((round + 1) * paymentCycle, startDate);//鐩爣缁撴潫鏃堕棿
+ }
+
+
+ //todo 璐圭敤椤圭殑缁撴潫鏃堕棿<缂磋垂鐨勭粨鏉熸椂闂� 璐圭敤蹇粨鏉熶簡 鍙栬垂鐢ㄩ」鐨勭粨鏉熸椂闂�
if (maxEndTime.getTime() < targetEndDate.getTime()) {
targetEndDate = maxEndTime;
}
//璇存槑娆犺垂
- if (preEndTime.getTime() < targetEndDate.getTime()) {
+ if (endDate.getTime() < targetEndDate.getTime()) {
// 鐩爣鍒版湡鏃堕棿 - 鍒版湡鏃堕棿 = 娆犺垂鏈堜唤
oweMonth = dayCompare(endDate, targetEndDate);
}
@@ -1780,12 +1789,20 @@
}
// 杞暟 * 鍛ㄦ湡 * 30 + 寮�濮嬫椂闂� = 鐩爣 鍒版湡鏃堕棿
targetEndDate = getTargetEndTime(round * paymentCycle, endDate);//鐩爣缁撴潫鏃堕棿
+
+ //todo 濡傛灉 鍒颁簡 棰勪粯鏈� 浜х敓涓嬩釜鍛ㄦ湡鐨勮垂鐢�
+ if (DateUtil.getFormatTimeStringB(targetEndDate).equals(DateUtil.getFormatTimeStringB(endDate))
+ && DateUtil.getCurrentDate().getTime() > preEndTime.getTime()
+ ) {
+ targetEndDate = getTargetEndTime((round + 1) * paymentCycle, startDate);//鐩爣缁撴潫鏃堕棿
+ }
+
//璐圭敤椤圭殑缁撴潫鏃堕棿<缂磋垂鐨勭粨鏉熸椂闂� 璐圭敤蹇粨鏉熶簡 鍙栬垂鐢ㄩ」鐨勭粨鏉熸椂闂�
if (maxEndTime.getTime() < targetEndDate.getTime()) {
targetEndDate = maxEndTime;
}
//璇存槑娆犺垂
- if (preEndTime.getTime() < targetEndDate.getTime()) {
+ if (endDate.getTime() < targetEndDate.getTime()) {
// 鐩爣鍒版湡鏃堕棿 - 鍒版湡鏃堕棿 = 娆犺垂鏈堜唤
oweMonth = dayCompare(endDate, targetEndDate);
}
--
Gitblit v1.8.0