From 5a263e0db9c87bca0566446b4eab22151e4d15f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= <18222067976@163.com> Date: Fri, 24 Sep 2021 17:39:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B6=88=E6=81=AF=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jero/common/util/SysAnnmentTypeEnum.java | 30 ++++- .../com/jero/common/common/RoleCommon.java | 4 + ...ctCreateProjectSendMessageServiceImpl.java | 7 +- .../service/impl/SendMessageServiceImpl.java | 104 ++++++++++-------- .../impl/PayIncomeContractServiceImpl.java | 29 ++++- .../controller/SysAnnouncementController.java | 11 ++ 6 files changed, 136 insertions(+), 49 deletions(-) diff --git a/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/util/SysAnnmentTypeEnum.java b/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/util/SysAnnmentTypeEnum.java index 93fc313f..eaf0ed9e 100644 --- a/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/util/SysAnnmentTypeEnum.java +++ b/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/util/SysAnnmentTypeEnum.java @@ -11,7 +11,35 @@ public enum SysAnnmentTypeEnum { /** * 工作流跳转链接我的办公 */ - BPM("bpm", "url", "/bpm/task/MyTaskList"); + BPM("bpm", "url", "/bpm/task/MyTaskList"), + + // 管理端 + M_OPEN_TYPE1("M_OPEN_TYPE1","component","@comp/ProjectDetailModal"), + M_OPEN_TYPE2("M_OPEN_TYPE2","url","/contractManagement/RevenueContractDetail"), + M_OPEN_TYPE3("M_OPEN_TYPE3","url","/contractManagement/RevenueContractDetail"), + M_OPEN_TYPE4("M_OPEN_TYPE4","url","/contractManagement/RevenueContractDetail"), + M_OPEN_TYPE5("M_OPEN_TYPE5","component","@views/incomePayments/meetManage/modules/AuditModal"), + M_OPEN_TYPE6("M_OPEN_TYPE6","component","@comp/ProjectDetailModal"), + M_OPEN_TYPE7("M_OPEN_TYPE7","component","@comp/ProjectDetailModal"), + M_OPEN_TYPE8("M_OPEN_TYPE8","url","/incomePayments/meetManage/SignUpInfoDetail"), + M_OPEN_TYPE9("M_OPEN_TYPE9","url","/businessManagement/BusinessManagement"), + // todo 待定企业端 + C_OPEN_TYPE1("C_OPEN_TYPE1","url",""), + C_OPEN_TYPE2("C_OPEN_TYPE2","component",""), + C_OPEN_TYPE3("C_OPEN_TYPE3","component",""), + C_OPEN_TYPE4("C_OPEN_TYPE4","component",""), + C_OPEN_TYPE5("C_OPEN_TYPE5","component",""), + C_OPEN_TYPE6("C_OPEN_TYPE6","component",""), + C_OPEN_TYPE7("C_OPEN_TYPE7","component",""), + C_OPEN_TYPE8("C_OPEN_TYPE8","none",""), + C_OPEN_TYPE9("C_OPEN_TYPE9","",""), + C_OPEN_TYPE10("C_OPEN_TYPE10","",""), + C_OPEN_TYPE11("C_OPEN_TYPE11","component",""), + C_OPEN_TYPE12("C_OPEN_TYPE12","component",""); + + + + /** * 业务类型(email:邮件 bpm:流程) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/common/RoleCommon.java b/jero-boot-incoming-payment/src/main/java/com/jero/common/common/RoleCommon.java index e7ae0c82..6faffdc9 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/common/common/RoleCommon.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/common/RoleCommon.java @@ -6,4 +6,8 @@ public class RoleCommon { * 项目负责人 */ public final static String XMFZR = "xmfzr"; + /** + * 财务人员 + */ + public final static String CWRY = "cwry"; } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/ContractCreateProjectSendMessageServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/ContractCreateProjectSendMessageServiceImpl.java index d6f4b109..b9501319 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/ContractCreateProjectSendMessageServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/ContractCreateProjectSendMessageServiceImpl.java @@ -1,5 +1,6 @@ package com.jero.common.service.impl; +import com.alibaba.fastjson.JSONObject; import com.jero.common.common.RoleCommon; import com.jero.common.dto.SendMessageDTO; import com.jero.common.enums.CompanyMessageEnums; @@ -46,8 +47,10 @@ public class ContractCreateProjectSendMessageServiceImpl implements ContractCrea sendMessageDTO.setToUser(p.getUsername()); sendMessageDTO.setTemplateCode(ManagementMessageEnums.MSG1.getCode()); sendMessageDTO.setTemplateParam(map); - sendMessageDTO.setBusType("email"); - sendMessageDTO.setBusId(p.getId()); + sendMessageDTO.setBusType("M_OPEN_TYPE1"); + JSONObject json = new JSONObject(); + json.put("id",p.getId()); + sendMessageDTO.setBusId(json.toJSONString()); sendMessageService.SendMessageService(sendMessageDTO); }); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/SendMessageServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/SendMessageServiceImpl.java index cf047d1e..ca083468 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/SendMessageServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/SendMessageServiceImpl.java @@ -20,6 +20,7 @@ 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 lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -28,6 +29,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.*; +@Slf4j @Service public class SendMessageServiceImpl implements SendMessageService { @Autowired @@ -82,59 +84,73 @@ public class SendMessageServiceImpl implements SendMessageService { // 1短信 2邮件 3系统 // 发送邮件 true if(templateType.contains(ProjectCommon.MESSAGE_TYPE2) && !StringUtils.isEmpty(sendMessageDTO.getEmail())){ - EmailSendMsgHandle emailHandle = new EmailSendMsgHandle(); - emailHandle.SendMsg(sendMessageDTO.getEmail(), title, content); + try { + EmailSendMsgHandle emailHandle = new EmailSendMsgHandle(); + emailHandle.SendMsg(sendMessageDTO.getEmail(), title, content); + }catch (Exception e){ + log.error("发送邮件异常",e); + } } // 发送消息 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(); + try { + String fromUser = sendMessageDTO.getFromUser(); + String toUser = sendMessageDTO.getToUser(); + String busId = sendMessageDTO.getBusId(); + String busType = sendMessageDTO.getBusType(); - SysAnnouncement announcement = new SysAnnouncement(); - announcement.setTitile(sysSmsTemplate.getTemplateName()); - 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 queryPageList(Page page, PayIncomeContract payIncomeContract, String chargeStatus,String projectName, String startTime, String endTime) { @@ -664,6 +668,27 @@ public class PayIncomeContractServiceImpl extends ServiceImpl list = sysUserService.getRolesUser(Arrays.asList(RoleCommon.CWRY)); + if(!CollectionUtils.isEmpty(list)){ + list.forEach(p->{ + // 发送消息 + SendMessageDTO sendMessageDTO = new SendMessageDTO(); + if(!StringUtils.isBlank(p.getEmail())){ + sendMessageDTO.setEmail(PasswordUtil.decrypt(p.getEmail())); + } + HashMap map = new HashMap<>(); + map.put("contractNum",payIncomeContractNew.getContractNum()); + map.put("contractName",payIncomeContractNew.getContractName()); + sendMessageDTO.setFromUser(sysUser.getId()); + sendMessageDTO.setToUser(p.getUsername()); + sendMessageDTO.setTemplateCode(ManagementMessageEnums.MSG2.getCode()); + sendMessageDTO.setTemplateParam(map); + sendMessageDTO.setBusType("email"); + sendMessageDTO.setBusId(p.getId()); + sendMessageService.SendMessageService(sendMessageDTO); + }); + } } /** diff --git a/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysAnnouncementController.java b/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysAnnouncementController.java index 95437811..5dc43ad7 100644 --- a/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysAnnouncementController.java +++ b/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysAnnouncementController.java @@ -11,6 +11,8 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import com.jero.common.system.api.ISysBaseAPI; +import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; import org.apache.shiro.SecurityUtils; import com.jero.common.api.vo.Result; @@ -67,6 +69,8 @@ public class SysAnnouncementController { private ISysAnnouncementSendService sysAnnouncementSendService; @Resource private WebSocket webSocket; + @Autowired + private ISysBaseAPI sysBaseAPI; /** * 分页列表查询 @@ -313,6 +317,13 @@ public class SysAnnouncementController { anntMsgList = sysAnnouncementService.querySysCementPageByUserId(anntMsgList,userId,"1");//通知公告消息 Page sysMsgList = new Page(0,5); sysMsgList = sysAnnouncementService.querySysCementPageByUserId(sysMsgList,userId,"2");//系统消息 + if(!CollectionUtils.isEmpty(sysMsgList.getRecords())){ + List list = sysMsgList.getRecords(); + list.forEach(p->{ + p.setTitile(sysBaseAPI.translateDict("notice_type",p.getTitile())); + }); + sysMsgList.setRecords(list); + } Map sysMsgMap = new HashMap(); sysMsgMap.put("sysMsgList", sysMsgList.getRecords()); sysMsgMap.put("sysMsgTotal", sysMsgList.getTotal());