评论新增replyCommentId字段 关联上级评论

This commit is contained in:
tianfeng 2026-02-04 18:05:31 +08:00
parent 9a96b016cc
commit 15b28fe6b5
9 changed files with 39 additions and 4 deletions

View File

@ -197,6 +197,7 @@ public class DynamicCommentCmdExe {
if (Objects.nonNull(cmd.getToUserId())) { if (Objects.nonNull(cmd.getToUserId())) {
comment.setRootCommentId(cmd.getRootCommentId()); comment.setRootCommentId(cmd.getRootCommentId());
} }
comment.setReplyCommentId(cmd.getCommentId());
dynamicCommentService.save(comment); dynamicCommentService.save(comment);
return comment; return comment;

View File

@ -68,6 +68,7 @@ public class DynamicCommentDelCmdExe {
updateScore(cmd, comment); updateScore(cmd, comment);
dynamicCommentService.deleteByRootCommentId(cmd.getId()); dynamicCommentService.deleteByRootCommentId(cmd.getId());
dynamicCommentService.deleteByReplyCommentId(cmd.getId());
dynamicCommentLikeService.deleteByRootCommentId(cmd.getId()); dynamicCommentLikeService.deleteByRootCommentId(cmd.getId());
Integer dynamicCommentCount = dynamicCommentService Integer dynamicCommentCount = dynamicCommentService
@ -95,12 +96,12 @@ public class DynamicCommentDelCmdExe {
private Long deleteComment(AppIdLongCmd cmd, DynamicComment comment) { private Long deleteComment(AppIdLongCmd cmd, DynamicComment comment) {
dynamicCommentService.deleteById(cmd.getId()); dynamicCommentService.deleteById(cmd.getId());
dynamicCommentService.deleteByReplyCommentId(cmd.getId());
dynamicPopularService.updateScore(comment.getDynamicContentId(), Integer dynamicCommentCount = dynamicCommentService
-(getCommentLikeQuantity(comment).intValue() * dynamicCacheService.getLikeScore()), .getNumberByDynamicId(comment.getDynamicContentId());
cmd.getReqSysOrigin().getOrigin(), null);
return dynamicCacheService.updateCommentQuantity(comment.getDynamicContentId(), -1); return dynamicCacheService.initCommentQuantity(comment.getDynamicContentId(), dynamicCommentCount).longValue();
} }
private Long getCommentLikeQuantity(DynamicComment comment) { private Long getCommentLikeQuantity(DynamicComment comment) {

View File

@ -56,6 +56,7 @@ public class DynamicChildCommentQryExe {
listCO.setUserSex(createUser.getUserSex()); listCO.setUserSex(createUser.getUserSex());
listCO.setUserId(createUser.getId()); listCO.setUserId(createUser.getId());
listCO.setRootCommentId(comment.getRootCommentId()); listCO.setRootCommentId(comment.getRootCommentId());
listCO.setReplyCommentId(comment.getReplyCommentId());
UserProfile toUser = userMap.get(comment.getToUserId()); UserProfile toUser = userMap.get(comment.getToUserId());
if (Objects.nonNull(toUser)) { if (Objects.nonNull(toUser)) {

View File

@ -73,6 +73,7 @@ public class DynamicCommentQryExe {
listCO.setUserSex(createUser.getUserSex()); listCO.setUserSex(createUser.getUserSex());
listCO.setUserId(createUser.getId()); listCO.setUserId(createUser.getId());
listCO.setRootCommentId(comment.getRootCommentId()); listCO.setRootCommentId(comment.getRootCommentId());
listCO.setReplyCommentId(comment.getReplyCommentId());
UserProfile toUser = userMap.get(comment.getToUserId()); UserProfile toUser = userMap.get(comment.getToUserId());
if (Objects.nonNull(toUser)) { if (Objects.nonNull(toUser)) {

View File

@ -94,6 +94,12 @@ public class DynamicCommentListCO extends ClientObject {
*/ */
private Long rootCommentId; private Long rootCommentId;
/**
* 回复评论ID
*/
private Long replyCommentId;
/** /**
* 子评论数量仅根评论有值 * 子评论数量仅根评论有值
*/ */

View File

@ -39,6 +39,11 @@ public class DynamicCommentCmd extends AppExtCommand {
*/ */
private Long toUserId; private Long toUserId;
/**
* 评论ID
*/
private Long commentId;
/** /**
* 根评论ID * 根评论ID
*/ */

View File

@ -54,6 +54,12 @@ public class DynamicComment extends TimestampBaseEntity {
@TableField("root_comment_id") @TableField("root_comment_id")
private Long rootCommentId; private Long rootCommentId;
/**
* 回复评论ID
*/
@TableField("reply_comment_id")
private Long replyCommentId;
/** /**
* 热度分数 * 热度分数
*/ */

View File

@ -85,6 +85,12 @@ public interface DynamicCommentService extends BaseService<DynamicComment> {
*/ */
void deleteByRootCommentId(Long rootCommentId); void deleteByRootCommentId(Long rootCommentId);
/**
* 根据回复评论id删除
*
*/
void deleteByReplyCommentId(Long rootCommentId);
/** /**
* 根据评论id删除评论 * 根据评论id删除评论
* *

View File

@ -149,6 +149,14 @@ public class DynamicCommentServiceImpl extends
delete().eq(DynamicComment::getId, rootCommentId).last(PageConstant.LIMIT_ONE).execute(); delete().eq(DynamicComment::getId, rootCommentId).last(PageConstant.LIMIT_ONE).execute();
} }
@Override
public void deleteByReplyCommentId(Long replyCommentId) {
if (Objects.isNull(replyCommentId)) {
return;
}
delete().eq(DynamicComment::getReplyCommentId, replyCommentId).execute();
}
@Override @Override
public void deleteById(Long id) { public void deleteById(Long id) {
if (Objects.isNull(id)) { if (Objects.isNull(id)) {