Przeglądaj źródła

回款消息增加人员

yewc 11 miesięcy temu
rodzic
commit
43010df559

+ 31 - 18
zjugis-business/src/main/java/com/zjugis/business/service/impl/ContractMessageServiceImpl.java

@@ -31,9 +31,8 @@ import org.springframework.stereotype.Service;
 import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
+import java.nio.charset.StandardCharsets;
+import java.util.*;
 
 /**
  * 合同相关消息表(CONTRACT_MESSAGE)表服务实现类
@@ -183,36 +182,46 @@ public class ContractMessageServiceImpl implements ContractMessageService {
     }
 
     private void sendMsg(Contract contract,String content) {
+        Set<String> sendPeople = new HashSet<>();
         if (StringUtils.isNotBlank(contract.getProjectId())) {
             Project project = projectMapper.selectById(contract.getProjectId());
             if (StringUtils.isNotBlank(project.getXmjlId())) {
-                dingApi.sendMessage(new DingMessageDto(project.getXmjlId(), content));
+                sendPeople.add(project.getXmjlId());
+                //dingApi.sendMessage(new DingMessageDto(project.getXmjlId(), content));
             }
             if (StringUtils.isNotBlank(project.getZrbmId())) {
                 CommonResult<DeptRespDTO> result = deptApi.getDept(project.getZrbmId());
                 DeptRespDTO dept = result.getCheckedData();
                 if (dept != null && StringUtils.isNotBlank(dept.getLeaderUserId())) {
-                    dingApi.sendMessage(new DingMessageDto(dept.getLeaderUserId(), content));
+                    //dingApi.sendMessage(new DingMessageDto(dept.getLeaderUserId(), content));
+                    sendPeople.add(dept.getLeaderUserId());
                     CommonResult<AdminUserRespDTO> userRes = adminUserApi.getUserLeader(dept.getLeaderUserId());
                     AdminUserRespDTO userLeader = userRes.getCheckedData();
                     if (userLeader != null) {
-                        dingApi.sendMessage(new DingMessageDto(userLeader.getId(), content));
+                        sendPeople.add(userLeader.getId());
+                        //dingApi.sendMessage(new DingMessageDto(userLeader.getId(), content));
                     }
                 }
                 DeptRespDTO deptRespDTO = deptApi.getSecondDeptByDeptId(project.getZrbmId()).getCheckedData();
                 if (deptRespDTO != null && StringUtils.isNotBlank(deptRespDTO.getLeaderUserId())) {
-                    dingApi.sendMessage(new DingMessageDto(deptRespDTO.getLeaderUserId(), content));
+                    sendPeople.add(deptRespDTO.getLeaderUserId());
+                    //dingApi.sendMessage(new DingMessageDto(deptRespDTO.getLeaderUserId(), content));
                 }
             }
             if (StringUtils.isNotBlank(project.getXsryId())) {
-                dingApi.sendMessage(new DingMessageDto(project.getXsryId(), content));
-                CommonResult<List<DeptRespDTO>> deptsRes = deptApi.getDeptByUserId(project.getXsryId());
-                List<DeptRespDTO> depts = deptsRes.getCheckedData();
-                for (DeptRespDTO dept : depts) {
-                    if(!dept.getLeaderUserId().equals(project.getXsryId())){
-                        dingApi.sendMessage(new DingMessageDto(dept.getLeaderUserId(), content));
-                    }
-                }
+                sendPeople.add(project.getXsryId());
+                //dingApi.sendMessage(new DingMessageDto(project.getXsryId(), content));
+                CommonResult<AdminUserRespDTO> deptsRes1=adminUserApi.getUser(project.getXsryId());
+                //发送给销售经理的部门负责人
+                CommonResult<DeptRespDTO> fzr=deptApi.getDept(deptsRes1.getData().getDeptId());
+                String fzrid=fzr.getCheckedData().getLeaderUserId();
+                sendPeople.add(fzrid);
+            }
+            //发送给总经理室
+            CommonResult<List<AdminUserRespDTO>> zjls=adminUserApi.getDeptChildUserListByDeptId("5871709");
+            for(AdminUserRespDTO adminUserRespDTO:zjls.getCheckedData()){
+                sendPeople.add(adminUserRespDTO.getId());
+                //dingApi.sendMessage(new DingMessageDto(adminUserRespDTO.getId(), content));
             }
         }
         CommonResult<List<AdminUserRespDTO>> userListRes = adminUserApi.getUserListByDeptIds(Collections.singletonList(managerDeptId));
@@ -220,12 +229,16 @@ public class ContractMessageServiceImpl implements ContractMessageService {
         List<AdminUserRespDTO> list = userListRes.getCheckedData();
         List<AdminUserRespDTO> posUserList = postUserListRes.getCheckedData();
         for (AdminUserRespDTO user : list) {
-            dingApi.sendMessage(new DingMessageDto(user.getId(), content));
+            //dingApi.sendMessage(new DingMessageDto(user.getId(), content));
+            sendPeople.add(user.getId());
         }
         for (AdminUserRespDTO user : posUserList) {
-            dingApi.sendMessage(new DingMessageDto(user.getId(), content));
+            //dingApi.sendMessage(new DingMessageDto(user.getId(), content));
+            sendPeople.add(user.getId());
+        }
+        for (String element : sendPeople) {
+            dingApi.sendMessage(new DingMessageDto(element, content));
         }
-
     }
 }