30 changed files with 756 additions and 46 deletions
@ -0,0 +1,21 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<project xmlns="http://maven.apache.org/POM/4.0.0" |
|||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
|||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
|||
<parent> |
|||
<artifactId>epmet-commons</artifactId> |
|||
<groupId>com.epmet</groupId> |
|||
<version>2.0.0</version> |
|||
</parent> |
|||
<modelVersion>4.0.0</modelVersion> |
|||
|
|||
<artifactId>epmet-commons-rocketmq</artifactId> |
|||
|
|||
<dependencies> |
|||
<dependency> |
|||
<groupId>org.apache.rocketmq</groupId> |
|||
<artifactId>rocketmq-spring-boot-starter</artifactId> |
|||
<version>2.1.1</version> |
|||
</dependency> |
|||
</dependencies> |
|||
</project> |
@ -0,0 +1,21 @@ |
|||
package com.epmet.commons.rocketmq.constants; |
|||
|
|||
/** |
|||
* 消费者组常量 |
|||
*/ |
|||
public interface ConsomerGroupConstants { |
|||
|
|||
/** |
|||
* 初始化客户角色消费者组 |
|||
*/ |
|||
String INIT_CUSTOMER_ROLES_GROUP = "init_customer_roles_group"; |
|||
/** |
|||
* 初始化客户自定义消费者组 |
|||
*/ |
|||
String INIT_CUSTOMER_CUSTOMIZE_GROUP = "init_customer_customize_group"; |
|||
/** |
|||
* 初始化客户组织机构信息分组 |
|||
*/ |
|||
String INIT_CUSTOMER_ORG_GROUP = "init_customer_org_group"; |
|||
|
|||
} |
@ -0,0 +1,5 @@ |
|||
package com.epmet.commons.rocketmq.constants; |
|||
|
|||
public interface TopicConstants { |
|||
String INIT_CUSTOMER = "init_customer_topic"; |
|||
} |
@ -0,0 +1,148 @@ |
|||
package com.epmet.commons.rocketmq.messages; |
|||
|
|||
public class InitCustomerMQMsg { |
|||
|
|||
private String customerId; |
|||
|
|||
private InitCustomerAgency agency; |
|||
|
|||
private InitCustomerStaff staff; |
|||
|
|||
public static class InitCustomerStaff { |
|||
private String agencyId; |
|||
private Integer gender; |
|||
private String mobile; |
|||
private String name; |
|||
private String workType; |
|||
|
|||
public String getAgencyId() { |
|||
return agencyId; |
|||
} |
|||
|
|||
public void setAgencyId(String agencyId) { |
|||
this.agencyId = agencyId; |
|||
} |
|||
|
|||
public Integer getGender() { |
|||
return gender; |
|||
} |
|||
|
|||
public void setGender(Integer gender) { |
|||
this.gender = gender; |
|||
} |
|||
|
|||
public String getMobile() { |
|||
return mobile; |
|||
} |
|||
|
|||
public void setMobile(String mobile) { |
|||
this.mobile = mobile; |
|||
} |
|||
|
|||
public String getName() { |
|||
return name; |
|||
} |
|||
|
|||
public void setName(String name) { |
|||
this.name = name; |
|||
} |
|||
|
|||
public String getWorkType() { |
|||
return workType; |
|||
} |
|||
|
|||
public void setWorkType(String workType) { |
|||
this.workType = workType; |
|||
} |
|||
} |
|||
|
|||
public static class InitCustomerAgency { |
|||
private String agencyId; |
|||
private String organizationName; |
|||
private String level; |
|||
private String areaCode; |
|||
private String province; |
|||
private String city; |
|||
private String district; |
|||
|
|||
public String getAgencyId() { |
|||
return agencyId; |
|||
} |
|||
|
|||
public void setAgencyId(String agencyId) { |
|||
this.agencyId = agencyId; |
|||
} |
|||
|
|||
public String getOrganizationName() { |
|||
return organizationName; |
|||
} |
|||
|
|||
public void setOrganizationName(String organizationName) { |
|||
this.organizationName = organizationName; |
|||
} |
|||
|
|||
public String getLevel() { |
|||
return level; |
|||
} |
|||
|
|||
public void setLevel(String level) { |
|||
this.level = level; |
|||
} |
|||
|
|||
public String getAreaCode() { |
|||
return areaCode; |
|||
} |
|||
|
|||
public void setAreaCode(String areaCode) { |
|||
this.areaCode = areaCode; |
|||
} |
|||
|
|||
public String getProvince() { |
|||
return province; |
|||
} |
|||
|
|||
public void setProvince(String province) { |
|||
this.province = province; |
|||
} |
|||
|
|||
public String getCity() { |
|||
return city; |
|||
} |
|||
|
|||
public void setCity(String city) { |
|||
this.city = city; |
|||
} |
|||
|
|||
public String getDistrict() { |
|||
return district; |
|||
} |
|||
|
|||
public void setDistrict(String district) { |
|||
this.district = district; |
|||
} |
|||
} |
|||
|
|||
public String getCustomerId() { |
|||
return customerId; |
|||
} |
|||
|
|||
public void setCustomerId(String customerId) { |
|||
this.customerId = customerId; |
|||
} |
|||
|
|||
public InitCustomerAgency getAgency() { |
|||
return agency; |
|||
} |
|||
|
|||
public void setAgency(InitCustomerAgency agency) { |
|||
this.agency = agency; |
|||
} |
|||
|
|||
public InitCustomerStaff getStaff() { |
|||
return staff; |
|||
} |
|||
|
|||
public void setStaff(InitCustomerStaff staff) { |
|||
this.staff = staff; |
|||
} |
|||
} |
@ -0,0 +1,7 @@ |
|||
package com.epmet.constant; |
|||
|
|||
public interface SystemMessageSendApproach { |
|||
|
|||
String MQ = "mq"; |
|||
|
|||
} |
@ -0,0 +1,13 @@ |
|||
package com.epmet.constant; |
|||
|
|||
/** |
|||
* 系统消息类型 |
|||
*/ |
|||
public interface SystemMessageType { |
|||
|
|||
/** |
|||
* 初始化客户 |
|||
*/ |
|||
String INIT_CUSTOMER = "init_customer"; |
|||
|
|||
} |
@ -0,0 +1,15 @@ |
|||
package com.epmet.dto.form; |
|||
|
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotNull; |
|||
|
|||
@Data |
|||
public class SystemMsgFormDTO { |
|||
|
|||
@NotNull(message = "消息类型不能为空") |
|||
private String messageType; |
|||
|
|||
@NotNull(message = "消息内容不能为空") |
|||
private Object content; |
|||
} |
@ -0,0 +1,27 @@ |
|||
package com.epmet.controller; |
|||
|
|||
import com.epmet.commons.tools.utils.Result; |
|||
import com.epmet.commons.tools.validator.ValidatorUtils; |
|||
import com.epmet.dto.form.SystemMsgFormDTO; |
|||
import com.epmet.service.SystemMessageService; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.PostMapping; |
|||
import org.springframework.web.bind.annotation.RequestBody; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
@RestController |
|||
@RequestMapping("system") |
|||
public class SystemMessageController { |
|||
|
|||
@Autowired |
|||
private SystemMessageService systemMessageService; |
|||
|
|||
@PostMapping("send-by-mq") |
|||
public Result sendSystemMsgByMQ(@RequestBody SystemMsgFormDTO form) { |
|||
ValidatorUtils.validateEntity(form); |
|||
systemMessageService.sendMQMessage(form.getMessageType(), form.getContent()); |
|||
return new Result(); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,33 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.dao; |
|||
|
|||
import com.epmet.commons.mybatis.dao.BaseDao; |
|||
import com.epmet.entity.SystemMessageEntity; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
|
|||
/** |
|||
* 系统消息表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-01-06 |
|||
*/ |
|||
@Mapper |
|||
public interface SystemMessageDao extends BaseDao<SystemMessageEntity> { |
|||
|
|||
} |
@ -0,0 +1,57 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.entity; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
|
|||
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import org.omg.CORBA.StringHolder; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* 系统消息表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-01-06 |
|||
*/ |
|||
@Data |
|||
@EqualsAndHashCode(callSuper=false) |
|||
@TableName("system_message") |
|||
public class SystemMessageEntity extends BaseEpmetEntity { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 消息类型 |
|||
*/ |
|||
private String msgType; |
|||
|
|||
/** |
|||
* 发送途径 |
|||
*/ |
|||
private String sendApproach; |
|||
|
|||
/** |
|||
* 消息内容 |
|||
*/ |
|||
private String content; |
|||
|
|||
} |
@ -0,0 +1,7 @@ |
|||
package com.epmet.service; |
|||
|
|||
public interface SystemMessageService { |
|||
|
|||
void sendMQMessage(String messageType, Object content); |
|||
|
|||
} |
@ -0,0 +1,70 @@ |
|||
package com.epmet.service.impl; |
|||
|
|||
import com.alibaba.fastjson.JSON; |
|||
import com.epmet.commons.rocketmq.constants.TopicConstants; |
|||
import com.epmet.commons.tools.exception.EpmetErrorCode; |
|||
import com.epmet.commons.tools.exception.ExceptionUtils; |
|||
import com.epmet.commons.tools.exception.RenException; |
|||
import com.epmet.constant.SystemMessageSendApproach; |
|||
import com.epmet.constant.SystemMessageType; |
|||
import com.epmet.dao.SystemMessageDao; |
|||
import com.epmet.entity.SystemMessageEntity; |
|||
import com.epmet.service.SystemMessageService; |
|||
import org.apache.rocketmq.common.message.Message; |
|||
import org.apache.rocketmq.remoting.common.RemotingHelper; |
|||
import org.apache.rocketmq.spring.core.RocketMQTemplate; |
|||
import org.slf4j.Logger; |
|||
import org.slf4j.LoggerFactory; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
@Service |
|||
public class SystemMessageServiceImpl implements SystemMessageService { |
|||
|
|||
private Logger logger = LoggerFactory.getLogger(getClass()); |
|||
|
|||
@Autowired |
|||
private SystemMessageDao systemMessageDao; |
|||
|
|||
@Autowired |
|||
private RocketMQTemplate rocketMQTemplate; |
|||
|
|||
@Transactional(rollbackFor = Exception.class) |
|||
@Override |
|||
public void sendMQMessage(String messageType, Object content) { |
|||
String contentStr = JSON.toJSONString(content); |
|||
//存储消息到表
|
|||
SystemMessageEntity systemMessageEntity = new SystemMessageEntity(); |
|||
systemMessageEntity.setMsgType(messageType); |
|||
systemMessageEntity.setSendApproach(SystemMessageSendApproach.MQ); |
|||
systemMessageEntity.setContent(contentStr); |
|||
systemMessageDao.insert(systemMessageEntity); |
|||
|
|||
//发送mq消息
|
|||
try { |
|||
Message meMessage = new Message(getTopicByMsgType(messageType), contentStr.getBytes(RemotingHelper.DEFAULT_CHARSET)); |
|||
rocketMQTemplate.getProducer().send(meMessage); |
|||
} catch (Exception e) { |
|||
String errorStackTrace = ExceptionUtils.getErrorStackTrace(e); |
|||
logger.error("发送系统消息失败,堆栈信息:{}", errorStackTrace); |
|||
throw new RenException(EpmetErrorCode.SYSTEM_MQ_MSG_SEND_FAIL.getCode()); |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* @Description 根据消息类型获取topic |
|||
* @return |
|||
* @author wxz |
|||
* @date 2021.01.06 13:42 |
|||
*/ |
|||
private String getTopicByMsgType(String msgType) { |
|||
String topic = null; |
|||
switch (msgType) { |
|||
case SystemMessageType.INIT_CUSTOMER: |
|||
topic = TopicConstants.INIT_CUSTOMER; |
|||
break; |
|||
} |
|||
return topic; |
|||
} |
|||
} |
@ -0,0 +1,18 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
|
|||
<mapper namespace="com.epmet.dao.SystemMessageDao"> |
|||
|
|||
<resultMap type="com.epmet.entity.SystemMessageEntity" id="systemMessageMap"> |
|||
<result property="id" column="ID"/> |
|||
<result property="content" column="CONTENT"/> |
|||
<result property="delFlag" column="DEL_FLAG"/> |
|||
<result property="revision" column="REVISION"/> |
|||
<result property="createdBy" column="CREATED_BY"/> |
|||
<result property="createdTime" column="CREATED_TIME"/> |
|||
<result property="updatedBy" column="UPDATED_BY"/> |
|||
<result property="updatedTime" column="UPDATED_TIME"/> |
|||
</resultMap> |
|||
|
|||
|
|||
</mapper> |
@ -0,0 +1,76 @@ |
|||
package com.epmet.mq.listener; |
|||
|
|||
import com.alibaba.fastjson.JSON; |
|||
import com.epmet.commons.rocketmq.constants.ConsomerGroupConstants; |
|||
import com.epmet.commons.rocketmq.constants.TopicConstants; |
|||
import com.epmet.commons.rocketmq.messages.InitCustomerMQMsg; |
|||
import com.epmet.constant.UserWorkType; |
|||
import com.epmet.dto.CustomerAgencyDTO; |
|||
import com.epmet.dto.form.AddAgencyAndStaffFormDTO; |
|||
import com.epmet.dto.form.AdminStaffFromDTO; |
|||
import com.epmet.service.AgencyService; |
|||
import org.apache.rocketmq.common.message.MessageExt; |
|||
import org.apache.rocketmq.spring.annotation.MessageModel; |
|||
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; |
|||
import org.apache.rocketmq.spring.core.RocketMQListener; |
|||
import org.slf4j.Logger; |
|||
import org.slf4j.LoggerFactory; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Component; |
|||
|
|||
/** |
|||
* 监听初始化客户动作,为客户初始化角色列表 |
|||
*/ |
|||
@RocketMQMessageListener(topic = TopicConstants.INIT_CUSTOMER, |
|||
consumerGroup = ConsomerGroupConstants.INIT_CUSTOMER_ORG_GROUP, |
|||
messageModel = MessageModel.CLUSTERING, |
|||
selectorExpression = "*") |
|||
@Component |
|||
public class InitCustomerOrgListener implements RocketMQListener<MessageExt> { |
|||
|
|||
private Logger logger = LoggerFactory.getLogger(getClass()); |
|||
|
|||
@Autowired |
|||
private AgencyService agencyService; |
|||
|
|||
@Override |
|||
public void onMessage(MessageExt messageExt) { |
|||
String msg = new String(messageExt.getBody()); |
|||
logger.info("初始化客户-初始化组织信息-收到消息内容:{}", msg); |
|||
InitCustomerMQMsg msgObj = JSON.parseObject(msg, InitCustomerMQMsg.class); |
|||
agencyService.saveRootAgency(constructRootAndAgencyDTO(msgObj)); |
|||
} |
|||
|
|||
/** |
|||
* @Description 构造dto |
|||
* @return |
|||
* @author wxz |
|||
* @date 2021.01.06 15:03 |
|||
*/ |
|||
private AddAgencyAndStaffFormDTO constructRootAndAgencyDTO(InitCustomerMQMsg msgObj) { |
|||
AddAgencyAndStaffFormDTO agencyAndStaff = new AddAgencyAndStaffFormDTO(); |
|||
//客户组织信息
|
|||
CustomerAgencyDTO agencyDTO = new CustomerAgencyDTO(); |
|||
agencyDTO.setId(msgObj.getAgency().getAgencyId()); |
|||
agencyDTO.setCustomerId(msgObj.getCustomerId()); |
|||
agencyDTO.setOrganizationName(msgObj.getAgency().getOrganizationName()); |
|||
agencyDTO.setLevel(msgObj.getAgency().getLevel()); |
|||
agencyDTO.setAreaCode(msgObj.getAgency().getAreaCode()); |
|||
agencyDTO.setProvince(msgObj.getAgency().getProvince()); |
|||
agencyDTO.setCity(msgObj.getAgency().getCity()); |
|||
agencyDTO.setDistrict(msgObj.getAgency().getDistrict()); |
|||
agencyAndStaff.setAgencyDTO(agencyDTO); |
|||
|
|||
//客户管理员信息
|
|||
AdminStaffFromDTO staffSubmitFrom = new AdminStaffFromDTO(); |
|||
staffSubmitFrom.setCustomerId(msgObj.getCustomerId()); |
|||
staffSubmitFrom.setAgencyId(msgObj.getStaff().getAgencyId()); |
|||
staffSubmitFrom.setGender(msgObj.getStaff().getGender()); |
|||
staffSubmitFrom.setMobile(msgObj.getStaff().getMobile()); |
|||
staffSubmitFrom.setName(msgObj.getStaff().getName()); |
|||
staffSubmitFrom.setWorkType(UserWorkType.FULL_TIME); |
|||
agencyAndStaff.setStaffDTO(staffSubmitFrom); |
|||
|
|||
return agencyAndStaff; |
|||
} |
|||
} |
@ -0,0 +1,43 @@ |
|||
package com.epmet.mq.listener; |
|||
|
|||
import com.alibaba.fastjson.JSON; |
|||
import com.epmet.commons.rocketmq.constants.ConsomerGroupConstants; |
|||
import com.epmet.commons.rocketmq.constants.TopicConstants; |
|||
import com.epmet.commons.rocketmq.messages.InitCustomerMQMsg; |
|||
import com.epmet.dto.CustomerHomeDTO; |
|||
import com.epmet.service.CustomerHomeService; |
|||
import org.apache.rocketmq.common.message.MessageExt; |
|||
import org.apache.rocketmq.spring.annotation.MessageModel; |
|||
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; |
|||
import org.apache.rocketmq.spring.core.RocketMQListener; |
|||
import org.slf4j.Logger; |
|||
import org.slf4j.LoggerFactory; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Component; |
|||
|
|||
/** |
|||
* 监听初始化客户动作,为客户初始化角色列表 |
|||
*/ |
|||
@RocketMQMessageListener(topic = TopicConstants.INIT_CUSTOMER, |
|||
consumerGroup = ConsomerGroupConstants.INIT_CUSTOMER_CUSTOMIZE_GROUP, |
|||
messageModel = MessageModel.CLUSTERING, |
|||
selectorExpression = "*") |
|||
@Component |
|||
public class InitCustomerCustomizeListener implements RocketMQListener<MessageExt> { |
|||
|
|||
private Logger logger = LoggerFactory.getLogger(getClass()); |
|||
|
|||
@Autowired |
|||
private CustomerHomeService customerHomeService; |
|||
|
|||
@Override |
|||
public void onMessage(MessageExt messageExt) { |
|||
String msg = new String(messageExt.getBody()); |
|||
logger.info("初始化客户-初始化客户自定义信息-收到消息内容:{}", msg); |
|||
InitCustomerMQMsg msgObj = JSON.parseObject(msg, InitCustomerMQMsg.class); |
|||
|
|||
CustomerHomeDTO customerHomeDTO = new CustomerHomeDTO(); |
|||
customerHomeDTO.setCustomerId(msgObj.getCustomerId()); |
|||
customerHomeService.init(customerHomeDTO); |
|||
} |
|||
} |
@ -0,0 +1,39 @@ |
|||
package com.epmet.mq.listener; |
|||
|
|||
import com.alibaba.fastjson.JSON; |
|||
import com.epmet.commons.rocketmq.constants.ConsomerGroupConstants; |
|||
import com.epmet.commons.rocketmq.constants.TopicConstants; |
|||
import com.epmet.commons.rocketmq.messages.InitCustomerMQMsg; |
|||
import com.epmet.service.GovStaffRoleService; |
|||
import org.apache.rocketmq.common.message.MessageExt; |
|||
import org.apache.rocketmq.spring.annotation.MessageModel; |
|||
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; |
|||
import org.apache.rocketmq.spring.core.RocketMQListener; |
|||
import org.slf4j.Logger; |
|||
import org.slf4j.LoggerFactory; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Component; |
|||
|
|||
/** |
|||
* 监听初始化客户动作,为客户初始化角色列表 |
|||
*/ |
|||
@RocketMQMessageListener(topic = TopicConstants.INIT_CUSTOMER, |
|||
consumerGroup = ConsomerGroupConstants.INIT_CUSTOMER_ROLES_GROUP, |
|||
messageModel = MessageModel.CLUSTERING, |
|||
selectorExpression = "*") |
|||
@Component |
|||
public class InitCustomerRolesListener implements RocketMQListener<MessageExt> { |
|||
|
|||
private Logger logger = LoggerFactory.getLogger(getClass()); |
|||
|
|||
@Autowired |
|||
private GovStaffRoleService govStaffRoleService; |
|||
|
|||
@Override |
|||
public void onMessage(MessageExt messageExt) { |
|||
String msg = new String(messageExt.getBody()); |
|||
logger.info("初始化客户-初始化角色列表-收到消息内容:{}", msg); |
|||
InitCustomerMQMsg msgObj = JSON.parseObject(msg, InitCustomerMQMsg.class); |
|||
govStaffRoleService.initGovStaffRolesForCustomer(msgObj.getCustomerId()); |
|||
} |
|||
} |
Loading…
Reference in new issue