From c22b5eb143260a98b9aab8fc3281ffa2a5ca2eed Mon Sep 17 00:00:00 2001
From: mg <maokecheng@163.com>
Date: 星期五, 28 十月 2022 18:07:42 +0800
Subject: [PATCH] 修改

---
 ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java |   24 ++++++++++++++++++------
 1 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java
index 6712c0c..ceedd48 100644
--- a/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java
+++ b/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java
@@ -79,9 +79,14 @@
         LambdaQueryWrapper<UmsDepartManage> queryDeptLeadWrapper = new LambdaQueryWrapper<>();
         queryDeptLeadWrapper.in(UmsDepartManage::getDepartId, deptLeadIds).eq(UmsDepartManage::getIsLeader,1);
         List<UmsDepartManage> deptLeads = umsDepartManageMapper.selectList(queryDeptLeadWrapper);
+
+        //瀹℃牳鍘婚噸
+        List<UmsDepartManage> uniqueLeads = deptLeads.stream().collect(
+                Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(o->o.getUserId()))),
+                        ArrayList::new));
         //娣诲姞鐭俊瀹℃牳
         List<SmsAudit> audits = new ArrayList<>();
-        for (UmsDepartManage depart : deptLeads) {
+        for (UmsDepartManage depart : uniqueLeads) {
             SmsAudit audit = new SmsAudit();
             audit.setMessageId(message.getId());
             audit.setAuditId(depart.getUserId());
@@ -135,20 +140,27 @@
         LambdaQueryWrapper<Message> updateWrapper = new LambdaQueryWrapper<>();
         updateWrapper.eq(Message::getMessageNumber, message.getMessageNumber());
         messageMapper.update(updateMessage, updateWrapper);
-
-        baseMapper.updateById(packageData(messageSmsParam));
+        //瀹℃牳鐭俊鏇存柊
+        updateSmsAudit(messageSmsParam);
     }
     @Transactional
     public void noPassMethod(MessageSmsParam messageSmsParam) {
-        baseMapper.updateById(packageData(messageSmsParam));
+        //瀹℃牳鐭俊鏇存柊
+        updateSmsAudit(messageSmsParam);
+    }
+    public void updateSmsAudit(MessageSmsParam messageSmsParam) {
+        SmsAudit smsAudit = packageData(messageSmsParam);
+        LambdaQueryWrapper<SmsAudit> smsAuditUpdate = new LambdaQueryWrapper<>();
+        smsAuditUpdate.eq(SmsAudit::getMessageId, messageSmsParam.getMessageId());
+        baseMapper.update(smsAudit,smsAuditUpdate);
     }
     public SmsAudit packageData(MessageSmsParam messageSmsParam) {
         SmsAudit smsAudit = new SmsAudit();
-        smsAudit.setId(messageSmsParam.getId());
+        smsAudit.setMessageId(messageSmsParam.getMessageId());
         smsAudit.setAuditStatus(messageSmsParam.getStatus());
         smsAudit.setAuditOpinion(messageSmsParam.getAuditOpinion());
         smsAudit.setAuditResult(messageSmsParam.getResult());
-        smsAudit.setAuditId(messageSmsParam.getUpdateUser());
+        smsAudit.setRealAuditId(messageSmsParam.getUpdateUser());
         smsAudit.setUpdateTime(new Date());
         smsAudit.setUpdateUser(messageSmsParam.getUpdateUser());
         return smsAudit;

--
Gitblit v1.8.0