From 556227f639fc5d5bc7b35c3da437634d8215d263 Mon Sep 17 00:00:00 2001
From: nidapeng <jp@doumee.com>
Date: 星期四, 11 四月 2024 09:31:02 +0800
Subject: [PATCH] 提交一把

---
 server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java |   27 ++++++++++++++++++++++-----
 1 files changed, 22 insertions(+), 5 deletions(-)

diff --git a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
index 75cef66..87fdc7f 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
@@ -320,7 +320,7 @@
     }
 
     /**
-     * 澶勭悊鍔犲噺淇濇槑缁嗘暟鎹�
+     * 澶勭悊鎹㈠巶鏄庣粏鏁版嵁
      * @param update
      */
     private void dealDetailsDUdata(ApplyChange update,InsuranceApply insuranceApply) {
@@ -351,7 +351,6 @@
         //瀹為檯鎵瑰崟鐢熸晥鏃ユ湡
         Date applyStartTime = DateUtil.getMontageDate(update.getApplyStartTime(),1);
         for(ApplyChagneDetail detail : detailList){
-            //鏌ヨ鍑忎繚浜哄憳鏄惁瀛樺湪 鍐茬獊鐨� 淇濆崟鏄庣粏鏁版嵁
             if(applyDetailJoinMapper.selectCount(new QueryWrapper<ApplyDetail>()
                     .lambda()
                     .eq(ApplyDetail::getApplyId,update.getApplyId())
@@ -1010,7 +1009,8 @@
                 throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "璇ヤ紒涓氬垎閰嶄繚闄╂柟妗堟棤娉曡繘琛屽噺淇�");
             }
             //鍑忎繚鏄庣粏鏁版嵁 璁$畻閲戦  鏍规嵁鎵瑰崟鏃堕棿 鍓嶄竴澶� 璁$畻
-            applyChangeCyclePriceDTO.setValidTime(DateUtil.getMontageDate(applyChange.getValidTime(),2));
+            applyChangeCyclePriceDTO.setValidTime(DateUtil.getMontageDate(applyChange.getValidTime(),3));
+
             CountCyclePriceVO countCyclePriceVO =  this.getChangeCountCyclePriceVO(applyChangeCyclePriceDTO);
             BigDecimal detailFee = countCyclePriceVO.getCyclePrice();
             this.delChangeDetail(applyChange,delDetailList,insuranceApply,solutions,loginUserInfo,detailFee,applyChangeCyclePriceDTO.getValidTime());
@@ -1097,6 +1097,7 @@
                 throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "鍑忎繚浜哄憳銆�" + applyChagneDetail.getMemberName() + "銆戜繚鍗曚繚闅滄棩鏈熻嚦锛氥��" + applyDetail.getEndTime() + "銆戞棤娉曢�氳繃鏈鐢宠");
             }
 
+
             applyChagneDetail.setPrice(applyDetail.getPrice());
             applyChagneDetail.setCreateDate(new Date());
             applyChagneDetail.setCreator(loginUserInfo.getId());
@@ -1114,7 +1115,10 @@
             member.setEndTime(applyChagneDetail.getEndTime());
             memberMapper.updateById(member);
 
-            applyChagneDetail.setFee( detailFee.multiply(new BigDecimal(-1)));
+            //鏌ヨ鍑忎繚鏃ユ湡
+            Integer delDays = DateUtil.daysBetweenDates(applyDetail.getEndTime(),endTime);
+
+            applyChagneDetail.setFee( new BigDecimal(delDays).multiply(applyDetail.getPrice()).multiply(new BigDecimal(-1)));
             applyChagneDetailJoinMapper.insert(applyChagneDetail);
         }
     }
@@ -1483,7 +1487,7 @@
                         Constants.ApplyChangeStatus.RETURN_APPLY_UPLOAD.getKey(),
                         Constants.ApplyChangeStatus.RETURN_APPLY_SIGNATURE.getKey())
                 .eq(!Objects.isNull(model.getUnionApplyId()),InsuranceApply::getUnionApplyId,model.getUnionApplyId())
-//                .eq(!Objects.isNull(model.getSolutionsId()),ApplyChange::getSolutionsId,model.getSolutionsId())
+                .eq(!Objects.isNull(model.getCompanyId()),InsuranceApply::getCompanyId,model.getCompanyId())
                 .eq(!Objects.isNull(model.getSolutionType()),Solutions::getType,model.getSolutionType())
                 .eq(!Objects.isNull(model.getApplyId()),ApplyChange::getApplyId,model.getApplyId())
                 .eq(!Objects.isNull(model.getBaseSolutionsId()),Solutions::getBaseId,model.getBaseSolutionsId())
@@ -2206,6 +2210,19 @@
             update.setStatus(Constants.ApplyChangeStatus.CHECHED_PASSED.getKey());
         }
         applyChangeJoinMapper.updateById(update);
+
+
+        Constants.ApplyLogType applyLogType = Constants.ApplyLogType.CA_HBD_AUDIT;
+        String info = applyChange.getCheckInfo();
+        if(StringUtils.isNotBlank(applyChange.getCheckInfo())){
+            info = info.replace("${param}", applyChange.getCheckInfo());
+        }else{
+            info = info.replace("${param}", "");
+        }
+        ApplyLog log = new ApplyLog(applyChange,applyLogType.getName(),info,applyChange.getId(),applyLogType.getKey(), null, null);
+        applyLogMapper.insert(log);
+
+
         Constants.NoticeObjectType noticeObjectType = Constants.NoticeObjectType.APPLY_CHANGE;
         if(Constants.equalsInteger(applyChange.getType(),Constants.ONE)){
             noticeObjectType = Constants.NoticeObjectType.CHANGE_FACTORY;

--
Gitblit v1.9.3