消息修改
This commit is contained in:
@@ -130,4 +130,16 @@ public class ProjectCommon {
|
||||
* 催款提醒
|
||||
*/
|
||||
public final static String ALERT8 = "8";
|
||||
/**
|
||||
* 1短信 2邮件 3系统
|
||||
*/
|
||||
public final static String MESSAGE_TYPE1 = "1";
|
||||
/**
|
||||
* 1短信 2邮件 3系统
|
||||
*/
|
||||
public final static String MESSAGE_TYPE2 = "2";
|
||||
/**
|
||||
* 1短信 2邮件 3系统
|
||||
*/
|
||||
public final static String MESSAGE_TYPE3 = "3";
|
||||
}
|
||||
|
||||
@@ -12,18 +12,6 @@ import java.util.HashMap;
|
||||
*/
|
||||
@Data
|
||||
public class SendMessageDTO implements Serializable {
|
||||
/**
|
||||
* 发送短信设置true
|
||||
*/
|
||||
private boolean sendSMS;
|
||||
/**
|
||||
* 发送消息设置true
|
||||
*/
|
||||
private boolean sendMessage;
|
||||
/**
|
||||
* 发送email设置true
|
||||
*/
|
||||
private boolean sendEmail;
|
||||
/**
|
||||
* 发送人(用户登录账户)
|
||||
*/
|
||||
@@ -40,10 +28,6 @@ public class SendMessageDTO implements Serializable {
|
||||
* 邮箱地址(发送邮箱必传)
|
||||
*/
|
||||
private String email;
|
||||
/**
|
||||
* 消息主题
|
||||
*/
|
||||
private String title;
|
||||
/**
|
||||
* 业务类型
|
||||
*/
|
||||
|
||||
+13
@@ -0,0 +1,13 @@
|
||||
package com.jero.common.service;
|
||||
|
||||
public interface ContractCreateProjectSendMessageService {
|
||||
/**
|
||||
* @Description 合同创建项目发送消息,通知项目负责人
|
||||
* @Author lqt
|
||||
* @Date 2021/9/24
|
||||
* @Param projectName 项目名称
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
void ContractCreateProjectSendMessageService(String projectName);
|
||||
}
|
||||
+55
@@ -0,0 +1,55 @@
|
||||
package com.jero.common.service.impl;
|
||||
|
||||
import com.jero.common.common.ProjectCommon;
|
||||
import com.jero.common.common.RoleCommon;
|
||||
import com.jero.common.dto.SendMessageDTO;
|
||||
import com.jero.common.enums.CompanyMessageEnums;
|
||||
import com.jero.common.service.ContractCreateProjectSendMessageService;
|
||||
import com.jero.common.service.SendMessageService;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.common.util.PasswordUtil;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.service.ISysUserService;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class ContractCreateProjectSendMessageServiceImpl implements ContractCreateProjectSendMessageService {
|
||||
|
||||
@Autowired
|
||||
private ISysUserService sysUserService;
|
||||
@Autowired
|
||||
private SendMessageService sendMessageService;
|
||||
|
||||
@Override
|
||||
public void ContractCreateProjectSendMessageService(String projectName) {
|
||||
// 获取项目负责人,发送消息
|
||||
List<SysUser> list = sysUserService.getRolesUser(Arrays.asList(RoleCommon.XMFZR));
|
||||
if(!CollectionUtils.isEmpty(list)){
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
list.forEach(p->{
|
||||
// 发送消息
|
||||
SendMessageDTO sendMessageDTO = new SendMessageDTO();
|
||||
if(!StringUtils.isBlank(p.getEmail())){
|
||||
sendMessageDTO.setEmail(PasswordUtil.decrypt(p.getEmail()));
|
||||
}
|
||||
HashMap<String,String> map = new HashMap<>();
|
||||
map.put("projectName",projectName);
|
||||
sendMessageDTO.setFromUser(sysUser.getId());
|
||||
sendMessageDTO.setToUser(p.getUsername());
|
||||
sendMessageDTO.setTemplateCode(CompanyMessageEnums.MSG11.getCode());
|
||||
sendMessageDTO.setTemplateParam(map);
|
||||
sendMessageDTO.setBusType("email");
|
||||
sendMessageDTO.setBusId(p.getId());
|
||||
sendMessageService.SendMessageService(sendMessageDTO);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
+107
-20
@@ -1,21 +1,47 @@
|
||||
package com.jero.common.service.impl;
|
||||
|
||||
import com.jero.common.api.dto.message.BusTemplateMessageDTO;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.jero.common.common.ProjectCommon;
|
||||
import com.jero.common.constant.CommonConstant;
|
||||
import com.jero.common.constant.WebsocketConst;
|
||||
import com.jero.common.dto.SendMessageDTO;
|
||||
import com.jero.common.enums.CompanyMessageEnums;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.service.SendMessageService;
|
||||
import com.jero.common.system.api.ISysBaseAPI;
|
||||
import com.jero.common.util.SysAnnmentTypeEnum;
|
||||
import com.jero.common.util.oConvertUtils;
|
||||
import com.jero.modules.message.entity.SysMessageTemplate;
|
||||
import com.jero.modules.message.handle.impl.EmailSendMsgHandle;
|
||||
import com.jero.modules.message.service.ISysMessageTemplateService;
|
||||
import com.jero.modules.message.websocket.WebSocket;
|
||||
import com.jero.modules.system.entity.SysAnnouncement;
|
||||
import com.jero.modules.system.entity.SysAnnouncementSend;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.service.ISysAnnouncementSendService;
|
||||
import com.jero.modules.system.service.ISysAnnouncementService;
|
||||
import com.jero.modules.system.service.ISysUserService;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.core.env.Environment;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Objects;
|
||||
import javax.annotation.Resource;
|
||||
import java.util.*;
|
||||
|
||||
@Service
|
||||
public class SendMessageServiceImpl implements SendMessageService {
|
||||
@Autowired
|
||||
private ISysBaseAPI sysBaseAPI;
|
||||
@Autowired
|
||||
private Environment env;
|
||||
private ISysMessageTemplateService sysMessageTemplateService;
|
||||
@Resource
|
||||
private ISysAnnouncementService sysAnnouncementService;
|
||||
@Resource
|
||||
private ISysUserService sysUserService;
|
||||
@Resource
|
||||
private ISysAnnouncementSendService sysAnnouncementSendService;
|
||||
@Resource
|
||||
private WebSocket webSocket;
|
||||
/**
|
||||
* 超时时间
|
||||
*/
|
||||
@@ -28,26 +54,87 @@ public class SendMessageServiceImpl implements SendMessageService {
|
||||
|
||||
@Override
|
||||
public void SendMessageService(SendMessageDTO sendMessageDTO) {
|
||||
if(StringUtils.isEmpty(sendMessageDTO.getTemplateCode())){
|
||||
throw new JeroBootException("模板编码不能为空!");
|
||||
}
|
||||
List<SysMessageTemplate> sysSmsTemplates = sysMessageTemplateService.selectByCode(sendMessageDTO.getTemplateCode());
|
||||
if(CollectionUtils.isEmpty(sysSmsTemplates)){
|
||||
throw new JeroBootException("消息模板不能为空!");
|
||||
}
|
||||
SysMessageTemplate sysSmsTemplate = sysSmsTemplates.get(0);
|
||||
// 没有选项,不发送消息
|
||||
String templateType = sysSmsTemplate.getTemplateType();
|
||||
if(StringUtils.isBlank(templateType)){
|
||||
return;
|
||||
}
|
||||
//模板标题
|
||||
String title = sysBaseAPI.translateDict("notice_type",sysSmsTemplate.getTemplateName());
|
||||
//模板内容
|
||||
String content = sysSmsTemplate.getTemplateContent();
|
||||
HashMap<String,String> map = sendMessageDTO.getTemplateParam();
|
||||
if(!Objects.isNull(map)) {
|
||||
for (Map.Entry<String, String> entry : map.entrySet()) {
|
||||
String str = "${" + entry.getKey() + "}";
|
||||
content = content.replace(str, entry.getValue());
|
||||
}
|
||||
}
|
||||
|
||||
// 1短信 2邮件 3系统
|
||||
// 发送邮件 true
|
||||
if(sendMessageDTO.isSendEmail()){
|
||||
sysBaseAPI.sendEmailTemplateMsg(sendMessageDTO.getEmail(), sendMessageDTO.getTitle(), sendMessageDTO.getTemplateCode(),sendMessageDTO.getTemplateParam());
|
||||
if(templateType.contains(ProjectCommon.MESSAGE_TYPE2) && !StringUtils.isEmpty(sendMessageDTO.getEmail())){
|
||||
EmailSendMsgHandle emailHandle = new EmailSendMsgHandle();
|
||||
emailHandle.SendMsg(sendMessageDTO.getEmail(), title, content);
|
||||
}
|
||||
// 发送消息
|
||||
if(sendMessageDTO.isSendMessage()){
|
||||
BusTemplateMessageDTO busTemplateMessageDTO = new BusTemplateMessageDTO();
|
||||
busTemplateMessageDTO.setTitle(sendMessageDTO.getTitle());
|
||||
busTemplateMessageDTO.setFromUser(sendMessageDTO.getFromUser());
|
||||
busTemplateMessageDTO.setToUser(sendMessageDTO.getToUser());
|
||||
busTemplateMessageDTO.setTemplateCode(sendMessageDTO.getTemplateCode());
|
||||
busTemplateMessageDTO.setTemplateParam(sendMessageDTO.getTemplateParam());
|
||||
busTemplateMessageDTO.setBusType(sendMessageDTO.getBusType());
|
||||
busTemplateMessageDTO.setBusId(sendMessageDTO.getBusId());
|
||||
// 发送消息
|
||||
sysBaseAPI.sendBusTemplateAnnouncement(busTemplateMessageDTO);
|
||||
if(templateType.contains(ProjectCommon.MESSAGE_TYPE3) && !StringUtils.isEmpty(sendMessageDTO.getToUser())){
|
||||
String fromUser = sendMessageDTO.getFromUser();
|
||||
String toUser = sendMessageDTO.getToUser();
|
||||
String busId = sendMessageDTO.getBusId();
|
||||
String busType = sendMessageDTO.getBusType();
|
||||
|
||||
SysAnnouncement announcement = new SysAnnouncement();
|
||||
announcement.setTitile(title);
|
||||
announcement.setMsgContent(content);
|
||||
announcement.setSender(fromUser);
|
||||
announcement.setPriority(CommonConstant.PRIORITY_M);
|
||||
announcement.setMsgType(CommonConstant.MSG_TYPE_UESR);
|
||||
announcement.setSendStatus(CommonConstant.HAS_SEND);
|
||||
announcement.setSendTime(new Date());
|
||||
announcement.setMsgCategory(CommonConstant.MSG_CATEGORY_2);
|
||||
announcement.setDelFlag(String.valueOf(CommonConstant.DEL_FLAG_0));
|
||||
announcement.setBusId(busId);
|
||||
announcement.setBusType(busType);
|
||||
announcement.setOpenType(SysAnnmentTypeEnum.getByType(busType).getOpenType());
|
||||
announcement.setOpenPage(SysAnnmentTypeEnum.getByType(busType).getOpenPage());
|
||||
announcement.setTemplateCode(sendMessageDTO.getTemplateCode());
|
||||
sysAnnouncementService.save(announcement);
|
||||
// 2.插入用户通告阅读标记表记录
|
||||
String userId = toUser;
|
||||
String[] userIds = userId.split(",");
|
||||
String anntId = announcement.getId();
|
||||
for(int i=0;i<userIds.length;i++) {
|
||||
if(oConvertUtils.isNotEmpty(userIds[i])) {
|
||||
SysUser sysUser = sysUserService.getUserByName(userIds[i]);
|
||||
if(Objects.isNull(sysUser)) {
|
||||
continue;
|
||||
}
|
||||
SysAnnouncementSend announcementSend = new SysAnnouncementSend();
|
||||
announcementSend.setAnntId(anntId);
|
||||
announcementSend.setUserId(sysUser.getId());
|
||||
announcementSend.setReadFlag(CommonConstant.NO_READ_FLAG);
|
||||
sysAnnouncementSendService.save(announcementSend);
|
||||
JSONObject obj = new JSONObject();
|
||||
obj.put(WebsocketConst.MSG_CMD, WebsocketConst.CMD_USER);
|
||||
obj.put(WebsocketConst.MSG_USER_ID, sysUser.getId());
|
||||
obj.put(WebsocketConst.MSG_ID, announcement.getId());
|
||||
obj.put(WebsocketConst.MSG_TXT, announcement.getTitile());
|
||||
webSocket.sendMessage(sysUser.getId(), obj.toJSONString());
|
||||
}
|
||||
}
|
||||
}
|
||||
// todo 发送短信 待完成
|
||||
if(Objects.equals(env.getProperty("huaWeiSms.open"),true) && sendMessageDTO.isSendSMS()){
|
||||
sysBaseAPI.sendSMS(sendMessageDTO.getPhone(),type,time,sendMessageDTO.getTemplateCode(),sendMessageDTO.getTemplateParam());
|
||||
if(templateType.contains(ProjectCommon.MESSAGE_TYPE1) && !StringUtils.isEmpty(sendMessageDTO.getPhone())){
|
||||
// sysBaseAPI.sendSMS(sendMessageDTO.getPhone(),type,time,sendMessageDTO.getTemplateCode(),sendMessageDTO.getTemplateParam());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+7
@@ -389,4 +389,11 @@ public class PayMeetingSituation implements Serializable {
|
||||
@Dict(dicCode = "yn")
|
||||
@TableField(exist = false)
|
||||
private Integer identification;
|
||||
|
||||
/**
|
||||
* 收入合同处新增标识 flag = 1
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "收入合同处新增标识 flag = 1")
|
||||
private String flag;
|
||||
}
|
||||
|
||||
+11
@@ -6,7 +6,9 @@ import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.jero.common.common.ProjectCommon;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.service.ContractCreateProjectSendMessageService;
|
||||
import com.jero.common.system.api.ISysBaseAPI;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.common.util.ValidUtil;
|
||||
@@ -93,6 +95,8 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
|
||||
private IPayWorkingGroupSubItemService payWorkingGroupSubItemService;
|
||||
@Resource
|
||||
private IPayCaseCommitteeSubitemService payCaseCommitteeSubitemService;
|
||||
@Resource
|
||||
private ContractCreateProjectSendMessageService contractCreateProjectSendMessageService;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
@@ -106,6 +110,13 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
|
||||
|
||||
saveMeetingSituation(payMeetingSituation1);
|
||||
handlePack(payMeetingSituation1);
|
||||
|
||||
|
||||
// 收入合同创建项目发送消息到项目负责人
|
||||
if(Objects.equals(ProjectCommon.FLAG,payMeetingSituation.getFlag())){
|
||||
PayMeeting payMeeting = meetingService.getById(payMeetingSituation.getMeetingId());
|
||||
contractCreateProjectSendMessageService.ContractCreateProjectSendMessageService(payMeeting.getMeetingName() + "的" + payMeetingSituation.getCompanyName());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+7
@@ -5,6 +5,7 @@ import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.jero.common.aspect.annotation.Dict;
|
||||
@@ -246,5 +247,11 @@ public class PayMemberProjectSubitem implements Serializable {
|
||||
@DecimalMax(value = "9999999999.99",message = "开票金额格式错误")
|
||||
@JsonFormat(shape = JsonFormat.Shape.STRING)
|
||||
private BigDecimal invoiceAmount;
|
||||
/**
|
||||
* 收入合同处新增标识 flag = 1
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "收入合同处新增标识 flag = 1")
|
||||
private String flag;
|
||||
|
||||
}
|
||||
|
||||
+7
-2
@@ -2,14 +2,15 @@ package com.jero.member.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.jero.common.common.ProjectCommon;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.service.ContractCreateProjectSendMessageService;
|
||||
import com.jero.common.service.ProjectDetailService;
|
||||
import com.jero.common.util.ValidUtil;
|
||||
import com.jero.common.vo.ProjectStatusVO;
|
||||
import com.jero.company.entity.PayContactsManagement;
|
||||
import com.jero.company.service.IPayContactsManagementService;
|
||||
import com.jero.contract.entity.PayIncomeContract;
|
||||
import com.jero.contract.service.IPayIncomeContractAssociatedService;
|
||||
import com.jero.contract.service.IPayIncomeContractService;
|
||||
import com.jero.pack.entity.PayPackCompanyProject;
|
||||
import com.jero.pack.service.IPayPackCompanyProjectService;
|
||||
@@ -64,7 +65,7 @@ public class PayPayMemberProjectSubitemServiceImpl extends ServiceImpl<PayMember
|
||||
@Autowired
|
||||
private ProjectDetailService projectDetailService;
|
||||
@Autowired
|
||||
private IPayIncomeContractAssociatedService payIncomeContractAssociatedService;
|
||||
private ContractCreateProjectSendMessageService contractCreateProjectSendMessageService;
|
||||
@Resource
|
||||
private IPayMemberProjectSubitemService memberProjectSubitemService;
|
||||
/**
|
||||
@@ -114,6 +115,10 @@ public class PayPayMemberProjectSubitemServiceImpl extends ServiceImpl<PayMember
|
||||
}
|
||||
}
|
||||
}
|
||||
// 收入合同创建项目发送消息到项目负责人
|
||||
if(Objects.equals(ProjectCommon.FLAG,payMemberProjectSubitem.getFlag())){
|
||||
contractCreateProjectSendMessageService.ContractCreateProjectSendMessageService(memberProject.getProjectName() + "的" + payMemberProjectSubitem.getCompanyName());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+9
-11
@@ -9,6 +9,7 @@ import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.common.ProjectCommon;
|
||||
import com.jero.common.dto.SendMessageDTO;
|
||||
import com.jero.common.enums.CompanyMessageEnums;
|
||||
import com.jero.common.enums.ManagementMessageEnums;
|
||||
import com.jero.common.service.ProjectDetailService;
|
||||
import com.jero.common.service.SendMessageService;
|
||||
import com.jero.common.system.api.ISysBaseAPI;
|
||||
@@ -158,21 +159,18 @@ public class PayWorkingGroupSubItemController extends JeroController<PayWorkingG
|
||||
if(CollectionUtils.isEmpty(listContactsInfo)){
|
||||
return;
|
||||
}
|
||||
if(StringUtils.isBlank(listContactsInfo.get(0).getEmail()) || StringUtils.isBlank(listContactsInfo.get(0).getPhone())){
|
||||
return;
|
||||
// 发送消息
|
||||
SendMessageDTO sendMessageDTO = new SendMessageDTO();
|
||||
if(!StringUtils.isBlank(listContactsInfo.get(0).getEmail())){
|
||||
sendMessageDTO.setEmail(PasswordUtil.decrypt(listContactsInfo.get(0).getEmail()));
|
||||
}
|
||||
if(!StringUtils.isBlank(listContactsInfo.get(0).getPhone())){
|
||||
sendMessageDTO.setToUser(PasswordUtil.decrypt(listContactsInfo.get(0).getPhone()));
|
||||
sendMessageDTO.setPhone(PasswordUtil.decrypt(listContactsInfo.get(0).getPhone()));
|
||||
}
|
||||
HashMap<String,String> map = new HashMap<>();
|
||||
map.put("projectName",payWorkingGroup.getWorkingGroupProject());
|
||||
// 发送消息
|
||||
SendMessageDTO sendMessageDTO = new SendMessageDTO();
|
||||
sendMessageDTO.setSendEmail(true);
|
||||
sendMessageDTO.setSendMessage(true);
|
||||
sendMessageDTO.setSendSMS(true);
|
||||
sendMessageDTO.setTitle(ProjectCommon.ALERT8);
|
||||
sendMessageDTO.setFromUser(sysUser.getId());
|
||||
sendMessageDTO.setToUser(PasswordUtil.decrypt(listContactsInfo.get(0).getPhone()));
|
||||
sendMessageDTO.setPhone(PasswordUtil.decrypt(listContactsInfo.get(0).getPhone()));
|
||||
sendMessageDTO.setEmail(PasswordUtil.decrypt(listContactsInfo.get(0).getEmail()));
|
||||
sendMessageDTO.setTemplateCode(CompanyMessageEnums.MSG11.getCode());
|
||||
sendMessageDTO.setTemplateParam(map);
|
||||
sendMessageDTO.setBusType("email");
|
||||
|
||||
+7
@@ -201,4 +201,11 @@ public class PayWorkingGroupSubItem implements Serializable {
|
||||
/**会议id*/
|
||||
@TableField(exist = false)
|
||||
private java.lang.String meetingId;
|
||||
|
||||
/**
|
||||
* 收入合同处新增标识 flag = 1
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "收入合同处新增标识 flag = 1")
|
||||
private String flag;
|
||||
}
|
||||
|
||||
+4
-29
@@ -11,6 +11,7 @@ import com.jero.common.dto.SendMessageDTO;
|
||||
import com.jero.common.enums.CompanyMessageEnums;
|
||||
import com.jero.common.enums.ManagementMessageEnums;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.service.ContractCreateProjectSendMessageService;
|
||||
import com.jero.common.service.ProjectDetailService;
|
||||
import com.jero.common.service.SendMessageService;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
@@ -83,7 +84,7 @@ public class PayCommonProjectServiceImpl extends ServiceImpl<PayCommonProjectMap
|
||||
@Autowired
|
||||
private ProjectDetailService projectDetailService;
|
||||
@Autowired
|
||||
private SendMessageService sendMessageService;
|
||||
private ContractCreateProjectSendMessageService contractCreateProjectSendMessageService;
|
||||
|
||||
|
||||
|
||||
@@ -131,35 +132,9 @@ public class PayCommonProjectServiceImpl extends ServiceImpl<PayCommonProjectMap
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
// 收入合同创建项目发送消息到项目负责人
|
||||
if(Objects.equals(ProjectCommon.FLAG,payCommonProject.getFlag())){
|
||||
// 获取项目负责人,发送消息
|
||||
List<SysUser> list = sysUserService.getRolesUser(Arrays.asList(RoleCommon.XMFZR));
|
||||
if(!CollectionUtils.isEmpty(list)){
|
||||
list.forEach(p->{
|
||||
if(StringUtils.isBlank(p.getEmail())){
|
||||
return;
|
||||
}
|
||||
HashMap<String,String> map = new HashMap<>();
|
||||
map.put("projectName",payCommonProject.getChargeProject());
|
||||
// 发送消息
|
||||
SendMessageDTO sendMessageDTO = new SendMessageDTO();
|
||||
sendMessageDTO.setSendEmail(true);
|
||||
sendMessageDTO.setSendMessage(true);
|
||||
sendMessageDTO.setSendSMS(true);
|
||||
sendMessageDTO.setTitle(ProjectCommon.ALERT1);
|
||||
sendMessageDTO.setFromUser(sysUser.getId());
|
||||
sendMessageDTO.setToUser(p.getUsername());
|
||||
sendMessageDTO.setPhone(PasswordUtil.decrypt(p.getPhone()));
|
||||
sendMessageDTO.setEmail(PasswordUtil.decrypt(p.getEmail()));
|
||||
sendMessageDTO.setTemplateCode(CompanyMessageEnums.MSG11.getCode());
|
||||
sendMessageDTO.setTemplateParam(map);
|
||||
sendMessageDTO.setBusType("email");
|
||||
sendMessageDTO.setBusId(p.getId());
|
||||
sendMessageService.SendMessageService(sendMessageDTO);
|
||||
});
|
||||
}
|
||||
contractCreateProjectSendMessageService.ContractCreateProjectSendMessageService(payCommonProject.getChargeProject());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+15
-1
@@ -5,8 +5,15 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.common.ProjectCommon;
|
||||
import com.jero.common.common.RoleCommon;
|
||||
import com.jero.common.dto.SendMessageDTO;
|
||||
import com.jero.common.enums.CompanyMessageEnums;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.service.ContractCreateProjectSendMessageService;
|
||||
import com.jero.common.service.ProjectDetailService;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.common.util.PasswordUtil;
|
||||
import com.jero.common.util.ValidUtil;
|
||||
import com.jero.common.vo.ProjectStatusVO;
|
||||
import com.jero.company.entity.PayCompanyManagement;
|
||||
@@ -19,6 +26,7 @@ import com.jero.contract.service.IPayIncomeContractAssociatedService;
|
||||
import com.jero.contract.service.IPayIncomeContractService;
|
||||
import com.jero.meeting.entity.PayMeetingRemindRecord;
|
||||
import com.jero.meeting.service.IPayMeetingRemindRecordService;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.pack.entity.PayPackCompanyProject;
|
||||
import com.jero.pack.service.IPayPackCompanyProjectService;
|
||||
import com.jero.project.common.PayProjectCommon;
|
||||
@@ -36,6 +44,7 @@ import com.jero.temporary.service.IPayContactsManagementTemporaryService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.jeecgframework.poi.excel.ExcelImportCheckUtil;
|
||||
import org.jeecgframework.poi.excel.ExcelImportUtil;
|
||||
import org.jeecgframework.poi.excel.entity.ImportParams;
|
||||
@@ -85,6 +94,8 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
|
||||
private ProjectDetailService projectDetailService;
|
||||
@Resource
|
||||
private IPayMeetingRemindRecordService payMeetingRemindRecordService;
|
||||
@Autowired
|
||||
private ContractCreateProjectSendMessageService contractCreateProjectSendMessageService;
|
||||
|
||||
@Override
|
||||
public void updateBatchSetCharge(SetChargeInput input) {
|
||||
@@ -173,7 +184,10 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 收入合同创建项目发送消息到项目负责人
|
||||
if(Objects.equals(ProjectCommon.FLAG,payWorkingGroupSubItem.getFlag())){
|
||||
contractCreateProjectSendMessageService.ContractCreateProjectSendMessageService(payWorkingGroup.getWorkingGroupProject() + "的" + payWorkingGroupSubItem.getChargeCompanyTemporaryName());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+2
@@ -1,5 +1,6 @@
|
||||
package com.jero.modules.message.entity;
|
||||
|
||||
import com.jero.common.aspect.annotation.Dict;
|
||||
import com.jero.common.system.base.entity.JeroEntity;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
|
||||
@@ -25,6 +26,7 @@ public class SysMessageTemplate extends JeroEntity {
|
||||
private java.lang.String templateCode;
|
||||
/**模板标题*/
|
||||
@Excel(name = "模板标题", width = 30)
|
||||
@Dict(dicCode = "notice_type")
|
||||
private java.lang.String templateName;
|
||||
/**模板内容*/
|
||||
@Excel(name = "模板内容", width = 50)
|
||||
|
||||
+1
-1
@@ -32,7 +32,7 @@ public class SysAnnouncement implements Serializable {
|
||||
* 标题
|
||||
*/
|
||||
@Excel(name = "标题", width = 15)
|
||||
@Dict(dicCode = "message_type")
|
||||
@Dict(dicCode = "notice_type")
|
||||
private java.lang.String titile;
|
||||
/**
|
||||
* 内容
|
||||
|
||||
+1
-1
@@ -30,7 +30,7 @@ public class AnnouncementSendModel implements Serializable {
|
||||
/**用户id*/
|
||||
private java.lang.String userId;
|
||||
/**标题*/
|
||||
@Dict(dicCode = "message_type")
|
||||
@Dict(dicCode = "notice_type")
|
||||
private java.lang.String titile;
|
||||
/**内容*/
|
||||
private java.lang.String msgContent;
|
||||
|
||||
Reference in New Issue
Block a user