mq消息接入
This commit is contained in:
@@ -30,7 +30,7 @@ public enum RocketMqGroupEnum {
|
||||
/**
|
||||
* 事件消息监听
|
||||
*/
|
||||
FEI_SHU_EVENT_LISTENER("fei_shu_event_listener", new ArrayList<>(Arrays.asList(RocketMqTagEnum.USER_EVENT, RocketMqTagEnum.AUTH_SCOPE_CHANGE))),
|
||||
FEI_SHU_EVENT_LISTENER("fei_shu_event_listener", new ArrayList<>(Arrays.asList(RocketMqTagEnum.USER_EVENT, RocketMqTagEnum.AUTH_SCOPE_CHANGE, RocketMqTagEnum.DEPT_EVENT))),
|
||||
|
||||
;
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@ public enum RocketMqTagEnum {
|
||||
|
||||
AUTH_SCOPE_CHANGE("auth_scope_change","授权范围变更"),
|
||||
USER_EVENT("user_event","钉钉通讯录变更事件"),
|
||||
DEPT_EVENT("dept_event","部门事件"),
|
||||
;
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.cool.store.dto.dept;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @author zhangchenbiao
|
||||
* @FileName: DepartmentEventDTO
|
||||
* @Description: 部门事件
|
||||
* @date 2023-06-16 15:30
|
||||
*/
|
||||
@Data
|
||||
public class DepartmentEventDTO {
|
||||
|
||||
@ApiModelProperty("部门id")
|
||||
private String departmentId;
|
||||
|
||||
@ApiModelProperty("是否变更父级节点")
|
||||
private Boolean isChangeParent;
|
||||
|
||||
@ApiModelProperty("事件类型")
|
||||
private String eventType;
|
||||
|
||||
}
|
||||
@@ -7,6 +7,7 @@ import com.aliyun.openservices.ons.api.Message;
|
||||
import com.aliyun.openservices.ons.api.MessageListener;
|
||||
import com.cool.store.constants.CommonConstants;
|
||||
import com.cool.store.dto.buser.UserEventDTO;
|
||||
import com.cool.store.dto.dept.DepartmentEventDTO;
|
||||
import com.cool.store.enums.RocketMqTagEnum;
|
||||
import com.cool.store.service.EnterpriseSyncService;
|
||||
import com.cool.store.utils.RedisUtilPool;
|
||||
@@ -45,13 +46,19 @@ public class FeiShuEventListener implements MessageListener {
|
||||
RocketMqTagEnum tag = RocketMqTagEnum.getByTag(message.getTag());
|
||||
switch (tag){
|
||||
case USER_EVENT:
|
||||
UserEventDTO reqBody = JSONObject.parseObject(text, UserEventDTO.class);
|
||||
enterpriseSyncService.userUpdateEvent(reqBody);
|
||||
UserEventDTO userBody = JSONObject.parseObject(text, UserEventDTO.class);
|
||||
enterpriseSyncService.userUpdateEvent(userBody);
|
||||
break;
|
||||
case AUTH_SCOPE_CHANGE:
|
||||
enterpriseSyncService.syncAll();
|
||||
break;
|
||||
case DEPT_EVENT:
|
||||
DepartmentEventDTO deptBody = JSONObject.parseObject(text, DepartmentEventDTO.class);
|
||||
enterpriseSyncService.deptUpdateEvent(deptBody);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
}catch (Exception e){
|
||||
log.error("DingMsgDealListener consume dealAddressBookChange error",e);
|
||||
return Action.ReconsumeLater;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.cool.store.service;
|
||||
|
||||
import com.cool.store.dto.buser.UserEventDTO;
|
||||
import com.cool.store.dto.dept.DepartmentEventDTO;
|
||||
|
||||
/**
|
||||
* @author zhangchenbiao
|
||||
@@ -17,4 +18,10 @@ public interface EnterpriseSyncService {
|
||||
* @param param
|
||||
*/
|
||||
void userUpdateEvent(UserEventDTO param);
|
||||
|
||||
/**
|
||||
* 部门事件
|
||||
* @param param
|
||||
*/
|
||||
void deptUpdateEvent(DepartmentEventDTO param);
|
||||
}
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
package com.cool.store.service.impl;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.cool.store.constants.CommonConstants;
|
||||
import com.cool.store.dao.*;
|
||||
import com.cool.store.dto.buser.UserEventDTO;
|
||||
import com.cool.store.dto.calendar.DeleteCalendarEventDTO;
|
||||
import com.cool.store.dto.dept.DepartmentEventDTO;
|
||||
import com.cool.store.dto.enterprise.*;
|
||||
import com.cool.store.entity.*;
|
||||
import com.cool.store.enums.DataSourceEnum;
|
||||
@@ -204,4 +206,19 @@ public class EnterpriseSyncServiceImpl implements EnterpriseSyncService {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deptUpdateEvent(DepartmentEventDTO param) {
|
||||
log.info("部门变更:{}", JSONObject.toJSONString(param));
|
||||
switch (parseValue(param.getEventType())){
|
||||
case DEPARTMENT_CREATED:
|
||||
break;
|
||||
case DEPARTMENT_UPDATED:
|
||||
break;
|
||||
case DEPARTMENT_DELETED:
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user