diff --git a/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/controller/PostController.java b/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/controller/PostController.java index 30c6bc2..ea1c787 100644 --- a/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/controller/PostController.java +++ b/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/controller/PostController.java @@ -93,8 +93,8 @@ public class PostController { @ApiResponse(responseCode = "200", description = "获取成功"), @ApiResponse(responseCode = "500", description = "获取失败,帖子不存在或被删除") }) - public PostInfoDTO getPostDetail(@RequestParam("id") Long id) { - return postService.getPostDetail(id); + public Result getPostDetail(@RequestParam("id") Long id) { + return Result.success(postService.getPostDetail(id)); } // 分页查询帖子 diff --git a/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/dto/resp/PostBasicInfoDTO.java b/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/dto/resp/PostBasicInfoDTO.java index b1a27bf..6b819ac 100644 --- a/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/dto/resp/PostBasicInfoDTO.java +++ b/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/dto/resp/PostBasicInfoDTO.java @@ -27,6 +27,11 @@ public class PostBasicInfoDTO { ) private String title; + @Schema( + description = "帖子摘要,显示帖子内容的前20个字" + ) + private String summary; + @Schema( description = "点赞数" ) @@ -43,7 +48,12 @@ public class PostBasicInfoDTO { private Integer favoriteCount; @Schema( - description = "是否点赞,1-已点赞,0-未点赞", + description = "帖子浏览数" + ) + private Integer viewCount; + + @Schema( + description = "是否点赞,1-已点赞,0-未点赞", allowableValues = {"0", "1"}, example = "1", implementation = Boolean.class diff --git a/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/dto/resp/PostInfoDTO.java b/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/dto/resp/PostInfoDTO.java index 6aa07a1..d0f8d90 100644 --- a/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/dto/resp/PostInfoDTO.java +++ b/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/dto/resp/PostInfoDTO.java @@ -51,6 +51,11 @@ public class PostInfoDTO { ) private Integer favoriteCount; + @Schema( + description = "帖子浏览数" + ) + private Integer viewCount; + @Schema( description = "是否点赞,1-已点赞,0-未点赞", allowableValues = {"0", "1"}, diff --git a/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/service/impl/PostServiceImpl.java b/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/service/impl/PostServiceImpl.java index 5d514c9..f2e4456 100644 --- a/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/service/impl/PostServiceImpl.java +++ b/珞珈岛-项目相关文件/luojia-island/service/src/main/java/com/luojia_channel/modules/post/service/impl/PostServiceImpl.java @@ -125,7 +125,7 @@ public class PostServiceImpl extends ServiceImpl implements Po @Override public PostInfoDTO getPostDetail(Long id) { - // TODO + // TODO 定时任务更新浏览数或消息队列解耦,懒得写了 Post oldPost = getById(id); oldPost.setViewCount(oldPost.getViewCount() + 1); updateById(oldPost); @@ -147,7 +147,7 @@ public class PostServiceImpl extends ServiceImpl implements Po postInfoDTO.setIsLike(isLikedPost(post.getId())); return postInfoDTO; }, - 60, TimeUnit.MINUTES); + 1, TimeUnit.MINUTES); } @Override @@ -191,6 +191,17 @@ public class PostServiceImpl extends ServiceImpl implements Po User user = userMap.getOrDefault(post.getUserId(), new User()); postBasicInfoDTO.setUserAvatar(user.getAvatar()); postBasicInfoDTO.setUserName(user.getUsername()); + postBasicInfoDTO.setIsLike(isLikedPost(post.getId())); + + String content = post.getContent(); + if (content != null) { + content = content.trim(); + String summary = content.substring(0, Math.min(content.length(), 15)); + postBasicInfoDTO.setSummary(summary); + } else { + postBasicInfoDTO.setSummary("该帖子内容为空哦"); + } + if (post.getStatus() == 1) { // 匿名帖子 postBasicInfoDTO.setUserName(ANONYMOUS_NAME); postBasicInfoDTO.setUserAvatar(ANONYMOUS_AVATAR); @@ -250,6 +261,17 @@ public class PostServiceImpl extends ServiceImpl implements Po User user = userMap.getOrDefault(post.getUserId(), new User()); postBasicInfoDTO.setUserAvatar(user.getAvatar()); postBasicInfoDTO.setUserName(user.getUsername()); + postBasicInfoDTO.setIsLike(isLikedPost(post.getId())); + + String content = post.getContent(); + if (content != null) { + content = content.trim(); + String summary = content.substring(0, Math.min(content.length(), 15)); + postBasicInfoDTO.setSummary(summary); + } else { + postBasicInfoDTO.setSummary("该帖子内容为空哦"); + } + if (post.getStatus() == 1) { // 自己的匿名帖子 if(!userId.equals(user.getId())){ continue; diff --git a/珞珈岛-项目相关文件/luojia-island/service/src/main/resources/application-local.yaml b/珞珈岛-项目相关文件/luojia-island/service/src/main/resources/application-local.yaml index 4fbcddd..c163548 100644 --- a/珞珈岛-项目相关文件/luojia-island/service/src/main/resources/application-local.yaml +++ b/珞珈岛-项目相关文件/luojia-island/service/src/main/resources/application-local.yaml @@ -1,36 +1,36 @@ #本地开发环境 - lj: - db: - host: localhost - password: 123456 - redis: - host: localhost - port: 6379 - password: 123456 - rabbitmq: - host: localhost - port: 15672 - username: root - password: 123456 - minio: - endpoint: http://localhost:9000 - accessKey: minioadmin - secretKey: minioadmin +# lj: +# db: +# host: localhost +# password: 123456 +# redis: +# host: localhost +# port: 6379 +# password: 123456 +# rabbitmq: +# host: localhost +# port: 15672 +# username: root +# password: 123456 +# minio: +# endpoint: http://localhost:9000 +# accessKey: minioadmin +# secretKey: minioadmin -#lj: -# db: -# host: 192.168.59.129 -# password: Forely123! -# redis: -# host: 192.168.59.129 -# port: 6379 -# password: Forely123! -# rabbitmq: -# host: 192.168.59.129 -# port: 5672 -# username: admin -# password: Forely123! -# minio: -# endpoint: http://192.168.59.129:9000 -# accessKey: forely -# secretKey: Forely123! +lj: + db: + host: 192.168.59.129 + password: Forely123! + redis: + host: 192.168.59.129 + port: 6379 + password: Forely123! + rabbitmq: + host: 192.168.59.129 + port: 5672 + username: admin + password: Forely123! + minio: + endpoint: http://192.168.59.129:9000 + accessKey: forely + secretKey: Forely123! diff --git a/珞珈岛-项目相关文件/luojia-island/service/target/classes/application-local.yaml b/珞珈岛-项目相关文件/luojia-island/service/target/classes/application-local.yaml index 4fbcddd..c163548 100644 --- a/珞珈岛-项目相关文件/luojia-island/service/target/classes/application-local.yaml +++ b/珞珈岛-项目相关文件/luojia-island/service/target/classes/application-local.yaml @@ -1,36 +1,36 @@ #本地开发环境 - lj: - db: - host: localhost - password: 123456 - redis: - host: localhost - port: 6379 - password: 123456 - rabbitmq: - host: localhost - port: 15672 - username: root - password: 123456 - minio: - endpoint: http://localhost:9000 - accessKey: minioadmin - secretKey: minioadmin +# lj: +# db: +# host: localhost +# password: 123456 +# redis: +# host: localhost +# port: 6379 +# password: 123456 +# rabbitmq: +# host: localhost +# port: 15672 +# username: root +# password: 123456 +# minio: +# endpoint: http://localhost:9000 +# accessKey: minioadmin +# secretKey: minioadmin -#lj: -# db: -# host: 192.168.59.129 -# password: Forely123! -# redis: -# host: 192.168.59.129 -# port: 6379 -# password: Forely123! -# rabbitmq: -# host: 192.168.59.129 -# port: 5672 -# username: admin -# password: Forely123! -# minio: -# endpoint: http://192.168.59.129:9000 -# accessKey: forely -# secretKey: Forely123! +lj: + db: + host: 192.168.59.129 + password: Forely123! + redis: + host: 192.168.59.129 + port: 6379 + password: Forely123! + rabbitmq: + host: 192.168.59.129 + port: 5672 + username: admin + password: Forely123! + minio: + endpoint: http://192.168.59.129:9000 + accessKey: forely + secretKey: Forely123! diff --git a/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/post/dto/resp/PostBasicInfoDTO.class b/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/post/dto/resp/PostBasicInfoDTO.class index 0631241..de3c448 100644 Binary files a/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/post/dto/resp/PostBasicInfoDTO.class and b/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/post/dto/resp/PostBasicInfoDTO.class differ diff --git a/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/post/dto/resp/PostInfoDTO.class b/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/post/dto/resp/PostInfoDTO.class index a3e90a7..2621fa2 100644 Binary files a/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/post/dto/resp/PostInfoDTO.class and b/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/post/dto/resp/PostInfoDTO.class differ diff --git a/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/post/service/impl/PostServiceImpl.class b/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/post/service/impl/PostServiceImpl.class index 3360cc4..5196c68 100644 Binary files a/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/post/service/impl/PostServiceImpl.class and b/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/post/service/impl/PostServiceImpl.class differ diff --git a/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/user/controller/UserLoginController.class b/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/user/controller/UserLoginController.class index 1dcb6d2..b493fc1 100644 Binary files a/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/user/controller/UserLoginController.class and b/珞珈岛-项目相关文件/luojia-island/service/target/classes/com/luojia_channel/modules/user/controller/UserLoginController.class differ