diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/UserMessageTypeConstant.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/UserMessageTypeConstant.java index 38fce38af4..1de4d926f6 100644 --- a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/UserMessageTypeConstant.java +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/UserMessageTypeConstant.java @@ -72,4 +72,54 @@ public interface UserMessageTypeConstant { + + /** + * 关闭议题时,已解决或者无需解决,通知议题发起人、话题创建人 + * targetId:issue.id + */ + String ISSUE_CLOSE_ISSUE="issue_close_issue"; + + /** + * 议题转项目时给话题创建人、议题发起人、勾选的工作人员分别推送消息 + * targetId:居民端用户:issue.id工作端:project.id + */ + String ISSUE_SHIFT_PROJECT="issue_shift_project"; + + + /** + * 项目流转 + * targetId:project.id + */ + String PROJECT_TRANSFER="project_transfer"; + + /** + * 项目结案 + * targetId:project.id + */ + String PROJECT_CLOSED="project_closed"; + + /** + * 项目退回 + * targetId:project.id + */ + String PROJECT_RETURN="project_return"; + + /** + * 项目立项 + * targetId:project.id + */ + String PROJECT_APPROVAL="project_approval"; + + /** + * 事件立项 + * targetId:project.id + */ + String PROJECT_FROM_RESI_EVENT="project_from_resi_event"; + + + /** + * 发布党建声音 + * targetId:article.DRAFT_ID + */ + String PARTY_VOICE_PUBLISH="party_voice_publish"; } diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java index 1a131bb685..7ca7b0551c 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java @@ -24,6 +24,7 @@ import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.constant.IssueConstant; import com.epmet.constant.ReadFlagConstant; import com.epmet.constant.UserMessageConstant; +import com.epmet.constant.UserMessageTypeConstant; import com.epmet.dao.IssueDao; import com.epmet.dao.IssueProcessDao; import com.epmet.dao.IssueProjectRelationDao; @@ -755,6 +756,11 @@ public class IssueServiceImpl extends BaseServiceImpl imp msgDTO.setMessageContent(messageContent); msgDTO.setReadFlag(ReadFlagConstant.UN_READ); msgDTO.setUserId(topicDTO.getCreatedBy()); + + //21.09.10:记录消息类型和对应的业务id + msgDTO.setMessageType(UserMessageTypeConstant.ISSUE_CLOSE_ISSUE); + msgDTO.setTargetId(entity.getId()); + msgList.add(msgDTO); //话题人和议题人是同一个人时则只发送一条居民消息 if (!topicDTO.getCreatedBy().equals(entity.getCreatedBy())) { @@ -1067,11 +1073,21 @@ public class IssueServiceImpl extends BaseServiceImpl imp msgDTO.setMessageContent(topicIssueMessage); msgDTO.setReadFlag(ReadFlagConstant.UN_READ); msgDTO.setUserId(formDTO.getTopicDTO().getCreatedBy()); + + //21.09.10:记录消息类型和对应的业务id + msgDTO.setMessageType(UserMessageTypeConstant.ISSUE_SHIFT_PROJECT); + msgDTO.setTargetId(entity.getId()); + msgList.add(msgDTO); //话题人和议题人是同一个人时则只发送一条居民消息 if (!formDTO.getTopicDTO().getCreatedBy().equals(entity.getCreatedBy())) { UserMessageFormDTO msgIssue = ConvertUtils.sourceToTarget(msgDTO, UserMessageFormDTO.class); msgIssue.setUserId(entity.getCreatedBy()); + + //21.09.10:记录消息类型和对应的业务id + msgDTO.setMessageType(UserMessageTypeConstant.ISSUE_SHIFT_PROJECT); + msgDTO.setTargetId(entity.getId()); + msgList.add(msgIssue); } //2:创建项目工作人员消息对象 @@ -1088,6 +1104,11 @@ public class IssueServiceImpl extends BaseServiceImpl imp msg.setMessageContent(projectStaffMessage); msg.setReadFlag(ReadFlagConstant.UN_READ); msg.setUserId(staff.getStaffId()); + + //21.09.10:记录消息类型和对应的业务id + msgDTO.setMessageType(UserMessageTypeConstant.ISSUE_SHIFT_PROJECT); + msgDTO.setTargetId(issueProjectResultDTO.getProjectId()); + msgList.add(msg); map.put(staff.getStaffId(),staff.getStaffId()); } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectProcessServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectProcessServiceImpl.java index f73740fd69..b082fa1813 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectProcessServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectProcessServiceImpl.java @@ -36,13 +36,13 @@ import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.IpUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.ScanContentUtils; +import com.epmet.constant.*; import com.epmet.constant.ProjectConstant; import com.epmet.constant.ReadFlagConstant; import com.epmet.constant.SmsTemplateConstant; import com.epmet.constant.UserMessageConstant; import com.epmet.dao.ProjectDao; import com.epmet.dao.ProjectOrgRelationDao; -import com.epmet.dao.ProjectDao; import com.epmet.dao.ProjectProcessDao; import com.epmet.dao.ProjectStaffDao; import com.epmet.dto.CustomerStaffDTO; @@ -453,6 +453,11 @@ public class ProjectProcessServiceImpl extends BaseServiceImpl implements ProjectTraceS //4.推送站内信、微信、短信消息 //4-1.调用epmet-message服务,给工作端勾选的工作人员发送消息 - if (!shiftProjectMessage(formDTO).success()) { + if (!shiftProjectMessage(formDTO,projectEntity.getId()).success()) { throw new RenException("项目立项,推送站内信失败"); } @@ -565,7 +562,7 @@ public class ProjectTraceServiceImpl implements ProjectTraceS * @Description 项目立项给勾选的工作人员推送站内信消息 * @author sun */ - private Result shiftProjectMessage(ProjectApprovalFormDTO formDTO) { + private Result shiftProjectMessage(ProjectApprovalFormDTO formDTO,String projectId) { List msgList = new ArrayList<>(); //1.创建项目工作人员消息对象 String projectStaffMessage = String.format(UserMessageConstant.PROJECT_RESOLVED_MSG, formDTO.getTitle()); @@ -581,6 +578,11 @@ public class ProjectTraceServiceImpl implements ProjectTraceS msg.setMessageContent(projectStaffMessage); msg.setReadFlag(ReadFlagConstant.UN_READ); msg.setUserId(staff.getStaffId()); + + //21.09.10:记录消息类型和对应的业务id + msg.setMessageType(UserMessageTypeConstant.PROJECT_APPROVAL); + msg.setTargetId(projectId); + msgList.add(msg); map.put(staff.getStaffId(),staff.getStaffId()); } @@ -789,7 +791,7 @@ public class ProjectTraceServiceImpl implements ProjectTraceS //4.推送站内信、微信、短信消息 //4-1.调用epmet-message服务,给工作端勾选的工作人员发送消息 - if (!shiftProjectMessage(formDTO.getStaffList(),formDTO.getCustomerId(),formDTO.getTitle()).success()) { + if (!shiftProjectMessage(formDTO.getStaffList(),formDTO.getCustomerId(),formDTO.getTitle(),projectEntity.getId()).success()) { throw new RenException("事件转为项目,推送站内信失败"); } @@ -919,7 +921,7 @@ public class ProjectTraceServiceImpl implements ProjectTraceS * @Description 项目立项给勾选的工作人员推送站内信消息 * @author yinzuomei */ - private Result shiftProjectMessage(List staffList,String customerId,String title) { + private Result shiftProjectMessage(List staffList,String customerId,String title,String projectId) { List msgList = new ArrayList<>(); //1.创建项目工作人员消息对象 String projectStaffMessage = String.format(UserMessageConstant.PROJECT_RESOLVED_MSG, title); @@ -935,6 +937,11 @@ public class ProjectTraceServiceImpl implements ProjectTraceS msg.setMessageContent(projectStaffMessage); msg.setReadFlag(ReadFlagConstant.UN_READ); msg.setUserId(staff.getStaffId()); + + //21.09.10:记录消息类型和对应的业务id + msg.setTargetId(projectId); + msg.setMessageType(UserMessageTypeConstant.PROJECT_FROM_RESI_EVENT); + msgList.add(msg); map.put(staff.getStaffId(),staff.getStaffId()); } diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java index 62274c346b..1d95335423 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java @@ -976,7 +976,8 @@ public class ArticleServiceImpl extends BaseServiceImpl