diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/inside/notices/service/impl/InsideMessageRecordApiImpl.java b/inside-notices/src/main/java/cn/axzo/msg/center/inside/notices/service/impl/InsideMessageRecordApiImpl.java new file mode 100644 index 00000000..b3900e22 --- /dev/null +++ b/inside-notices/src/main/java/cn/axzo/msg/center/inside/notices/service/impl/InsideMessageRecordApiImpl.java @@ -0,0 +1,49 @@ +package cn.axzo.msg.center.inside.notices.service.impl; + +import cn.axzo.core.domain.PageResult; +import cn.axzo.msg.center.api.InsideMessageRecordApi; +import cn.axzo.msg.center.api.request.CmsMsgListReq; +import cn.axzo.msg.center.api.request.CmsMsgQueryReq; +import cn.axzo.msg.center.api.request.MessageNewRes; +import cn.axzo.msg.center.inside.notices.service.MessageModuleService; +import cn.axzo.msg.center.inside.notices.service.MessageRecordService; +import cn.axzo.msg.center.inside.notices.service.MessageRouterService; +import cn.axzo.msg.center.notices.service.api.MessageService; +import cn.azxo.framework.common.model.CommonResponse; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Slf4j +@RestController +public class InsideMessageRecordApiImpl implements InsideMessageRecordApi { + + @Resource + private MessageRecordService messageRecordService; + + @Resource + private MessageService messageService; + + @Resource + private MessageModuleService messageModuleService; + + @Resource + private MessageRouterService messageRouterService; + + @PostMapping("webApi/wx/message/list") + @Override + public CommonResponse> listMsgInfo4Trade(CmsMsgListReq req) { + CmsMsgQueryReq request=new CmsMsgQueryReq(); + BeanUtils.copyProperties(req,request); + PageResult pageResult = messageRecordService.pageMsgInfo4WechatAndTrade( + request, req.getPersonId()); + return CommonResponse.success(pageResult); + } + + + + +} diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/api/InsideMessageRecordApi.java b/msg-center-api/src/main/java/cn/axzo/msg/center/api/InsideMessageRecordApi.java new file mode 100644 index 00000000..a26a3da1 --- /dev/null +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/api/InsideMessageRecordApi.java @@ -0,0 +1,21 @@ +package cn.axzo.msg.center.api; + +import cn.axzo.core.domain.PageResult; +import cn.axzo.msg.center.api.fallback.InsideMessageRecordApiFallBack; +import cn.axzo.msg.center.api.request.CmsMsgListReq; +import cn.axzo.msg.center.api.request.MessageNewRes; +import cn.azxo.framework.common.model.CommonResponse; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.stereotype.Component; + +@FeignClient(name = "msg-center", url = "http://127.0.0.1:10086", fallback = InsideMessageRecordApiFallBack.class) +@Component +public interface InsideMessageRecordApi { + + /** + * 消息列表 + * @param req + * @return + */ + CommonResponse> listMsgInfo4Trade(CmsMsgListReq req); +} diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/api/InsideMessageTemplateApi.java b/msg-center-api/src/main/java/cn/axzo/msg/center/api/InsideMessageTemplateApi.java new file mode 100644 index 00000000..35b685b4 --- /dev/null +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/api/InsideMessageTemplateApi.java @@ -0,0 +1,4 @@ +package cn.axzo.msg.center.api; + +public class InsideMessageTemplateApi { +} diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/api/fallback/InsideMessageRecordApiFallBack.java b/msg-center-api/src/main/java/cn/axzo/msg/center/api/fallback/InsideMessageRecordApiFallBack.java new file mode 100644 index 00000000..9abc4cdc --- /dev/null +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/api/fallback/InsideMessageRecordApiFallBack.java @@ -0,0 +1,21 @@ +package cn.axzo.msg.center.api.fallback; + +import cn.axzo.core.domain.PageResult; +import cn.axzo.msg.center.api.InsideMessageRecordApi; +import cn.axzo.msg.center.api.request.CmsMsgListReq; +import cn.axzo.msg.center.api.request.MessageNewRes; +import cn.azxo.framework.common.model.CommonResponse; +import cn.hutool.json.JSONUtil; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class InsideMessageRecordApiFallBack implements InsideMessageRecordApi { + + @Override + public CommonResponse> listMsgInfo4Trade(CmsMsgListReq req) { + log.warn("查询消息列表超时,req={}", JSONUtil.toJsonStr(req)); + return CommonResponse.fail("查询消息列表超时"); + } +} diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/api/request/CmsMsgListReq.java b/msg-center-api/src/main/java/cn/axzo/msg/center/api/request/CmsMsgListReq.java new file mode 100644 index 00000000..f8625cc7 --- /dev/null +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/api/request/CmsMsgListReq.java @@ -0,0 +1,48 @@ +package cn.axzo.msg.center.api.request; + +import cn.axzo.basics.common.page.PageRequest; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +@Data +public class CmsMsgListReq extends PageRequest { + + /** + * 关键字 + */ + private String searchKey; + + + /** + * 消息类型 1:普通消息 2:待办 + */ + @NotNull(message = "消息类型必传") + private Integer msgType; + + + /** + * 消息状态 + * 0:消息中心-全部 1:消息中心-未读 + *

+ * 待办消息状态 1:待处理 2:已完成 + */ + private Integer state; + + /** + * 消息时间 + */ + private Date msgDate; + + /** + * 扩展参数 JsonString + */ + private String ext; + /** + * 路由类型(0=null 1=uniapp 2=native 3=H5 4=web 5=WeChat_MP)", example = "1 + */ + private Integer routerType; + + /** + * 路由地址 + */ + private String router; + + /** + * 路由参数 JsonString + */ + private String routerParam; + + /** + * 关联Id + */ + private Long relationId; + + /** + * 原typeId + */ + private Integer oldTypeId; + + +} diff --git a/msg-notices/msg-notices-service-api/src/main/java/cn/axzo/msg/center/notices/service/api/MessageService.java b/msg-notices/msg-notices-service-api/src/main/java/cn/axzo/msg/center/notices/service/api/MessageService.java index 324f58ee..be124c0d 100644 --- a/msg-notices/msg-notices-service-api/src/main/java/cn/axzo/msg/center/notices/service/api/MessageService.java +++ b/msg-notices/msg-notices-service-api/src/main/java/cn/axzo/msg/center/notices/service/api/MessageService.java @@ -1,7 +1,7 @@ package cn.axzo.msg.center.notices.service.api; -import cn.axzo.msg.center.notices.manager.api.dto.request.SendBatchMessageRequestDto; import cn.axzo.msg.center.notices.manager.api.dto.request.MnsRequestDto; +import cn.axzo.msg.center.notices.manager.api.dto.request.SendBatchMessageRequestDto; /** * 消息服务 @@ -23,4 +23,5 @@ public interface MessageService { */ void sendBatchMessage(SendBatchMessageRequestDto request); + }