From 4e2975cee275d8315483b30c5d85b8c33a092e63 Mon Sep 17 00:00:00 2001
From: mg <maokecheng@163.com>
Date: 星期五, 21 十月 2022 15:30:53 +0800
Subject: [PATCH] 取消消息类型校验

---
 ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java |   52 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 52 insertions(+), 0 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 b0bb2c3..97d0717 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
@@ -4,10 +4,17 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ycl.entity.message.Message;
 import com.ycl.entity.message.SmsAudit;
+import com.ycl.entity.user.UmsDepartManage;
 import com.ycl.mapper.message.SmsAuditMapper;
+import com.ycl.mapper.user.UmsDepartManageMapper;
 import com.ycl.service.message.ISmsAuditService;
 import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -19,14 +26,59 @@
  */
 @Service
 public class SmsAuditServiceImpl extends ServiceImpl<SmsAuditMapper, SmsAudit> implements ISmsAuditService {
+
+    @Resource
+    private UmsDepartManageMapper umsDepartManageMapper;
+
     @Override
     public IPage<SmsAudit> list(SmsAudit smsAudit) {
         Page<SmsAudit> page = new Page<>(smsAudit.getCurrent(), smsAudit.getPageSize());
         LambdaQueryWrapper<SmsAudit> queryWrapper = new LambdaQueryWrapper<>();
+        if (smsAudit.getAuditId() != null) {
+            queryWrapper.eq(SmsAudit::getAuditId, smsAudit.getAuditId());
+        }
         if (smsAudit.getAuditStatus() != null) {
             queryWrapper.eq(SmsAudit::getAuditStatus, smsAudit.getAuditStatus());
         }
         Page<SmsAudit> result = baseMapper.selectPage(page, queryWrapper);
         return result;
     }
+
+    @Override
+    public void startAuditSms(Message message) {
+        String[] arr = message.getTargetTo().split(",");
+        List<Long> ids = new ArrayList<>();
+        for (int i = 0; i < arr.length; i++) {
+            ids.add(Long.parseLong(arr[i]));
+        }
+        //鏌ヨ閮ㄩ棬
+        LambdaQueryWrapper<UmsDepartManage> queryDeptWrapper = new LambdaQueryWrapper<>();
+        queryDeptWrapper.in(UmsDepartManage::getUserId, ids);
+        List<UmsDepartManage> depts = umsDepartManageMapper.selectList(queryDeptWrapper);
+        //閮ㄩ棬鍘婚噸
+        List<UmsDepartManage> uniques = depts.stream().collect(
+                Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(o->o.getDepartId()))),
+                        ArrayList::new));
+        List<Long> deptLeadIds = uniques.stream().map(UmsDepartManage::getDepartId).collect(Collectors.toList());
+        LambdaQueryWrapper<UmsDepartManage> queryDeptLeadWrapper = new LambdaQueryWrapper<>();
+        queryDeptLeadWrapper.in(UmsDepartManage::getDepartId, deptLeadIds).eq(UmsDepartManage::getIsLeader,1);
+        List<UmsDepartManage> deptLeads = umsDepartManageMapper.selectList(queryDeptLeadWrapper);
+        //娣诲姞鐭俊瀹℃牳
+        List<SmsAudit> audits = new ArrayList<>();
+        for (UmsDepartManage depart : deptLeads) {
+            SmsAudit audit = new SmsAudit();
+            audit.setMessageId(message.getId());
+            audit.setAuditId(depart.getUserId());
+            //寰呭鏍哥姸鎬�
+            audit.setAuditStatus(0);
+            Long userId = Long.parseLong(message.getTargetFrom());
+            audit.setCreateUser(userId);
+            audit.setCreateTime(new Date());
+            audit.setUpdateUser(userId);
+            audit.setUpdateTime(new Date());
+            audits.add(audit);
+        }
+        saveBatch(audits);
+
+    }
 }

--
Gitblit v1.8.0