Browse Source

Merge remote-tracking branch 'origin/dev_wx_msg' into dev_wx_msg

dev_shibei_match
wxz 5 years ago
parent
commit
7712ea4e7a
  1. 98
      epmet-module/epmet-message/epmet-message-server/src/main/resources/db/migration/V0.3.12.2__wxmp_message_template.sql
  2. 4
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/constant/UserMessageConstant.java
  3. 17
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/service/impl/GroupInvitationServiceImpl.java
  4. 5
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java
  5. 4
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/constant/PartyMemberMessageConstant.java
  6. 4
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/constant/ResiWarmUserMessageConstant.java

98
epmet-module/epmet-message/epmet-message-server/src/main/resources/db/migration/V0.3.12.2__wxmp_message_template.sql

@ -0,0 +1,98 @@
CREATE TABLE `wxmp_template_msg_subscribe_status` (
`ID` varchar(64) NOT NULL COMMENT '主键',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id ',
`CLIENT_TYPE` varchar(64) NOT NULL COMMENT '所属端类型 居民端:resi 工作端:gov',
`USER_ID` varchar(64) NOT NULL COMMENT '用户Id ',
`TEMPLATE_ID` varchar(64) DEFAULT NULL COMMENT '模板id',
`ALWAYS_VISIT` varchar(32) DEFAULT NULL COMMENT '是否总是访问 是:yes 否:no',
`SUBSCRIBE_STATUS` varchar(32) DEFAULT NULL COMMENT '订阅状态(订阅:subscribe 取消订阅:unsubscribe)',
`WX_ALWAYS_VISIT` varchar(32) DEFAULT NULL COMMENT 'wx是否总是访问 是:yes 否:no',
`WX_SUBSCRIBE_STATUS` varchar(32) DEFAULT NULL COMMENT 'wx订阅状态 (订阅:subscribe 取消订阅:unsubscribe)',
`DEL_FLAG` int(11) NOT NULL COMMENT '删除标识',
`REVISION` int(11) NOT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户模板消息订阅授权状态表(记录我们自己和微信的授权页用户勾选的状态)';
CREATE TABLE `wxmp_user_subscribe_record` (
`ID` varchar(64) NOT NULL COMMENT '主键',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id ',
`TEMPLATE_ID` varchar(64) NOT NULL COMMENT '消息模板Id ',
`USER_ID` varchar(64) NOT NULL COMMENT '用户Id ',
`WX_OPEN_ID` varchar(64) NOT NULL COMMENT 'openId ',
`BEHAVIOR_TYPE` varchar(128) DEFAULT NULL COMMENT '行为类型 (入组申请、党员认证)等',
`WX_ALWAYS_VISIT` varchar(32) DEFAULT NULL COMMENT 'wx是否总是访问 是:yes 否:no',
`WX_SUBSCRIBE_STATUS` varchar(32) DEFAULT NULL COMMENT 'wx订阅状态(订阅:subscribe 取消订阅:unsubscribe)',
`DEL_FLAG` int(11) NOT NULL COMMENT '删除标识',
`REVISION` int(11) NOT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户触发订阅的行为记录表(同时记录微信授权页每次勾选的状态)';
CREATE TABLE `wxmp_resi_user_subscribe` (
`ID` varchar(64) NOT NULL COMMENT '主键',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id ',
`TEMPLATE_ID` varchar(64) NOT NULL COMMENT '消息模板Id',
`USER_ID` varchar(64) NOT NULL COMMENT '用户Id',
`WX_OPEN_ID` varchar(64) NOT NULL COMMENT 'openId ',
`WX_SUBSCRIBE_STATUS` varchar(32) DEFAULT NULL COMMENT 'wx订阅状态,只记录用户最后一次操作的勾选状态 (订阅:subscribe 取消订阅:unsubscribe)',
`COUNT` int(11) DEFAULT NULL COMMENT '可用推送次数',
`DEL_FLAG` int(11) NOT NULL COMMENT '删除标识',
`REVISION` int(11) NOT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='居民端用户订阅模板消息次数记录表';
CREATE TABLE `wxmp_work_user_subscribe` (
`ID` varchar(64) NOT NULL COMMENT '主键',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id ',
`TEMPLATE_ID` varchar(64) NOT NULL COMMENT '消息模板Id ',
`USER_ID` varchar(64) NOT NULL COMMENT '用户Id ',
`WX_OPEN_ID` varchar(64) NOT NULL COMMENT 'openId ',
`WX_SUBSCRIBE_STATUS` varchar(32) DEFAULT NULL COMMENT 'wx订阅状态,只记录用户最后一次操作的勾选状态 (订阅:subscribe 取消订阅:unsubscribe)',
`COUNT` int(11) DEFAULT NULL COMMENT '可用推送次数 ',
`DEL_FLAG` int(11) NOT NULL COMMENT '删除标识',
`REVISION` int(11) NOT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='工作端用户订阅模板消息有效次数记录表 ';
CREATE TABLE `wxmp_msg_send_record` (
`ID` varchar(64) NOT NULL COMMENT '主键',
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id ',
`GRID_ID` varchar(64) NOT NULL COMMENT '网格Id (居民端跟网格有关的则有值,工作端以及一些居民端和网格没关的存*)',
`CLIENT_TYPE` varchar(64) NOT NULL COMMENT '所属端类型 居民端:resi 工作端:gov',
`TEMPLATE_ID` varchar(64) NOT NULL COMMENT '消息模板Id ',
`USER_ID` varchar(64) NOT NULL COMMENT '用户Id',
`WX_OPEN_ID` varchar(64) NOT NULL COMMENT 'openId ',
`BEHAVIOR_TYPE` varchar(128) NOT NULL COMMENT '行为类型(存title字段的中间值) 入组申请、党员认证等',
`TITLE` varchar(128) NOT NULL COMMENT '消息标题 ',
`MESSAGE_CONTENT` varchar(1024) NOT NULL COMMENT '消息内容 ',
`MESSAGE_TIME` datetime NOT NULL COMMENT '消息时间 ',
`RESULT` varchar(32) NOT NULL COMMENT '发送结果(成功:success 失败:error)',
`REASON` varchar(1024) DEFAULT NULL COMMENT '发送失败的原因,成功可以不记录',
`DEL_FLAG` int(11) NOT NULL COMMENT '删除标识',
`REVISION` int(11) NOT NULL COMMENT '乐观锁',
`CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
`UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='消息发送记录表';

4
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/constant/UserMessageConstant.java

@ -37,12 +37,12 @@ public interface UserMessageConstant {
/**
* 建组审核驳回时消息模板
* */
String DISAGREE_CREATING_GROUP_MSG_TEMPLATE = "您好,您申请的%s,已被驳回,原因:%s。";
String DISAGREE_CREATING_GROUP_MSG_TEMPLATE = "您申请的%s,已被驳回,原因:%s。";
/**
* 建组审核同意时消息模板
* */
String AGREE_CREATING_GROUP_MSG_TEMPLATE = "您好,您申请的%s,已审核通过。";
String AGREE_CREATING_GROUP_MSG_TEMPLATE = "您申请的%s,已审核通过。";
/**
* 审核建组申请消息名称

17
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/invitation/service/impl/GroupInvitationServiceImpl.java

@ -28,10 +28,7 @@ import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.ReadFlagConstant;
import com.epmet.dto.form.UserEnterGridFormDTO;
import com.epmet.dto.form.UserInvitationFormDTO;
import com.epmet.dto.form.UserMessageFormDTO;
import com.epmet.dto.form.UserResiInfoFormDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.UserInfoOnEnterGridResultDTO;
import com.epmet.dto.result.UserResiInfoResultDTO;
import com.epmet.feign.EpmetMessageOpenFeignClient;
@ -438,6 +435,18 @@ public class GroupInvitationServiceImpl extends BaseServiceImpl<GroupInvitationD
//通知群主
userMessage.setUserId(groupInvitationDTO.getInviterUserId());
Result result = epmetMessageOpenFeignClient.saveUserMessage(userMessage);
//发送微信订阅消息
WxSubscribeMessageFormDTO wxSubscribeMessageFormDTO = new WxSubscribeMessageFormDTO();
wxSubscribeMessageFormDTO.setCustomerId(resiGroupDTO.getCustomerId());
wxSubscribeMessageFormDTO.setUserId(groupInvitationDTO.getInviterUserId());
wxSubscribeMessageFormDTO.setClientType(AppClientConstant.APP_RESI);
wxSubscribeMessageFormDTO.setGridId(resiGroupDTO.getGridId());
wxSubscribeMessageFormDTO.setBehaviorType(UserMessageConstant.WX_APPLY_JOIN_GROUP_BEHAVIOR);
wxSubscribeMessageFormDTO.setMessageContent(messageContent);
wxSubscribeMessageFormDTO.setMessageTime(new Date());
List<WxSubscribeMessageFormDTO> msgList = new ArrayList<>();
msgList.add(wxSubscribeMessageFormDTO);
epmetMessageOpenFeignClient.sendWxSubscribeMessage(msgList);
if (result.success()) {
logger.info("通知群主有新成员入群成功");
} else {

5
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java

@ -277,7 +277,7 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl<ResiGroupMemberD
subscribeDTO.setClientType(ModuleConstant.APP_RESI);
subscribeDTO.setGridId(resiGroupDTO.getGridId());
subscribeDTO.setCustomerId(resiGroupDTO.getCustomerId());
subscribeDTO.setUserId(currentUserId);
subscribeDTO.setUserId(groupLeader.getCustomerUserId());
subscribeDTO.setBehaviorType(UserMessageConstant.WX_APPLY_JOIN_GROUP_BEHAVIOR);
subscribeDTO.setMessageContent(messageContent);
subscribeDTO.setMessageTime(new Date());
@ -468,7 +468,7 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl<ResiGroupMemberD
epmetMessageOpenFeignClient.saveUserMessage(userMessage);
//2 给用户发送微信订阅
WxSubscribeMessageFormDTO wxSubscribeMessageFormDTO = new WxSubscribeMessageFormDTO();
wxSubscribeMessageFormDTO.setCustomerId(resiGroupMemberDTO.getCustomerId());
wxSubscribeMessageFormDTO.setCustomerId(resiGroupDTO.getCustomerId());
wxSubscribeMessageFormDTO.setUserId(resiGroupMemberDTO.getCustomerUserId());
wxSubscribeMessageFormDTO.setClientType(AppClientConstant.APP_RESI);
wxSubscribeMessageFormDTO.setGridId(resiGroupDTO.getGridId());
@ -550,6 +550,7 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl<ResiGroupMemberD
wxSubscribeMessageFormDTO.setClientType(AppClientConstant.APP_RESI);
wxSubscribeMessageFormDTO.setGridId(resiGroupDTO.getGridId());
wxSubscribeMessageFormDTO.setBehaviorType(UserMessageConstant.WX_APPLY_JOIN_GROUP_BEHAVIOR);
wxSubscribeMessageFormDTO.setMessageTime(new Date());
wxSubscribeMessageFormDTO.setMessageContent(messageContent);
List<WxSubscribeMessageFormDTO> msgList = new ArrayList<>();
msgList.add(wxSubscribeMessageFormDTO);

4
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/constant/PartyMemberMessageConstant.java

@ -19,12 +19,12 @@ public interface PartyMemberMessageConstant {
/**
* 党员申请审核通过给申请人发送消息您好您申请的党员已审核通过请查看
*/
String AUDIT_APPROVE_MSG = "您好,您申请的%s党员已审核通过,请查看。";
String AUDIT_APPROVE_MSG = "您申请的%s党员已审核通过,请查看。";
/**
* 党员申请审核驳回给申请人发送消息您好您申请的党员由于不符合条件的原因已被驳回
*/
String AUDIT_REJECT_MSG = "您好,您申请的%s党员,由于不符合条件的原因,已被驳回。";
String AUDIT_REJECT_MSG = "您申请的%s党员,由于不符合条件的原因,已被驳回。";
/**
* 党员申请behavior

4
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/constant/ResiWarmUserMessageConstant.java

@ -19,12 +19,12 @@ public interface ResiWarmUserMessageConstant {
/**
* 热心居民申请审核通过给申请人发送消息您好您申请的第三网格热心居民已审核通过请查看
*/
String AUDIT_APPROVE_MSG = "您好,您申请的%s热心居民已审核通过,请查看。";
String AUDIT_APPROVE_MSG = "您申请的%s热心居民已审核通过,请查看。";
/**
* 热心居民申请审核驳回给申请人发送消息您好您申请的第三网格热心居民已被驳回原因不符合要求
*/
String AUDIT_REJECT_MSG = "您好,您申请的%s热心居民,已被驳回,原因:%s";
String AUDIT_REJECT_MSG = "您申请的%s热心居民,已被驳回,原因:%s";
/**
* 热心居民申请-微信订阅behavior

Loading…
Cancel
Save