diff --git a/aurora-springboot/package.json b/aurora-springboot/package.json index 2387e27..793b8c7 100644 --- a/aurora-springboot/package.json +++ b/aurora-springboot/package.json @@ -1,6 +1,9 @@ { "name": "aurora-springboot", "version": "1.0.0", + "scripts": { + "deploy": "node deploy.js" + }, "dependencies": { "chalk": "^4.1.2", "dotenv": "^16.0.3", diff --git a/aurora-springboot/src/main/java/com/aurora/mapper/CommentMapper.java b/aurora-springboot/src/main/java/com/aurora/mapper/CommentMapper.java index 47e6d79..a97599c 100644 --- a/aurora-springboot/src/main/java/com/aurora/mapper/CommentMapper.java +++ b/aurora-springboot/src/main/java/com/aurora/mapper/CommentMapper.java @@ -26,6 +26,8 @@ public interface CommentMapper extends BaseMapper { List listCommentsAdmin(@Param("current") Long current, @Param("size") Long size, @Param("conditionVO") ConditionVO conditionVO); - List listCommentCountByTopicIds(@Param("topicIds") List topicIds); + List listCommentCountByTypeAndTopicIds(@Param("type") Integer type, @Param("topicIds") List topicIds); + + CommentCountDTO listCommentCountByTypeAndTopicId(@Param("type") Integer type, @Param("topicId") Integer topicId); } diff --git a/aurora-springboot/src/main/java/com/aurora/model/dto/CommentCountDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/CommentCountDTO.java index c851143..e63d162 100644 --- a/aurora-springboot/src/main/java/com/aurora/model/dto/CommentCountDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/CommentCountDTO.java @@ -14,4 +14,5 @@ public class CommentCountDTO { private Integer id; private Integer commentCount; + } diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/TalkServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/TalkServiceImpl.java index b21310f..39f5353 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/TalkServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/TalkServiceImpl.java @@ -1,6 +1,7 @@ package com.aurora.service.impl; import com.alibaba.fastjson.JSON; +import com.aurora.enums.CommentTypeEnum; import com.aurora.model.dto.CommentCountDTO; import com.aurora.model.dto.TalkAdminDTO; import com.aurora.model.dto.TalkDTO; @@ -39,7 +40,6 @@ public class TalkServiceImpl extends ServiceImpl implements Ta @Autowired private CommentMapper commentMapper; - @Override public PageResultDTO listTalks() { Integer count = talkMapper.selectCount((new LambdaQueryWrapper() @@ -51,7 +51,7 @@ public class TalkServiceImpl extends ServiceImpl implements Ta List talkIds = talkDTOs.stream() .map(TalkDTO::getId) .collect(Collectors.toList()); - Map commentCountMap = commentMapper.listCommentCountByTopicIds(talkIds) + Map commentCountMap = commentMapper.listCommentCountByTypeAndTopicIds(CommentTypeEnum.TALK.getType(), talkIds) .stream() .collect(Collectors.toMap(CommentCountDTO::getId, CommentCountDTO::getCommentCount)); talkDTOs.forEach(item -> { @@ -72,6 +72,8 @@ public class TalkServiceImpl extends ServiceImpl implements Ta if (Objects.nonNull(talkDTO.getImages())) { talkDTO.setImgs(CommonUtil.castList(JSON.parseObject(talkDTO.getImages(), List.class), String.class)); } + CommentCountDTO commentCountDTO = commentMapper.listCommentCountByTypeAndTopicId(CommentTypeEnum.TALK.getType(), talkId); + talkDTO.setCommentCount(commentCountDTO.getCommentCount()); return talkDTO; } diff --git a/aurora-springboot/src/main/resources/mapper/CommentMapper.xml b/aurora-springboot/src/main/resources/mapper/CommentMapper.xml index df64dbe..f36d884 100644 --- a/aurora-springboot/src/main/resources/mapper/CommentMapper.xml +++ b/aurora-springboot/src/main/resources/mapper/CommentMapper.xml @@ -70,7 +70,8 @@ FROM t_comment c JOIN t_user_info u ON c.user_id = u.id where c.is_review = 1 - ORDER BY c.id DESC LIMIT 0 , 6 + ORDER BY c.id DESC + LIMIT 0 , 6 - SELECT topic_id as id, COUNT( 1 ) AS comment_count FROM t_comment - WHERE + WHERE type = #{type} + AND topic_id IN #{topicId} - AND - parent_id IS NULL GROUP BY topic_id + \ No newline at end of file