消息修改

This commit is contained in:
梁琦涛
2021-09-24 08:50:37 +08:00
parent cb942a2395
commit 3a1e099922
10 changed files with 87 additions and 69 deletions
@@ -6,6 +6,7 @@ import com.jero.common.api.dto.OnlineAuthDTO;
import com.jero.common.api.dto.message.*;
import com.jero.common.system.vo.*;
import java.util.HashMap;
import java.util.List;
import java.util.Set;
@@ -280,6 +281,14 @@ public interface ISysBaseAPI extends CommonAPI {
* @param content
*/
void sendEmailMsg(String email,String title,String content);
/**
* 40发送m模板邮件消息
* @param email 接收人 必传
* @param title 标题 (不传取模板标题)
* @param templateCode 模板编码 必传
* @param map 模板替换参数 必传
*/
void sendEmailTemplateMsg(String email,String title,String templateCode,HashMap<String,String> map);
/**
* 41根据部门id查询部门所有的父级(不包含自己)
* @author 马志朝
@@ -12,18 +12,18 @@ import org.apache.commons.lang3.StringUtils;
*/
public enum CompanyMessageEnums {
MSG1("HYTZ_WORK_GROUP_CREATE","会议提醒","点击跳转到报名页面"),
MSG2("HYTZ_WORK_GROUP_SIGN_UP","会议提醒","弹窗:查看该会议详情"),
MSG3("HYTZ_WORK_GROUP_UPLOAD","会议提醒","弹窗:查看该会议详情"),
MSG4("HYTZ_WORK_GROUP_NOT_UPLOAD","会议提醒","弹窗:查看该会议详情"),
MSG5("HYTZ_NOT_AUDIT","会议提醒","弹窗:上传汇款凭证"),
MSG6("HYTZ_AUDIT","会议提醒","弹窗:查看该会议详情"),
MSG7("WJTZ_MEETING_SEND","文件提醒","弹窗:查看该会议详情"),
MSG8("HTTZ_PHASE","合同提醒",""),
MSG9("YJTZ_MAIL","邮寄提醒","查看该物流信息"),
MSG10("YJTZ_MAIL_CONTRACT","邮寄提醒","查看该物流信息"),
MSG11("CKTZ_PAY","催款提醒","弹窗:查看该项目详情"),
MSG12("WJTZ_WORK_GROUP_SEND","文件提醒","弹窗:查看该项目详情");
MSG1("HYTZ_WORK_GROUP_CREATE","会议提醒"),//点击跳转到报名页面meetingNamebusId
MSG2("HYTZ_WORK_GROUP_SIGN_UP","会议提醒"),//弹窗:查看该会议详情meetingName
MSG3("HYTZ_WORK_GROUP_UPLOAD","会议提醒"),//弹窗:查看该会议详情meetingName
MSG4("HYTZ_WORK_GROUP_NOT_UPLOAD","会议提醒"),//弹窗:查看该会议详情meetingName
MSG5("HYTZ_NOT_AUDIT","会议提醒"),//弹窗:上传汇款凭证meetingName
MSG6("HYTZ_AUDIT","会议提醒"),//弹窗:查看该会议详情meetingName
MSG7("WJTZ_MEETING_SEND","文件提醒"),//弹窗:查看该会议详情meetingName
MSG8("HTTZ_PHASE","合同提醒"),//无,contractnumamount
MSG9("YJTZ_MAIL","邮寄提醒"),//查看该物流信息,projectName
MSG10("YJTZ_MAIL_CONTRACT","邮寄提醒"),//查看该物流信息,contractName
MSG11("CKTZ_PAY","催款提醒"),//弹窗:查看该项目详情projectName
MSG12("WJTZ_WORK_GROUP_SEND","文件提醒");//弹窗:查看该项目详情workGroupName
private String code;
@@ -32,10 +32,9 @@ public enum CompanyMessageEnums {
private String detail;
CompanyMessageEnums(String code, String value, String detail){
CompanyMessageEnums(String code, String value){
this.code = code;
this.value = value;
this.detail = detail;
}
public String getCode() {
@@ -54,14 +53,6 @@ public enum CompanyMessageEnums {
this.value = value;
}
public String getDetail() {
return detail;
}
public void setDetail(String detail) {
this.detail = detail;
}
public static CompanyMessageEnums getByCode(String code) {
if (StringUtils.isBlank(code)) {
return null;
@@ -11,26 +11,23 @@ import org.apache.commons.lang3.StringUtils;
*/
public enum ManagementMessageEnums {
MSG1("HTTZ_CREATE_PROJECT","项目提醒","查看详情"),
MSG2("HTTZ_SUBMIT","合同提醒","跳转到合同的详情页面"),
MSG3("HTTZ_AUDIT","合同提醒","跳转到合同的详情页面"),
MSG4("HTTZ_NOT_AUDIT","合同提醒","跳转到合同的详情页面"),
MSG5("HYTZ_SIGN_UP_UPLOAD","会议提醒","审核弹窗"),
MSG6("DBTZ_ADD","打包提醒","查看该项目详情"),
MSG7("DBTZ_CONTRACT","打包提醒","查看项目详情"),
MSG8("HYTZ_ON_ACCESS_UPDATE","会议提醒","查看该参会人详情"),
MSG9("QYTZ_CREATE","企业提醒","企业列表页");
MSG1("HTTZ_CREATE_PROJECT","项目提醒"),// 查看详情,projectName
MSG2("HTTZ_SUBMIT","合同提醒"),// 跳转到合同的详情页面,contractNum,contractName
MSG3("HTTZ_AUDIT","合同提醒"),//跳转到合同的详情页面,contractNum,contractName
MSG4("HTTZ_NOT_AUDIT","合同提醒"),//跳转到合同的详情页面,contractNum,contractName
MSG5("HYTZ_SIGN_UP_UPLOAD","会议提醒"),//审核弹窗
MSG6("DBTZ_ADD","打包提醒"),//查看该项目详情,projectName
MSG7("DBTZ_CONTRACT","打包提醒"),//查看项目详情,projectName
MSG8("HYTZ_ON_ACCESS_UPDATE","会议提醒"),//查看该参会人详情,meetingNameusername1username2
MSG9("QYTZ_CREATE","企业提醒");//企业列表页
private String code;
private String value;
private String detail;
ManagementMessageEnums(String code, String value, String detail){
ManagementMessageEnums(String code, String value){
this.code = code;
this.value = value;
this.detail = detail;
}
public String getCode() {
@@ -49,14 +46,6 @@ public enum ManagementMessageEnums {
this.value = value;
}
public String getDetail() {
return detail;
}
public void setDetail(String detail) {
this.detail = detail;
}
public static ManagementMessageEnums getByCode(String code) {
if (StringUtils.isBlank(code)) {
return null;
@@ -147,16 +147,6 @@ public class PayCompanyManagementController extends JeroController<PayCompanyMan
if(!StringUtils.isBlank(msg)){
return Result.error(msg.toString());
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
// 查看角色是否为财务人员
int dataSource = PayCompanyManagementCommon.DATA_SOURCE2;
int status = PayCompanyManagementCommon.STATUS2;
if(Objects.equals(sysUser.getRoleCode(),PayCompanyManagementCommon.ROLE_CODE)){
dataSource = PayCompanyManagementCommon.DATA_SOURCE1;
status = PayCompanyManagementCommon.STATUS1;
}
payCompanyManagement.setDataSource(dataSource);
payCompanyManagement.setStatus(status);
try {
// 新增企业前在次校验企业名称是否存在
LambdaQueryWrapper<PayCompanyManagement> queryWrapper = new LambdaQueryWrapper<>();
@@ -5,8 +5,12 @@ 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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.api.dto.message.BusTemplateMessageDTO;
import com.jero.common.enums.CompanyMessageEnums;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.api.ISysBaseAPI;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.PasswordUtil;
import com.jero.common.util.ValidUtil;
import com.jero.contract.common.PayIncomeContractCommon;
import com.jero.contract.entity.PayIncomeContract;
@@ -95,6 +99,8 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
private IPayMemberProjectSubitemService memberProjectSubitemService;
@Resource
private ITbMemberProjectSubitemService tbMemberProjectSubitemService;
@Autowired
private ISysBaseAPI sysBaseAPI;
@Override
public IPage<PayIncomeContract> queryPageList(Page<PayIncomeContract> page, PayIncomeContract payIncomeContract, String chargeStatus,String projectName, String startTime, String endTime) {
@@ -13,6 +13,7 @@ import com.jero.common.service.ProjectDetailService;
import com.jero.common.system.api.ISysBaseAPI;
import com.jero.common.system.base.controller.JeroController;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.PasswordUtil;
import com.jero.common.util.ValidUtil;
import com.jero.common.vo.ProjectDetailVO;
import com.jero.message.service.IPayAnnouncementMessageService;
@@ -159,30 +160,22 @@ public class PayWorkingGroupSubItemController extends JeroController<PayWorkingG
if(StringUtils.isBlank(listContactsEmail.get(0).getEmail())){
return;
}
String msg = "中汽数据中心提醒您,贵公司与中汽数据签订的" + payWorkingGroup.getWorkingGroupProject()
+ "项目款项仍未结余,请及时汇款,如已经汇款,请忽略此条通知。谢谢合作";
// sysBaseAPI.sendEmailMsg(PasswordUtil.decrypt(listContactsEmail.get(0).getEmail()), "", msg);
HashMap<String,String> map = new HashMap<>();
map.put("projectName",payWorkingGroup.getWorkingGroupProject());
// 发送邮件
sysBaseAPI.sendEmailTemplateMsg(PasswordUtil.decrypt(listContactsEmail.get(0).getEmail()), CompanyMessageEnums.MSG11.getValue(), CompanyMessageEnums.MSG11.getCode(),map);
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
// PayAnnouncementMessage payAnnouncementMessage = new PayAnnouncementMessage();
// payAnnouncementMessage.setTitile(MessageEnums.MSG14.getValue());
// payAnnouncementMessage.setMsgContent(msg);
// payAnnouncementMessage.setSender(sysUser.getId());
// payAnnouncementMessage.setRecipient(sysUser.getId());
// payAnnouncementMessage.setMsgCategory(MessageEnums.MSG14.getCode());
// payAnnouncementMessage.setOperation(MessageEnums.MSG14.getDetail());
// payAnnouncementMessage.setBusId(p.getId());
// payAnnouncementMessageService.sendMessage(payAnnouncementMessage);
BusTemplateMessageDTO busTemplateMessageDTO = new BusTemplateMessageDTO();
busTemplateMessageDTO.setTitle(CompanyMessageEnums.MSG11.getValue());
busTemplateMessageDTO.setFromUser(sysUser.getId());
busTemplateMessageDTO.setToUser(sysUser.getUsername());
busTemplateMessageDTO.setTemplateCode(CompanyMessageEnums.MSG11.getCode());
busTemplateMessageDTO.setTemplateParam(null);
busTemplateMessageDTO.setTemplateParam(map);
busTemplateMessageDTO.setBusType("email");
busTemplateMessageDTO.setBusId(p.getId());
// 发送消息
sysBaseAPI.sendBusTemplateAnnouncement(busTemplateMessageDTO);
});
// todo 缺少发送消息
return Result.OK("添加成功!");
}
@@ -144,4 +144,8 @@ public class SysAnnouncement implements Serializable {
* 摘要
*/
private java.lang.String msgAbstract;
/**
* 模板编码
*/
private String templateCode;
}
@@ -37,7 +37,8 @@
sa.bus_id as bus_id,
sa.open_type as open_type,
sa.open_page as open_page,
sa.msg_abstract
sa.msg_abstract,
sa.template_code
from sys_announcement_send sas
left join sys_announcement sa ON sas.annt_id = sa.id
where sa.send_status = '1'
@@ -77,4 +77,9 @@ public class AnnouncementSendModel implements Serializable {
*/
private java.lang.String msgAbstract;
/**
* 模板编码
*/
private java.lang.String templateCode;
}
@@ -13,6 +13,7 @@ import com.jero.common.util.HuaWeiSmsUtil;
import com.jero.modules.oss.mapper.OSSFileMapper;
import com.jero.modules.pay.company.entity.PayContactsManagement;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.shiro.SecurityUtils;
import com.jero.common.api.dto.OnlineAuthDTO;
@@ -430,6 +431,7 @@ public class SysBaseApiImpl implements ISysBaseAPI {
announcement.setBusType(busType);
announcement.setOpenType(SysAnnmentTypeEnum.getByType(busType).getOpenType());
announcement.setOpenPage(SysAnnmentTypeEnum.getByType(busType).getOpenPage());
announcement.setTemplateCode(templateCode);
sysAnnouncementMapper.insert(announcement);
// 2.插入用户通告阅读标记表记录
String userId = toUser;
@@ -1012,6 +1014,34 @@ public class SysBaseApiImpl implements ISysBaseAPI {
emailHandle.SendMsg(email, title, content);
}
@Override
public void sendEmailTemplateMsg(String email,String title,String templateCode,HashMap<String,String> map) {
if(StringUtils.isBlank(email)){
throw new JeroBootException("邮件接收人不能为空");
}
if(StringUtils.isBlank(templateCode)){
throw new JeroBootException("模板编码不能为空");
}
List<SysMessageTemplate> sysSmsTemplates = sysMessageTemplateService.selectByCode(templateCode);
if(CollectionUtils.isEmpty(sysSmsTemplates)){
throw new JeroBootException("消息模板不存在,模板编码:"+templateCode);
}
SysMessageTemplate sysSmsTemplate = sysSmsTemplates.get(0);
//模板标题
title = Objects.isNull(title) ? sysSmsTemplate.getTemplateName() : title;
//模板内容
String content = sysSmsTemplate.getTemplateContent();
if(!Objects.isNull(map)) {
for (Map.Entry<String, String> entry : map.entrySet()) {
String str = "${" + entry.getKey() + "}";
title = title.replace(str, entry.getValue());
content = content.replace(str, entry.getValue());
}
}
EmailSendMsgHandle emailHandle = new EmailSendMsgHandle();
emailHandle.SendMsg(email, title, content);
}
/**
* 发送邮件+ 附件消息
* @param email