|
@@ -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));
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
}
|
|
|
|