From bdcb64f0293f27e2dfb3de12a60f6e8412cb962b Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期四, 26 五月 2022 01:45:22 +0800
Subject: [PATCH] 退费修改为 从证书地址中获取
---
service-fee/src/main/java/com/java110/fee/smo/impl/FeeDiscountInnerServiceSMOImpl.java | 48 +++++++++++++++++++++++++++++++++++++-----------
1 files changed, 37 insertions(+), 11 deletions(-)
diff --git a/service-fee/src/main/java/com/java110/fee/smo/impl/FeeDiscountInnerServiceSMOImpl.java b/service-fee/src/main/java/com/java110/fee/smo/impl/FeeDiscountInnerServiceSMOImpl.java
old mode 100644
new mode 100755
index 3f07b2a..ae4ca0f
--- a/service-fee/src/main/java/com/java110/fee/smo/impl/FeeDiscountInnerServiceSMOImpl.java
+++ b/service-fee/src/main/java/com/java110/fee/smo/impl/FeeDiscountInnerServiceSMOImpl.java
@@ -7,7 +7,7 @@
import com.java110.dto.fee.FeeDto;
import com.java110.dto.feeDiscount.ComputeDiscountDto;
import com.java110.dto.feeDiscount.FeeDiscountDto;
-import com.java110.dto.feeDiscountSpec.FeeDiscountSpecDto;
+import com.java110.dto.feeDiscount.FeeDiscountSpecDto;
import com.java110.dto.payFeeConfigDiscount.PayFeeConfigDiscountDto;
import com.java110.fee.dao.IFeeDiscountServiceDao;
import com.java110.fee.discount.IComputeDiscount;
@@ -163,6 +163,17 @@
List<PayFeeConfigDiscountDto> payFeeConfigDiscountDtos =
payFeeConfigDiscountInnerServiceSMOImpl.queryPayFeeConfigDiscounts(payFeeConfigDiscountDto);
if (payFeeConfigDiscountDtos == null || payFeeConfigDiscountDtos.size() < 1) {
+ computeApplyRoomDiscount(feeDetailDto, simpleDateFormat, c, computeDiscountDtos);
+ //鍙栧嚭寮�鍏虫槧灏勭殑鍊�
+ String value = MappingCache.getValue(DOMAIN_COMMON, DISCOUNT_MODE);
+ List<ComputeDiscountDto> computeDiscountDtoList = new ArrayList<>();
+ for (ComputeDiscountDto computeDiscountDto : computeDiscountDtos) {
+ computeDiscountDto.setValue(value);
+ if (!StringUtil.isEmpty(computeDiscountDto.getDiscountType()) && "3003".equals(computeDiscountDto.getDiscountType())) {
+ computeDiscountDto.setArdId(feeDetailDto.getArdId());
+ }
+ computeDiscountDtoList.add(computeDiscountDto);
+ }
return computeDiscountDtos;
}
c.setTime(feeDetailDto.getStartTime());
@@ -181,11 +192,28 @@
continue;
}
}
- if (!StringUtil.isEmpty(feeDetailDto.getPayerObjType()) && feeDetailDto.getPayerObjType().equals("3333")) {
+ computeApplyRoomDiscount(feeDetailDto, simpleDateFormat, c, computeDiscountDtos);
+ //鍙栧嚭寮�鍏虫槧灏勭殑鍊�
+ String value = MappingCache.getValue(DOMAIN_COMMON, DISCOUNT_MODE);
+ List<ComputeDiscountDto> computeDiscountDtoList = new ArrayList<>();
+ for (ComputeDiscountDto computeDiscountDto : computeDiscountDtos) {
+ computeDiscountDto.setValue(value);
+ if (!StringUtil.isEmpty(computeDiscountDto.getDiscountType()) && "3003".equals(computeDiscountDto.getDiscountType())) {
+ computeDiscountDto.setArdId(feeDetailDto.getArdId());
+ }
+ computeDiscountDtoList.add(computeDiscountDto);
+ }
+ return computeDiscountDtoList;
+ }
+
+ private void computeApplyRoomDiscount(@RequestBody FeeDetailDto feeDetailDto, SimpleDateFormat simpleDateFormat, Calendar c, List<ComputeDiscountDto> computeDiscountDtos) {
+ if (!StringUtil.isEmpty(feeDetailDto.getPayerObjType()) && FeeDto.PAYER_OBJ_TYPE_ROOM.equals(feeDetailDto.getPayerObjType())) {
//鏍规嵁鎴垮眿ID,鍘绘姌鎵g敵璇疯〃鏌ヨ鏄惁鏈夋姌鎵�
ApplyRoomDiscountDto applyRoomDiscountDto = new ApplyRoomDiscountDto();
//瀹℃牳宸查�氳繃
applyRoomDiscountDto.setState("4");
+ //鏄惁鍙敤鐘舵�佹爣璇�(0琛ㄧず鍦ㄧ敤锛�1琛ㄧず涓嶅彲鐢�)
+ applyRoomDiscountDto.setInUse("0");
//灏忓尯ID
applyRoomDiscountDto.setCommunityId(feeDetailDto.getCommunityId());
//鎴垮眿id
@@ -194,30 +222,28 @@
applyRoomDiscountDto.setStartTime(simpleDateFormat.format(feeDetailDto.getStartTime()));
//缁撴潫鏃堕棿
c.setTime(feeDetailDto.getStartTime());
+ c.add(Calendar.DAY_OF_MONTH, 2);//寮�濮嬫椂闂达紝娣诲姞1锛�2澶╃殑鍐椾綑锛屽彧瑕佹瘮5灏忓嵆鍙�
+ applyRoomDiscountDto.setStartTime(simpleDateFormat.format(c.getTime()));//閲嶆柊璁剧疆寮�濮嬫椂闂�
double month = Double.parseDouble(feeDetailDto.getCycles());
c.add(Calendar.MONTH, (int) month);
+ c.add(Calendar.DAY_OF_MONTH, -5);//杩欓噷鏍规嵁璁剧疆鏃堕棿鑽h獕5澶�
Date endTime = c.getTime();
applyRoomDiscountDto.setEndTime(simpleDateFormat.format(endTime));
+ applyRoomDiscountDto.setFeeId(feeDetailDto.getFeeId());
//鏌ヨ鎶樻墸鐢宠琛�
List<ApplyRoomDiscountDto> applyRoomDiscountDtos = applyRoomDiscountInnerServiceSMOImpl.queryApplyRoomDiscounts(applyRoomDiscountDto);
//鍒ゆ柇鏌ヨ鐨勬姌鎵g敵璇疯〃鏄惁鏈夋暟鎹�
- if (applyRoomDiscountDtos.size() > 0) {
+ if (applyRoomDiscountDtos != null && applyRoomDiscountDtos.size() > 0) {
//鑾峰彇浼樻儬id
String discountId = applyRoomDiscountDtos.get(0).getDiscountId();
+ String ardId = applyRoomDiscountDtos.get(0).getArdId();
+ feeDetailDto.setArdId(ardId);
PayFeeConfigDiscountDto payFeeConfigDiscount = new PayFeeConfigDiscountDto();
payFeeConfigDiscount.setCommunityId(applyRoomDiscountDtos.get(0).getCommunityId());
payFeeConfigDiscount.setDiscountId(discountId);
doCompute(payFeeConfigDiscount, Double.parseDouble(feeDetailDto.getCycles()), computeDiscountDtos, feeDetailDto.getFeeId());
}
}
- //鍙栧嚭寮�鍏虫槧灏勭殑鍊�
- String value = MappingCache.getValue(DOMAIN_COMMON, DISCOUNT_MODE);
- List<ComputeDiscountDto> computeDiscountDtoList = new ArrayList<>();
- for (ComputeDiscountDto computeDiscountDto : computeDiscountDtos) {
- computeDiscountDto.setValue(value);
- computeDiscountDtoList.add(computeDiscountDto);
- }
- return computeDiscountDtoList;
}
private void doCompute(PayFeeConfigDiscountDto tmpPayFeeConfigDiscountDto, double cycles, List<ComputeDiscountDto> computeDiscountDtos, String feeId) {
--
Gitblit v1.8.0