From 33e0ab816e902bf240ee3041e90eceefa7388909 Mon Sep 17 00:00:00 2001
From: tianfeng <769204422@qq.com>
Date: Wed, 28 Jan 2026 14:14:17 +0800
Subject: [PATCH] =?UTF-8?q?=E5=8A=A8=E6=80=81=E7=9B=B8=E5=85=B3=E5=88=97?=
=?UTF-8?q?=E8=A1=A8=E5=88=86=E9=A1=B5=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../app/dynamic/DynamicRestController.java | 16 +++-------
.../dynamic/query/DynamicFollowQryExe.java | 32 ++++++++-----------
.../dynamic/query/DynamicLatestQryExe.java | 29 +++++++++--------
.../dynamic/query/DynamicMessageQryExe.java | 26 ++++++++-------
.../dynamic/query/DynamicPopularQryExe.java | 14 +++++---
.../service/dynamic/DynamicServiceImpl.java | 6 ++--
.../app/dto/cmd/dynamic/DynamicLimitCmd.java | 9 ++----
.../app/service/dynamic/DynamicService.java | 6 ++--
.../dynamic/DynamicContentService.java | 4 +--
.../dynamic/DynamicMessageService.java | 4 ++-
.../dynamic/DynamicTimelineService.java | 15 +++++++--
.../impl/DynamicContentServiceImpl.java | 12 ++-----
.../impl/DynamicMessageServiceImpl.java | 11 +++----
.../impl/DynamicTimelineServiceImpl.java | 29 ++++++++---------
14 files changed, 102 insertions(+), 111 deletions(-)
diff --git a/rc-service/rc-service-other/other-adapter/src/main/java/com/red/circle/other/adapter/app/dynamic/DynamicRestController.java b/rc-service/rc-service-other/other-adapter/src/main/java/com/red/circle/other/adapter/app/dynamic/DynamicRestController.java
index f6598fbd..65fb915c 100644
--- a/rc-service/rc-service-other/other-adapter/src/main/java/com/red/circle/other/adapter/app/dynamic/DynamicRestController.java
+++ b/rc-service/rc-service-other/other-adapter/src/main/java/com/red/circle/other/adapter/app/dynamic/DynamicRestController.java
@@ -34,15 +34,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
- *
- * 动态 前端控制器.
- *
- *
- * @author pengshigang
- * @eo.api-type http
- * @eo.groupName 动态服务
- * @eo.path /dynamic
- * @since 2022-04-14
+ * 动态相关接口
*/
@Slf4j
@RestController
@@ -114,7 +106,7 @@ public class DynamicRestController extends BaseController {
* @eo.request-type formdata
*/
@GetMapping("/list/follow")
- public List listDynamicFollow(@Validated DynamicLimitCmd cmd) {
+ public PageResult listDynamicFollow(@Validated DynamicLimitCmd cmd) {
return dynamicService.listDynamicFollow(cmd);
}
@@ -140,7 +132,7 @@ public class DynamicRestController extends BaseController {
* @eo.request-type formdata
*/
@GetMapping("/list/latest")
- public List listDynamicLatest(@Validated DynamicLimitCmd cmd) {
+ public PageResult listDynamicLatest(@Validated DynamicLimitCmd cmd) {
return dynamicService.listDynamicLatest(cmd);
}
@@ -248,7 +240,7 @@ public class DynamicRestController extends BaseController {
* @eo.request-type formdata
*/
@GetMapping("/list/message")
- public List listDynamicMessage(@Validated DynamicLimitCmd cmd) {
+ public PageResult listDynamicMessage(@Validated DynamicLimitCmd cmd) {
return dynamicService.listDynamicMessage(cmd);
}
diff --git a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicFollowQryExe.java b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicFollowQryExe.java
index 5ff60683..86ce77dd 100644
--- a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicFollowQryExe.java
+++ b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicFollowQryExe.java
@@ -3,6 +3,7 @@ package com.red.circle.other.app.command.dynamic.query;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
+import com.red.circle.framework.dto.PageResult;
import com.red.circle.other.app.convertor.user.UserProfileAppConvertor;
import com.red.circle.other.app.dto.clientobject.dynamic.DynamicListCO;
import com.red.circle.other.app.dto.cmd.dynamic.DynamicLimitCmd;
@@ -58,33 +59,32 @@ public class DynamicFollowQryExe {
private final UserProfileAppConvertor userProfileAppConvertor;
private final UserSubscriptionService userSubscriptionService;
- public List execute(DynamicLimitCmd cmd) {
+ public PageResult execute(DynamicLimitCmd cmd) {
// 获取关注人列表
List userSubscriptions = userSubscriptionService
.listByUserId(cmd.requiredReqUserId(), null, null);
if (CollectionUtils.isEmpty(userSubscriptions)) {
- return Lists.newArrayList();
+ return PageResult.newPageResult(0);
}
List list = userSubscriptions.stream().map(UserSubscription::getSubscribeUserId).toList();
- List timelines = dynamicTimelineService
+ PageResult timelines = dynamicTimelineService
.pageByTimeDesc(list, userRegionGateway.getRegionId(cmd.getReqUserId()),
- cmd.getPageNumber(), Boolean.TRUE);
+ cmd.getPageReq(), Boolean.TRUE);
-// List timelines = getPageByTimeDesc(cmd);
- if (CollectionUtils.isEmpty(timelines)) {
- return Lists.newArrayList();
+ if (CollectionUtils.isEmpty(timelines.getRecords())) {
+ return PageResult.newPageResult(0);
}
Set contentIds = getContentIds(timelines);
if (CollectionUtils.isEmpty(contentIds)) {
- return Lists.newArrayList();
+ return PageResult.newPageResult(0);
}
List contentList = dynamicContentService.listByIds(contentIds);
Set userIds = getUserIds(contentList);
if (CollectionUtils.isEmpty(userIds)) {
- return Lists.newArrayList();
+ return PageResult.newPageResult(0);
}
//自己是否已点赞
@@ -97,7 +97,7 @@ public class DynamicFollowQryExe {
Map commentQuantityMap = dynamicCommentService.mapCommentQuantity(contentIds);
Map> pictureMap = dynamicPictureService.mapPreviewGroup(contentIds);
- return timelines.stream().map(timeline -> {
+ return timelines.convert(timeline -> {
DynamicContent dynamic = contentMap.get(timeline.getDynamicContentId());
if (Objects.isNull(dynamic) || dynamic.getDel()) {
@@ -124,16 +124,10 @@ public class DynamicFollowQryExe {
result.setCommentStrQuantity(NumUtils.formatInt(commentQuantityMap.get(dynamic.getId())));
return result;
- }).filter(Objects::nonNull).toList();
+ });
}
- private List getPageByTimeDesc(DynamicLimitCmd cmd) {
- return dynamicTimelineService
- .pageByTimeDesc(userRegionGateway.getRegionId(cmd.getReqUserId()),
- cmd.getPageNumber(), cmd.getReqUserId(), Boolean.FALSE);
- }
-
private Map getLikeMap(DynamicLimitCmd cmd, Set contentIds) {
return dynamicLikeService
.mapByContentIdsByUserId(contentIds, cmd.getReqUserId());
@@ -175,8 +169,8 @@ public class DynamicFollowQryExe {
.collect(Collectors.toSet());
}
- private Set getContentIds(List dynamics) {
- return dynamics.stream().map(DynamicTimeline::getDynamicContentId).collect(Collectors.toSet());
+ private Set getContentIds(PageResult dynamics) {
+ return dynamics.getRecords().stream().map(DynamicTimeline::getDynamicContentId).collect(Collectors.toSet());
}
private Map mapDynamicContent(List contents) {
diff --git a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicLatestQryExe.java b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicLatestQryExe.java
index 6cd6d66c..657ccade 100644
--- a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicLatestQryExe.java
+++ b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicLatestQryExe.java
@@ -1,6 +1,7 @@
package com.red.circle.other.app.command.dynamic.query;
import com.google.common.collect.Lists;
+import com.red.circle.framework.dto.PageResult;
import com.red.circle.other.app.convertor.user.UserProfileAppConvertor;
import com.red.circle.other.app.dto.clientobject.dynamic.DynamicListCO;
import com.red.circle.other.app.dto.cmd.dynamic.DynamicLimitCmd;
@@ -51,20 +52,20 @@ public class DynamicLatestQryExe {
private final UserSubscriptionService userSubscriptionService;
private final UserProfileAppConvertor userProfileAppConvertor;
- public List execute(DynamicLimitCmd cmd) {
+ public PageResult execute(DynamicLimitCmd cmd) {
- List dynamics = dynamicContentService
- .pageByTimeDesc(cmd.getPageNumber(), userRegionGateway.getRegionId(cmd.getReqUserId()),
+ PageResult dynamics = dynamicContentService
+ .pageByTimeDesc(cmd.getPageReq(), userRegionGateway.getRegionId(cmd.getReqUserId()),
cmd.requireReqSysOrigin());
- if (CollectionUtils.isEmpty(dynamics)) {
- return Lists.newArrayList();
+ if (CollectionUtils.isEmpty(dynamics.getRecords())) {
+ return PageResult.newPageResult(0);
}
Set ids = getIds(dynamics);
Set userIds = getUserIds(dynamics);
if (CollectionUtils.isEmpty(ids) || CollectionUtils.isEmpty(userIds)) {
- return Lists.newArrayList();
+ return PageResult.newPageResult(0);
}
//自己是否已点赞
@@ -77,7 +78,7 @@ public class DynamicLatestQryExe {
Map commentQuantityMap = dynamicCommentService.mapCommentQuantity(ids);
Map> pictureMap = dynamicPictureService.mapPreviewGroup(ids);
- return dynamics.stream().map(dynamic -> {
+ return dynamics.convert(dynamic -> {
DynamicListCO result = new DynamicListCO();
UserProfileDTO userProfile = userProfileMap.get(dynamic.getCreateUser());
@@ -91,7 +92,7 @@ public class DynamicLatestQryExe {
result.setCommentStrQuantity(NumUtils.formatInt(commentQuantityMap.get(dynamic.getId())));
return result;
- }).collect(Collectors.toList());
+ });
}
@@ -134,17 +135,17 @@ public class DynamicLatestQryExe {
}
}
- private Set getTagIds(List dynamics) {
- return dynamics.stream().map(DynamicContent::getTagId).collect(Collectors.toSet());
+ private Set getTagIds(PageResult dynamics) {
+ return dynamics.getRecords().stream().map(DynamicContent::getTagId).collect(Collectors.toSet());
}
- private Set getUserIds(List dynamics) {
- return dynamics.stream().map(DynamicContent::getCreateUser)
+ private Set getUserIds(PageResult dynamics) {
+ return dynamics.getRecords().stream().map(DynamicContent::getCreateUser)
.collect(Collectors.toSet());
}
- private Set getIds(List dynamics) {
- return dynamics.stream().map(DynamicContent::getId).collect(Collectors.toSet());
+ private Set getIds(PageResult dynamics) {
+ return dynamics.getRecords().stream().map(DynamicContent::getId).collect(Collectors.toSet());
}
}
diff --git a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicMessageQryExe.java b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicMessageQryExe.java
index 173ea15e..cf8eda17 100644
--- a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicMessageQryExe.java
+++ b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicMessageQryExe.java
@@ -2,6 +2,7 @@ package com.red.circle.other.app.command.dynamic.query;
import com.google.common.collect.Lists;
import com.red.circle.common.business.enums.DynamicMessageEnum;
+import com.red.circle.framework.dto.PageResult;
import com.red.circle.other.app.dto.clientobject.dynamic.DynamicMessageListCO;
import com.red.circle.other.app.dto.cmd.dynamic.DynamicLimitCmd;
import com.red.circle.other.domain.gateway.user.UserProfileGateway;
@@ -35,16 +36,17 @@ public class DynamicMessageQryExe {
private final DynamicContentService dynamicContentService;
private final DynamicMessageService dynamicMessageService;
- public List execute(DynamicLimitCmd cmd) {
+ public PageResult execute(DynamicLimitCmd cmd) {
- List messages = getMessages(cmd);
- if (CollectionUtils.isEmpty(messages)) {
- return Lists.newArrayList();
+ PageResult messages = getMessages(cmd);
+ if (CollectionUtils.isEmpty(messages.getRecords())) {
+ return PageResult.newPageResult(0);
}
+
Map userMap = userProfileGateway.mapByUserIds(getUserIds(messages));
Map contentMap = getContentMap(messages);
- return messages.stream().map(message -> {
+ return messages.convert(message -> {
DynamicContent dynamicContent = contentMap.get(message.getDynamicContentId());
if (Objects.isNull(dynamicContent)) {
@@ -72,23 +74,23 @@ public class DynamicMessageQryExe {
messageCO.setUserNickname(user.getUserNickname());
return messageCO;
- }).filter(Objects::nonNull).toList();
+ });
}
- private Map getContentMap(List messages) {
+ private Map getContentMap(PageResult messages) {
return dynamicContentService
- .mapByIds(messages.stream().map(DynamicMessage::getDynamicContentId).collect(
+ .mapByIds(messages.getRecords().stream().map(DynamicMessage::getDynamicContentId).collect(
Collectors.toSet()));
}
- private List getMessages(DynamicLimitCmd cmd) {
- return dynamicMessageService.pageByTimeDesc(cmd.getPageNumber(), cmd.getReqUserId());
+ private PageResult getMessages(DynamicLimitCmd cmd) {
+ return dynamicMessageService.pageByTimeDesc(cmd.getPageReq(), cmd.getReqUserId());
}
- private Set getUserIds(List messages) {
+ private Set getUserIds(PageResult messages) {
- return messages.stream().map(DynamicMessage::getCreateUser)
+ return messages.getRecords().stream().map(DynamicMessage::getCreateUser)
.filter(Objects::nonNull).collect(Collectors.toSet());
}
diff --git a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicPopularQryExe.java b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicPopularQryExe.java
index 492834bf..9b88c531 100644
--- a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicPopularQryExe.java
+++ b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/command/dynamic/query/DynamicPopularQryExe.java
@@ -4,6 +4,8 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import com.red.circle.common.business.core.enums.SysOriginPlatformEnum;
+import com.red.circle.common.business.dto.PageReq;
+import com.red.circle.framework.dto.PageResult;
import com.red.circle.other.app.convertor.user.UserProfileAppConvertor;
import com.red.circle.other.app.dto.clientobject.dynamic.DynamicListCO;
import com.red.circle.other.app.dto.clientobject.dynamic.DynamicPictureCO;
@@ -60,12 +62,13 @@ public class DynamicPopularQryExe {
private final UserProfileAppConvertor userProfileAppConvertor;
public List execute(DynamicLimitCmd cmd) {
+ PageReq pageReq = cmd.getPageReq();
//热门动态
List populars = getPopulars(cmd);
//大于第一页没数据则返回
- if (CollectionUtils.isEmpty(populars) && cmd.getPageNumber() > 1) {
+ if (CollectionUtils.isEmpty(populars) && pageReq.getCursor() > 1) {
return Lists.newArrayList();
}
@@ -78,7 +81,7 @@ public class DynamicPopularQryExe {
List resultList = Lists.newArrayList();
//置顶动态,如果当前页码非第一页则无视置顶动态
- if (cmd.getPageNumber() <= 1) {
+ if (pageReq.getCursor() <= 1) {
resultList.addAll(getHotDynamic(topDynamicIds));
}
//处理热门动态列表
@@ -157,9 +160,9 @@ public class DynamicPopularQryExe {
}
private List getTmpContentList(DynamicLimitCmd cmd) {
- return dynamicContentService.pageByTimeDesc(1,
+ return dynamicContentService.pageByTimeDesc(cmd.getPageReq(),
userRegionGateway.getRegionId(cmd.getReqUserId()),
- cmd.requireReqSysOrigin());
+ cmd.requireReqSysOrigin()).getRecords().stream().toList();
}
private List getHotDynamic(List contentIds) {
@@ -198,8 +201,9 @@ public class DynamicPopularQryExe {
}
private List getPopulars(DynamicLimitCmd cmd) {
+ PageReq pageReq = cmd.getPageReq();
return dynamicPopularService
- .pageDynamic(cmd.getReqSysOrigin().getOrigin(), cmd.getPageNumber(), 20,
+ .pageDynamic(cmd.getReqSysOrigin().getOrigin(), pageReq.getCursor(), pageReq.getLimit(),
userRegionGateway.getRegionId(cmd.getReqUserId()));
}
diff --git a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/service/dynamic/DynamicServiceImpl.java b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/service/dynamic/DynamicServiceImpl.java
index 07521338..e11c0c15 100644
--- a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/service/dynamic/DynamicServiceImpl.java
+++ b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/service/dynamic/DynamicServiceImpl.java
@@ -97,7 +97,7 @@ public class DynamicServiceImpl implements DynamicService {
}
@Override
- public List listDynamicFollow(DynamicLimitCmd cmd) {
+ public PageResult listDynamicFollow(DynamicLimitCmd cmd) {
return dynamicFollowQryExe.execute(cmd);
}
@@ -107,7 +107,7 @@ public class DynamicServiceImpl implements DynamicService {
}
@Override
- public List listDynamicLatest(DynamicLimitCmd cmd) {
+ public PageResult listDynamicLatest(DynamicLimitCmd cmd) {
return dynamicLatestQryExe.execute(cmd);
}
@@ -147,7 +147,7 @@ public class DynamicServiceImpl implements DynamicService {
}
@Override
- public List listDynamicMessage(DynamicLimitCmd cmd) {
+ public PageResult listDynamicMessage(DynamicLimitCmd cmd) {
return dynamicMessageQryExe.execute(cmd);
}
diff --git a/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/dto/cmd/dynamic/DynamicLimitCmd.java b/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/dto/cmd/dynamic/DynamicLimitCmd.java
index bb79c203..ba54b3d3 100644
--- a/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/dto/cmd/dynamic/DynamicLimitCmd.java
+++ b/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/dto/cmd/dynamic/DynamicLimitCmd.java
@@ -1,7 +1,7 @@
package com.red.circle.other.app.dto.cmd.dynamic;
+import com.red.circle.common.business.dto.PageReq;
import com.red.circle.common.business.dto.cmd.AppExtCommand;
-import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -16,11 +16,8 @@ import lombok.EqualsAndHashCode;
public class DynamicLimitCmd extends AppExtCommand {
/**
- * 页码.
- *
- * @eo.required
+ * 分页参数.
*/
- @NotNull(message = "pageNumber required.")
- private Integer pageNumber;
+ private PageReq pageReq;
}
diff --git a/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/service/dynamic/DynamicService.java b/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/service/dynamic/DynamicService.java
index 4fc6bd9e..c421373d 100644
--- a/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/service/dynamic/DynamicService.java
+++ b/rc-service/rc-service-other/other-client/src/main/java/com/red/circle/other/app/service/dynamic/DynamicService.java
@@ -54,7 +54,7 @@ public interface DynamicService {
/**
* 动态关注列表.
*/
- List listDynamicFollow(DynamicLimitCmd cmd);
+ PageResult listDynamicFollow(DynamicLimitCmd cmd);
/**
* 我的动态列表.
@@ -64,7 +64,7 @@ public interface DynamicService {
/**
* 最新动态列表.
*/
- List listDynamicLatest(DynamicLimitCmd cmd);
+ PageResult listDynamicLatest(DynamicLimitCmd cmd);
/**
* 热门动态列表.
@@ -110,7 +110,7 @@ public interface DynamicService {
/**
* 我的消息列表.
*/
- List listDynamicMessage(DynamicLimitCmd cmd);
+ PageResult listDynamicMessage(DynamicLimitCmd cmd);
/**
* 删除自己全部消息.
diff --git a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/DynamicContentService.java b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/DynamicContentService.java
index c8c4699c..662400a0 100644
--- a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/DynamicContentService.java
+++ b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/DynamicContentService.java
@@ -33,10 +33,8 @@ public interface DynamicContentService extends BaseService {
/**
* 获得分页数据
- *
- * @param pageNumber 第几页
*/
- List pageByTimeDesc(Integer pageNumber, String region, String sysOrigin);
+ PageResult pageByTimeDesc(PageQuery pageQuery, String region, String sysOrigin);
/**
* 获得分页数据
diff --git a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/DynamicMessageService.java b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/DynamicMessageService.java
index ec5aa0b3..f7d9db2e 100644
--- a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/DynamicMessageService.java
+++ b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/DynamicMessageService.java
@@ -2,6 +2,8 @@ package com.red.circle.other.infra.database.rds.service.dynamic;
import com.red.circle.common.business.enums.DynamicMessageEnum;
+import com.red.circle.framework.dto.PageQuery;
+import com.red.circle.framework.dto.PageResult;
import com.red.circle.framework.mybatis.service.BaseService;
import com.red.circle.other.infra.database.rds.entity.dynamic.DynamicMessage;
import java.util.Collection;
@@ -44,7 +46,7 @@ public interface DynamicMessageService extends BaseService {
* @param pageNumber 第几页
* @param toUserId 被评价人或点赞ID
*/
- List pageByTimeDesc(Integer pageNumber, Long toUserId);
+ PageResult pageByTimeDesc(PageQuery pageQuery, Long toUserId);
/**
* 我的消息列表统计
diff --git a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/DynamicTimelineService.java b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/DynamicTimelineService.java
index 313707f4..f2e94ed6 100644
--- a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/DynamicTimelineService.java
+++ b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/DynamicTimelineService.java
@@ -1,6 +1,8 @@
package com.red.circle.other.infra.database.rds.service.dynamic;
+import com.red.circle.framework.dto.PageQuery;
+import com.red.circle.framework.dto.PageResult;
import com.red.circle.framework.mybatis.service.BaseService;
import com.red.circle.other.infra.database.rds.entity.dynamic.DynamicTimeline;
import java.util.List;
@@ -35,8 +37,17 @@ public interface DynamicTimelineService extends BaseService {
*/
List pageByTimeDesc(String region, Integer pageNumber, Long createUser,
Boolean isOwn);
- List pageByTimeDesc(List ids, String region, Integer pageNumber,
- Boolean isOwn);
+
+ /**
+ * 获得分页数据 (使用PageQuery)
+ *
+ * @param ids 用户id列表
+ * @param region 地区
+ * @param pageQuery 分页参数
+ * @param isOwn 是否为自己发布的动态
+ */
+ PageResult pageByTimeDesc(List ids, String region, PageQuery pageQuery,
+ Boolean isOwn);
/**
* 获得自己发布过的动态
diff --git a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/impl/DynamicContentServiceImpl.java b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/impl/DynamicContentServiceImpl.java
index b9559693..2496fa5b 100644
--- a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/impl/DynamicContentServiceImpl.java
+++ b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/impl/DynamicContentServiceImpl.java
@@ -57,20 +57,14 @@ public class DynamicContentServiceImpl extends
}
@Override
- public List pageByTimeDesc(Integer pageNumber, String region, String sysOrigin) {
+ public PageResult pageByTimeDesc(PageQuery pageQuery, String region, String sysOrigin) {
- if (Objects.isNull(pageNumber) || pageNumber < 1) {
- pageNumber = 1;
- }
-
- return Optional.ofNullable(query()
+ return query()
.eq(DynamicContent::getDel, Boolean.FALSE)
.eq(DynamicContent::getSysOrigin, sysOrigin)
.eq(DynamicContent::getRegion, region)
.orderByDesc(DynamicContent::getCreateTime)
- .last(getPageSql(pageNumber))
- .list())
- .orElse(Lists.newArrayList());
+ .page(pageQuery);
}
@Override
diff --git a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/impl/DynamicMessageServiceImpl.java b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/impl/DynamicMessageServiceImpl.java
index 4d1d89b4..29103f58 100644
--- a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/impl/DynamicMessageServiceImpl.java
+++ b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/impl/DynamicMessageServiceImpl.java
@@ -1,6 +1,8 @@
package com.red.circle.other.infra.database.rds.service.dynamic.impl;
import com.red.circle.common.business.enums.DynamicMessageEnum;
+import com.red.circle.framework.dto.PageQuery;
+import com.red.circle.framework.dto.PageResult;
import com.red.circle.framework.mybatis.constant.PageConstant;
import com.red.circle.framework.mybatis.service.impl.BaseServiceImpl;
import com.red.circle.other.infra.database.rds.dao.dynamic.DynamicMessageDAO;
@@ -91,18 +93,13 @@ public class DynamicMessageServiceImpl extends
}
@Override
- public List pageByTimeDesc(Integer pageNumber, Long toUserId) {
-
- if (Objects.isNull(pageNumber) || pageNumber < 1) {
- pageNumber = 1;
- }
+ public PageResult pageByTimeDesc(PageQuery pageQuery, Long toUserId) {
return query()
.eq(DynamicMessage::getToUserId, toUserId)
.eq(DynamicMessage::getDel, Boolean.FALSE)
.orderByDesc(DynamicMessage::getCreateTime)
- .last(getPageSql(pageNumber))
- .list();
+ .page(pageQuery);
}
@Override
diff --git a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/impl/DynamicTimelineServiceImpl.java b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/impl/DynamicTimelineServiceImpl.java
index 17f80ae0..e9765e19 100644
--- a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/impl/DynamicTimelineServiceImpl.java
+++ b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/rds/service/dynamic/impl/DynamicTimelineServiceImpl.java
@@ -1,6 +1,8 @@
package com.red.circle.other.infra.database.rds.service.dynamic.impl;
import com.google.common.collect.Lists;
+import com.red.circle.framework.dto.PageQuery;
+import com.red.circle.framework.dto.PageResult;
import com.red.circle.framework.mybatis.constant.PageConstant;
import com.red.circle.framework.mybatis.service.impl.BaseServiceImpl;
import com.red.circle.other.infra.database.rds.dao.dynamic.DynamicTimelineDAO;
@@ -64,29 +66,26 @@ public class DynamicTimelineServiceImpl extends
.orderByDesc(DynamicTimeline::getCreateTime)
.last(getPageSql(pageNumber))
.list();
- } @Override
- public List pageByTimeDesc(List ids, String region, Integer pageNumber,
- Boolean isOwn) {
-
- if (Objects.isNull(pageNumber) || pageNumber < 1) {
- pageNumber = 1;
- }
-
- return query()
- .in(DynamicTimeline::getCreateUser, ids)
- .eq(DynamicTimeline::getOwn, isOwn)
- .in(DynamicTimeline::getRegion, region, "")
- .orderByDesc(DynamicTimeline::getCreateTime)
- .last(getPageSql(pageNumber))
- .list();
}
+
private String getPageSql(Integer pageNumber) {
return String.format("LIMIT %s, %s", (pageNumber - 1) * PageConstant.DEFAULT_LIMIT_SIZE,
PageConstant.DEFAULT_LIMIT_SIZE);
}
+ @Override
+ public PageResult pageByTimeDesc(List ids, String region, PageQuery pageQuery,
+ Boolean isOwn) {
+ return query()
+ .in(DynamicTimeline::getCreateUser, ids)
+ .eq(DynamicTimeline::getOwn, isOwn)
+ .in(DynamicTimeline::getRegion, region, "")
+ .orderByDesc(DynamicTimeline::getCreateTime)
+ .page(pageQuery);
+ }
+
@Override
public List ownListByUserId(Long userId) {