Browse Source

添加获取消息网关事件类型接口

dev_shibei_match
jianjun 5 years ago
parent
commit
8e83a93a86
  1. 41
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/mq/EventClassDto.java
  2. 7
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/mq/MqBaseMsgDTO.java
  3. 2
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/mq/MqBaseParamDTO.java
  4. 2
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/MqMethodPathEnum.java
  5. 59
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/SendMqMsgUtils.java
  6. 17
      epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/EventController.java

41
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/mq/EventClassDto.java

@ -0,0 +1,41 @@
package com.epmet.commons.tools.dto.form.mq;
import lombok.Data;
import java.io.Serializable;
/**
* desc消息网关事件类型dto
*
* @author lyn
* @date 2020/7/24 18:30
*/
@Data
public class EventClassDto implements Serializable {
private static final long serialVersionUID = 6923860669547819790L;
/**
* appId
*/
private String appId;
/**
* 事件类型Id
*/
private Integer id;
/**
* 事件标识
*/
private String eventClass;
/**
* 事件名称
*/
private String eventClassName;
/**
* 0''未删''1''已删
*/
private Integer delFlag;
/**
* 事件计数
*/
private Integer eventCount;
}

7
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/mq/MqBaseMsgDTO.java

@ -3,6 +3,8 @@ package com.epmet.commons.tools.dto.form.mq;
import lombok.Data;
import org.springframework.stereotype.Component;
import javax.validation.constraints.NotBlank;
/**
* 消息网关基础信息
*
@ -11,20 +13,23 @@ import org.springframework.stereotype.Component;
**/
@Data
@Component
public class MqBaseMsgDTO extends MqConfigDTO {
public class MqBaseMsgDTO extends MqBaseParamDTO {
private static final long serialVersionUID = 8176470786428432009L;
/**
* mq的事件类型
*/
@NotBlank(message = "事件类型不能为空")
private String eventClass;
/**
* 事件code
*/
@NotBlank(message = "事件标识不能为空")
private String eventTag;
/**
* 消息体
*/
@NotBlank(message = "消息体不能为空")
private String msg;
}

2
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/mq/MqConfigDTO.java → epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/mq/MqBaseParamDTO.java

@ -11,7 +11,7 @@ import java.io.Serializable;
* @date 2020-07-21 14:33
**/
@Data
public class MqConfigDTO implements Serializable {
public class MqBaseParamDTO implements Serializable {
private String appId;
private String token;
private String requestUrl;

2
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/MqMethodPathEnum.java

@ -9,7 +9,7 @@ package com.epmet.commons.tools.enums;
**/
public enum MqMethodPathEnum {
SEND_MSG("producerService/producer/sendMsg", "发送消息"),
GET_EVENT_LIST("/eventClass/getList", "获取时间类型列表"),
GET_EVENT_LIST("eventClass/getList", "获取事件类型列表"),
;

59
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/SendMqMsgUtils.java

@ -4,14 +4,21 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.epmet.commons.tools.config.MqConfig;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.dto.form.mq.EventClassDto;
import com.epmet.commons.tools.dto.form.mq.MqBaseMsgDTO;
import com.epmet.commons.tools.dto.form.mq.MqReturnBaseResult;
import com.epmet.commons.tools.enums.MqMethodPathEnum;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.ValidateException;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 发送亿联云消息工具类
*
@ -21,7 +28,7 @@ import org.springframework.stereotype.Component;
@Slf4j
@Component
public class SendMqMsgUtils {
private static MqConfig mqStaticConfig;
private static MqConfig mqConfig;
/**
* desc:发送mq消息
@ -29,19 +36,19 @@ public class SendMqMsgUtils {
* @return
*/
public static Result<String> sendMsg(MqBaseMsgDTO msg) {
if (mqStaticConfig == null) {
mqStaticConfig = SpringContextUtils.getBean(MqConfig.class);
if (mqConfig == null) {
mqConfig = SpringContextUtils.getBean(MqConfig.class);
}
log.debug("sendMsg param:{}", JSON.toJSONString(msg));
try {
// TODO
//ValidatorUtils.validateEntity(msg, null);
ValidatorUtils.validateEntity(msg, DefaultGroup.class);
} catch (ValidateException e) {
return new Result<String>().error(e.getMsg());
}
msg.setAppId(mqStaticConfig.getAppId());
msg.setRequestUrl(mqStaticConfig.getHost().concat(MqMethodPathEnum.SEND_MSG.getCode()));
msg.setToken(mqStaticConfig.getToken());
msg.setAppId(mqConfig.getAppId());
msg.setRequestUrl(mqConfig.getHost().concat(MqMethodPathEnum.SEND_MSG.getCode()));
msg.setToken(mqConfig.getToken());
try {
Result<String> result = HttpClientManager.getInstance().sendPostByHttps(msg.getRequestUrl(), JSON.toJSONString(msg));
log.debug("sendMsg result:{}", JSON.toJSONString(result));
@ -66,4 +73,42 @@ public class SendMqMsgUtils {
}
/**
* desc:发送mq消息
*
* @return
*/
public static Result<List<EventClassDto>> getEventClassList() {
if (mqConfig == null) {
mqConfig = SpringContextUtils.getBean(MqConfig.class);
}
Map<String, String> param = new HashMap<>();
param.put("appId", mqConfig.getAppId());
param.put("token", mqConfig.getToken());
String requestUrl = mqConfig.getHost().concat(MqMethodPathEnum.GET_EVENT_LIST.getCode());
try {
Result<String> result = HttpClientManager.getInstance().sendPostByHttps(requestUrl, JSON.toJSONString(param));
log.debug("getEventClassList result:{}", JSON.toJSONString(result));
if (result.success()) {
MqReturnBaseResult resultResult = JSON.parseObject(result.getData(), MqReturnBaseResult.class);
if (resultResult.getErrCode().equals(NumConstant.ZERO)) {
List<EventClassDto> eventClassDto = JSON.parseArray(resultResult.getData(), EventClassDto.class);
return new Result<List<EventClassDto>>().ok(eventClassDto);
} else {
log.error("sendMsg fail,resultData:{}", JSON.toJSONString(resultResult));
return new Result<List<EventClassDto>>().error(EpmetErrorCode.SERVER_ERROR.getCode(), resultResult.getErrMsg());
}
}
Result<List<EventClassDto>> resultResult = new Result<>();
resultResult.error(result.getCode(), result.getMsg());
resultResult.setInternalMsg(result.getInternalMsg());
return resultResult;
} catch (Exception e) {
log.debug("sendMsg exception", e);
return new Result<List<EventClassDto>>().error(EpmetErrorCode.SERVER_ERROR.getCode(), EpmetErrorCode.SERVER_ERROR.getMsg());
}
}
}

17
epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/controller/EventController.java

@ -17,19 +17,17 @@
package com.epmet.controller;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.config.MqConfig;
import com.epmet.commons.tools.enums.MqMethodPathEnum;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.HttpClientManager;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.utils.SendMqMsgUtils;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.dto.form.EventFormDTO;
import com.epmet.dto.result.EventDTO;
import com.epmet.service.EventService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -42,6 +40,7 @@ import java.util.Map;
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-07-16
*/
@Slf4j
@RestController
@RequestMapping("event")
public class EventController {
@ -57,14 +56,8 @@ public class EventController {
return new Result<PageData<EventDTO>>().ok(page);
}
@GetMapping("geteventclass")
public Result<?> getEventClass(@RequestParam Map<String, Object> params){
params.put("token", mqConfig.getToken());
params.put("appId", mqConfig.getAppId());
Result<String> result = HttpClientManager.getInstance().sendPostByHttps(mqConfig.getHost().concat(MqMethodPathEnum.GET_EVENT_LIST.getCode()), JSON.toJSONString(params));
if (result.success()){
return new Result<>().ok(JSON.parseArray(result.getData()));
}
return new Result<>().error(EpmetErrorCode.SERVER_ERROR.getMsg());
public Result<?> getEventClass(){
return SendMqMsgUtils.getEventClassList();
}
/**

Loading…
Cancel
Save