From e1c072109e62f4adcb53af0d2c69b896b9159059 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期四, 29 五月 2025 18:21:02 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/2.0.1' into 2.0.1

---
 server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java |  126 ++++++++++++++++++++++++++++++++++-------
 1 files changed, 104 insertions(+), 22 deletions(-)

diff --git a/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java
index 4ae7353..aa101c3 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java
@@ -872,10 +872,17 @@
             );
             settleClaims.setSupplementSettleClaimsLog(settleClaimsLog);
         }
-
-
-
+        dealNoticeOldDataBiz(settleClaims);//澶勭悊寰呭姙鑴忔暟鎹�
         return settleClaims;
+    }
+
+    private void dealNoticeOldDataBiz(SettleClaims settleClaims) {
+        if(Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.CLOSE_CASE.getKey())
+                ||Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.RETURN.getKey())
+                ||Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.WAIT_DISCUSS_REJECT.getKey())
+                ||Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.REJECT_DEAL.getKey())){
+            deletedNoticeBiz(null,settleClaims);
+        }
     }
 
 
@@ -1416,20 +1423,22 @@
                 this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.PLATFORM_REGISTER,null,Constants.SettleClaimsStatus.CONFIRM_INFORMATION);
             }
         }
+        deletedNoticeBiz(null,settleClaims);//鍒犻櫎閫氱煡
         if( Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.RETURN_ACCEPTANCE.getKey()) ||
                 Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey())){
-            //-濡傛灉鏄緟绔嬫鎴栬�呭凡绔嬫寰呭鏍革紝鍙戝緟鍔為�氱煡-------------
-            Constants.NoticeObjectType noticeObjectType = Constants.NoticeObjectType.SETTLE_CLAIMS;
-            noticesMapper.delete(new QueryWrapper<Notices>().lambda().eq(Notices::getObjType,noticeObjectType.getKey()).eq(Notices::getObjId,settleClaims.getId()));
-            Notices notices = new Notices(noticeObjectType,Constants.ZERO,settleClaims.getId(),getNoticeConttent(settleClaims),
-                    settleClaims.getCompanyId(),
-                    Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.RETURN_ACCEPTANCE.getKey())?Constants.NoticeType.ZERO:Constants.NoticeType.TWO);
-            noticesMapper.insert(notices);
+            //-濡傛灉鏄緟绔嬫鎴栬�呭凡绔嬫寰呭鏍革紝缁欏钩鍙扮鍙戝緟鍔為�氱煡-------------
+            sendNoticeBiz(Constants.ZERO,settleClaims,Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.RETURN_ACCEPTANCE.getKey())?Constants.NoticeType.ZERO:Constants.NoticeType.TWO);
         }
         return settleClaims.getId();
     }
 
     private String getNoticeConttent(SettleClaims settleClaims) {
+        if(StringUtils.isBlank(settleClaims.getMemberName()) && settleClaims.getMemberId()!=null){
+            Member member = memberMapper.selectById(settleClaims.getMemberId());
+            if(member!=null){
+                settleClaims.setMemberName(member.getName());
+            }
+        }
         return  "鎶ユ鍙凤細"+StringUtils.defaultString(settleClaims.getCode(),"")+"  鍑洪櫓浜猴細"+StringUtils.defaultString(settleClaims.getMemberName(),"");
     }
 
@@ -1832,6 +1841,10 @@
                 .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime())
                         .set(SettleClaims::getWaitSupplementInfo,dto.getDescribe())
                 .set(SettleClaims::getWaitSupplement,Constants.ONE));
+
+        deletedNoticeBiz(null,settleClaims);//鍒犻櫎閫氱煡
+        //濡傛灉鍙戣捣浠e姙,閫氱煡浼佷笟
+        sendNoticeBiz(Constants.ONE,settleClaims,Constants.NoticeType.THREE);
     }
 
     @Override
@@ -1898,6 +1911,10 @@
         }
         //瀛樺偍鏃ュ織
         this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.SUPPLEMENT,null,null);
+        //鍒犻櫎浼佷笟鐨勪唬鍔為�氱煡------
+        deletedNoticeBiz(null,settleClaims );
+        sendNoticeBiz(Constants.ZERO,settleClaims,Constants.NoticeType.TWO);
+
     }
 
 
@@ -1931,6 +1948,9 @@
         this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.RETURN_SETTLE,null,Constants.SettleClaimsStatus.RETURN);
         settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
                 .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime()).set(SettleClaims::getStatus,Constants.SettleClaimsStatus.RETURN.getKey()));
+        deletedNoticeBiz(null,settleClaims);//鍒犻櫎閫氱煡
+        //缁欎紒涓氬彂閫氱煡锛屽凡缁撴-------------
+        sendNoticeBiz(Constants.ZERO,settleClaims ,Constants.NoticeType.FOURTEEN);
     }
 
 
@@ -1999,6 +2019,15 @@
                 .set(SettleClaims::getEditDate, DateUtil.getCurrDateTime())
                 .set(SettleClaims::getEditor,loginUserInfo.getId())
                 .set(SettleClaims::getStatus,settleClaimsStatus.getKey()));
+
+        deletedNoticeBiz(null,settleClaims);//鍒犻櫎閫氱煡
+        if( Constants.equalsInteger(settleClaimsStatus.getKey(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey()) ){
+            //濡傛灉鏄鏍搁�氳繃宸茬珛妗堝緟瀹℃牳锛岀粰骞冲彴鍙戝緟鍙楃悊寰呭姙閫氱煡-------------
+            sendNoticeBiz(Constants.ZERO,settleClaims ,Constants.NoticeType.TWO);
+        }else{
+            //濡傛灉鏄鏍镐笉閫氳繃锛岄��鍥炵珛妗� 锛岀粰浼佷笟鍙戦�氱煡-------------
+            sendNoticeBiz(Constants.ONE,settleClaims ,Constants.NoticeType.ONE);
+        }
     }
 
 
@@ -2175,19 +2204,48 @@
                     Constants.SettleClaimsLogType.PLATFORM_WAIT_DISCUSS,
                     dto.getDescribe() + " 闂绫诲瀷锛�"+dto.getSyProblemOpts(),Constants.SettleClaimsStatus.WAIT_DISCUSS_AUDIT);
         }
-
-        if( Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.ACCEPTANCE.getKey()) ||
-                Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.WAIT_DISCUSS_AUDIT.getKey())){
-            //-濡傛灉鏄緟绔嬫鎴栬�呭凡绔嬫寰呭鏍革紝鍙戝緟鍔為�氱煡-------------
-            Constants.NoticeObjectType noticeObjectType = Constants.NoticeObjectType.SETTLE_CLAIMS;
-            noticesMapper.delete(new QueryWrapper<Notices>().lambda().eq(Notices::getObjType,noticeObjectType.getKey()).eq(Notices::getObjId,settleClaims.getId()));
-            Notices notices = new Notices(noticeObjectType,Constants.ZERO,settleClaims.getId(),getNoticeConttent(settleClaims),
-                    settleClaims.getCompanyId(),
-                    Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.RETURN_ACCEPTANCE.getKey())?Constants.NoticeType.ZERO:Constants.NoticeType.TWO);
-            noticesMapper.insert(notices);
+        deletedNoticeBiz(null,settleClaims);//鍒犻櫎閫氱煡
+        if(Constants.equalsInteger(dto.getStatus(),Constants.ZERO) || Constants.equalsInteger(dto.getStatus(),Constants.THREE)){
+            //-濡傛灉鏄鎵归�氳繃锛屾垚涓哄凡鍙楃悊锛岀粰骞冲彴绔彂浠g悊绠楀緟鍔為�氱煡-------------
+            sendNoticeBiz(Constants.ZERO,settleClaims , Constants.NoticeType.EIGHT );
+            sendNoticeBiz(Constants.ONE,settleClaims,Constants.NoticeType.FIFTEEN);
+        }else  if(Constants.equalsInteger(dto.getStatus(),Constants.TWO)){
+            //濡傛灉鍙戣捣鍟嗚瀹℃壒锛岄�氱煡骞冲彴
+            sendNoticeBiz(Constants.ZERO, settleClaims , Constants.NoticeType.FIVE );
+            sendNoticeBiz(Constants.ONE,settleClaims,Constants.NoticeType.SIXTEEN);
+        }else{
+            //濡傛灉鏄彈鐞嗘嫆缁�,閫氱煡浼佷笟
+            sendNoticeBiz(Constants.ONE,  settleClaims,Constants.NoticeType.SEVEN);
         }
     }
 
+    private void sendNoticeBiz(int plat, SettleClaims settleClaims, Constants.NoticeType noticeType) {
+        Constants.NoticeObjectType noticeObjectType = Constants.NoticeObjectType.SETTLE_CLAIMS;
+        Notices notices = new Notices(noticeObjectType
+                ,plat
+                ,settleClaims.getId()
+                ,getNoticeConttent(settleClaims)
+                ,settleClaims.getCompanyId()
+                ,noticeType);
+        noticesMapper.insert(notices);
+    }
+    private void deletedNoticeBiz(Integer  plat, SettleClaims settleClaim ) {
+        Constants.NoticeObjectType noticeObjectType = Constants.NoticeObjectType.SETTLE_CLAIMS;
+        noticesMapper.delete(new QueryWrapper<Notices>().lambda()
+                .eq(plat!=null,Notices::getPalt,plat)
+                .eq(Notices::getObjType,noticeObjectType.getKey())
+                .eq(Notices::getObjId,settleClaim.getId())
+                .notIn(Notices::getType,Constants.NoticeType.ONE.getStatus(),
+                        Constants.NoticeType.FOUR.getStatus(),
+                        Constants.NoticeType.SEVEN.getStatus(),
+                        Constants.NoticeType.FOURTEEN.getStatus(),
+                        Constants.NoticeType.FIFTEEN.getStatus(),
+                        Constants.NoticeType.SIXTEEN.getStatus(),
+                        Constants.NoticeType.SEVENTEEN.getStatus(),
+                        Constants.NoticeType.THIRTEEN.getStatus(),
+                        Constants.NoticeType.EIGHTEEN.getStatus()))//1, 3, 4, 7,13, 14, 15, 16, 17, 18
+        ;
+    }
 
     @Override
     public List<CompensationVO> getCompensation(CompensationFeeDTO compensationFeeDTO){
@@ -2265,12 +2323,16 @@
         update.setId(settleClaims.getId());
         update.setStatus(Constants.SettleClaimsStatus.WAIT_AUDIT_COMPENSATION.getKey());
         settleClaimsMapper.updateById(update);
-
         //瀛樺偍鏃ュ織
         this.saveSettleClaimsLog(settleClaims,
                 Constants.SettleClaimsLogType.PLATFORM_LP_DEAL,
                 Constants.SettleClaimsLogType.PLATFORM_LP_DEAL.getInfo(),Constants.SettleClaimsStatus.WAIT_AUDIT_COMPENSATION);
-    }
+        deletedNoticeBiz(null,settleClaims);//鍒犻櫎閫氱煡
+        //缁欏钩鍙板彂寰呮牳璧斿緟鍔為�氱煡-------------
+        sendNoticeBiz(Constants.ZERO,settleClaims ,Constants.NoticeType.NINE);
+        //缁欎紒涓氬彂閫氬凡鐞嗙畻-------------
+        sendNoticeBiz(Constants.ONE,settleClaims ,Constants.NoticeType.SEVENTEEN);
+}
 
 
     /**
@@ -2310,6 +2372,14 @@
                 .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate, DateUtil.getCurrDateTime())
                         .set(SettleClaims::getEditor,loginUserInfo.getId())
                 .set(SettleClaims::getStatus,settleClaimsStatus.getKey()));
+        deletedNoticeBiz(null,settleClaims);//鍒犻櫎閫氱煡
+        if( Constants.equalsInteger(settleClaimsStatus.getKey(),Constants.SettleClaimsStatus.ACCEPTANCE.getKey()) ){
+            //濡傛灉鏄鏍搁�氳繃宸茬珛妗堝緟瀹℃牳锛岀粰骞冲彴鍙戝緟鍙楃悊寰呭姙閫氱煡-------------
+            sendNoticeBiz(Constants.ZERO,settleClaims ,Constants.NoticeType.TWO);
+        }else{
+            //濡傛灉鏄鏍镐笉閫氳繃锛岄��鍥炵珛妗� 锛岀粰浼佷笟鍙戦�氱煡-------------
+            sendNoticeBiz(Constants.ONE,settleClaims ,Constants.NoticeType.ONE);
+        }
     }
 
 
@@ -2355,6 +2425,9 @@
         this.saveSettleClaimsLog(settleClaims,
                 Constants.SettleClaimsLogType.PLATFORM_HP_DEAL,
                 Constants.SettleClaimsLogType.PLATFORM_HP_DEAL.getInfo(),Constants.SettleClaimsStatus.COMPENSATION);
+        deletedNoticeBiz(null,settleClaims);//鍒犻櫎閫氱煡
+        //缁欎紒涓氬彂閫氬凡鏍歌禂寰呯‘璁ら噾棰濓紝鍙戜唬鍔�-------------
+        sendNoticeBiz(Constants.ONE,settleClaims ,Constants.NoticeType.TEN);
     }
 
 
@@ -2420,6 +2493,9 @@
         this.saveSettleClaimsLog(settleClaims,
                 Constants.SettleClaimsLogType.PLATFORM_UPD_FEE,
                 dto.getDescribe(),null);
+        deletedNoticeBiz(null,settleClaims);//鍒犻櫎閫氱煡
+        //缁欎紒涓氬彂閫氶噾棰濆彉鏇撮�氱煡-------------
+        sendNoticeBiz(Constants.ONE,settleClaims ,Constants.NoticeType.EIGHTEEN);
     }
 
 
@@ -2449,6 +2525,9 @@
         this.saveSettleClaimsLog(settleClaims,
                 Constants.SettleClaimsLogType.CONFIRM_FEE,
                 Constants.SettleClaimsLogType.CONFIRM_FEE.getInfo(),Constants.SettleClaimsStatus.CONFIRM_FEE);
+        deletedNoticeBiz(null,settleClaims);//鍒犻櫎閫氱煡
+        //缁欏钩鍙板彂寰呭姙锛屽凡纭閲戦锛屽彂寰呯粨妗堜唬鍔�-------------
+        sendNoticeBiz(Constants.ZERO,settleClaims ,Constants.NoticeType.TWELVE);
     }
 
 
@@ -2510,6 +2589,9 @@
         this.saveSettleClaimsLog(settleClaims,
                 Constants.SettleClaimsLogType.PLATFORM_FINISH,
                 dto.getDescribe(),Constants.SettleClaimsStatus.CLOSE_CASE);
+        deletedNoticeBiz(null,settleClaims);//鍒犻櫎閫氱煡
+        //缁欎紒涓氬彂閫氱煡锛屽凡缁撴-------------
+        sendNoticeBiz(Constants.ONE,settleClaims ,Constants.NoticeType.THIRTEEN);
     }
 
 

--
Gitblit v1.9.3