diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/inside/notices/service/impl/MessageRelationServiceImpl.java b/inside-notices/src/main/java/cn/axzo/msg/center/inside/notices/service/impl/MessageRelationServiceImpl.java index 808943a9..9277c9dc 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/inside/notices/service/impl/MessageRelationServiceImpl.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/inside/notices/service/impl/MessageRelationServiceImpl.java @@ -196,7 +196,8 @@ public class MessageRelationServiceImpl implements MessageRelationService { } return messageRelationDao.lambdaQuery() .in(MessageRelation::getModuleId, moduleIds) - .eq(MessageRelation::getIsDelete, 0) + .eq(MessageRelation::getIsDelete, TableIsDeleteEnum.NORMAL.value) + .select(MessageRelation::getId) .list().stream() .map(MessageRelation::getId) .collect(Collectors.toList()); diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/GeneralMessageController.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/GeneralMessageController.java index ce7b9679..84949057 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/GeneralMessageController.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/controller/GeneralMessageController.java @@ -1,11 +1,16 @@ package cn.axzo.msg.center.message.controller; +import cn.axzo.msg.center.api.request.CmsMsgQueryReq; +import cn.axzo.msg.center.api.response.MessageNewRes; +import cn.axzo.msg.center.message.service.GeneralMessageOldService; import cn.axzo.msg.center.message.service.GeneralMessageService; +import cn.axzo.msg.center.service.dto.PersonDTO; import cn.axzo.msg.center.service.general.client.GeneralMessageClient; import cn.axzo.msg.center.service.general.request.GeneralMessageOldDataStatisticRequest; import cn.axzo.msg.center.service.general.request.GeneralMessageSendRequest; import cn.axzo.msg.center.service.general.response.GeneralMessageOldDataStatisticResponse; import cn.azxo.framework.common.model.CommonResponse; +import cn.azxo.framework.common.model.Page; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.RestController; @@ -21,15 +26,27 @@ import org.springframework.web.bind.annotation.RestController; public class GeneralMessageController implements GeneralMessageClient { private final GeneralMessageService generalMessageService; + private final GeneralMessageOldService generalMessageOldService; @Override - public CommonResponse statisticOldData(GeneralMessageSendRequest request) { + public CommonResponse pageQueryOldMessage(GeneralMessageSendRequest request) { return CommonResponse.success(generalMessageService.batchSendMessage(request)); } @Override - public CommonResponse statisticOldData( + public CommonResponse pageQueryOldMessage( GeneralMessageOldDataStatisticRequest request) { return CommonResponse.success(generalMessageService.statisticOldData(request)); } + + @Override + public CommonResponse countUnreadFromOldMessage(GeneralMessageOldDataStatisticRequest request) { + PersonDTO person = PersonDTO.from(request.getPersonId(), request.getIdentityId(), request.getIdentityType()); + return CommonResponse.success(generalMessageOldService.countUnread(person)); + } + + @Override + public CommonResponse> pageQueryOldMessage(CmsMsgQueryReq request) { + return CommonResponse.success(generalMessageOldService.pageMsgInfo(request)); + } } diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/general/client/GeneralMessageClient.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/general/client/GeneralMessageClient.java index c2e5d26f..c072f6fd 100644 --- a/msg-center-api/src/main/java/cn/axzo/msg/center/service/general/client/GeneralMessageClient.java +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/general/client/GeneralMessageClient.java @@ -1,10 +1,13 @@ package cn.axzo.msg.center.service.general.client; +import cn.axzo.msg.center.api.request.CmsMsgQueryReq; +import cn.axzo.msg.center.api.response.MessageNewRes; import cn.axzo.msg.center.service.general.request.GeneralMessageOldDataStatisticRequest; import cn.axzo.msg.center.service.general.request.GeneralMessageSendRequest; import cn.axzo.msg.center.service.general.response.GeneralMessageOldDataStatisticResponse; import cn.axzo.msg.center.service.pending.client.fallback.PendingMessageClientFallback; import cn.azxo.framework.common.model.CommonResponse; +import cn.azxo.framework.common.model.Page; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.http.MediaType; import org.springframework.stereotype.Component; @@ -32,7 +35,7 @@ public interface GeneralMessageClient { * @return 消息的唯一标识 */ @PostMapping(value = "/general-message/send", produces = {MediaType.APPLICATION_JSON_VALUE}) - CommonResponse statisticOldData(@RequestBody @Valid GeneralMessageSendRequest request); + CommonResponse pageQueryOldMessage(@RequestBody @Valid GeneralMessageSendRequest request); /** * 统计旧消息的未读数以及最新一条消息内容 @@ -41,6 +44,24 @@ public interface GeneralMessageClient { * @return 消息未读数&最新一条消息内容 */ @PostMapping(value = "/general-message/old-data/statistic", produces = {MediaType.APPLICATION_JSON_VALUE}) - CommonResponse statisticOldData( + CommonResponse pageQueryOldMessage( @RequestBody @Valid GeneralMessageOldDataStatisticRequest request); + + /** + * 统计旧消息的未读数 + * + * @param request 消息所需参数 + * @return 消息未读数 + */ + @PostMapping(value = "/general-message/old-data/count-unread", produces = {MediaType.APPLICATION_JSON_VALUE}) + CommonResponse countUnreadFromOldMessage(@RequestBody @Valid GeneralMessageOldDataStatisticRequest request); + + /** + * 旧消息的分页查询入口 + * + * @param request 分页查询所需参数 + * @return 旧消息的分页列表 + */ + @PostMapping(value = "/general-message/old-data/page", produces = {MediaType.APPLICATION_JSON_VALUE}) + CommonResponse> pageQueryOldMessage(@RequestBody @Valid CmsMsgQueryReq request); } diff --git a/msg-center-api/src/main/java/cn/axzo/msg/center/service/general/client/fallback/GeneralMessageClientFallback.java b/msg-center-api/src/main/java/cn/axzo/msg/center/service/general/client/fallback/GeneralMessageClientFallback.java index a81bbb74..76708c28 100644 --- a/msg-center-api/src/main/java/cn/axzo/msg/center/service/general/client/fallback/GeneralMessageClientFallback.java +++ b/msg-center-api/src/main/java/cn/axzo/msg/center/service/general/client/fallback/GeneralMessageClientFallback.java @@ -1,10 +1,13 @@ package cn.axzo.msg.center.service.general.client.fallback; +import cn.axzo.msg.center.api.request.CmsMsgQueryReq; +import cn.axzo.msg.center.api.response.MessageNewRes; import cn.axzo.msg.center.service.general.client.GeneralMessageClient; import cn.axzo.msg.center.service.general.request.GeneralMessageOldDataStatisticRequest; import cn.axzo.msg.center.service.general.request.GeneralMessageSendRequest; import cn.axzo.msg.center.service.general.response.GeneralMessageOldDataStatisticResponse; import cn.azxo.framework.common.model.CommonResponse; +import cn.azxo.framework.common.model.Page; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; @@ -18,15 +21,27 @@ import org.springframework.stereotype.Component; public class GeneralMessageClientFallback implements GeneralMessageClient { @Override - public CommonResponse statisticOldData(GeneralMessageSendRequest request) { + public CommonResponse pageQueryOldMessage(GeneralMessageSendRequest request) { log.error("fall back while sending message. req:{}", request); return CommonResponse.error("fall back while sending message"); } @Override - public CommonResponse statisticOldData( + public CommonResponse pageQueryOldMessage( GeneralMessageOldDataStatisticRequest request) { log.error("fall back while statistic old message. req:{}", request); return CommonResponse.error("fall back while statistic old message"); } + + @Override + public CommonResponse countUnreadFromOldMessage(GeneralMessageOldDataStatisticRequest request) { + log.error("fall back while counting unread old message. request:{}", request); + return CommonResponse.error("fall back while counting unread old message"); + } + + @Override + public CommonResponse> pageQueryOldMessage(CmsMsgQueryReq request) { + log.error("fall back while statistic old message. request:{}", request); + return CommonResponse.error("fall back while statistic old message"); + } }