Controller
@Override
public R list(String articleId, Integer page, Integer pageSize) {
PageUtils gridResult = commentPortalService.queryArticleComments(articleId, page, pageSize);
return R.ok(gridResult);
}
Service
@Override
public PageUtils queryArticleComments(String articleId, Integer page, Integer pageSize) {
Map<String, Object> map = new HashMap<>();
map.put("articleId", articleId);
Page<CommentsVO> pages = new Page<>(page, pageSize);
//将查询结果封装到page中,作为page中的数据
pages.setRecords(baseMapper.queryArticleCommentList(pages, map));
return new PageUtils(pages);
}
Mapper
List<CommentsVO> queryArticleCommentList(Page<CommentsVO> page, @Param("paramMap") Map<String, Object> map);
Xml
<select id="queryArticleCommentList" resultType="cc.sunni.pojo.vo.CommentsVO" parameterType="Map">
SELECT
c.id as commentId,
c.father_id as fatherId,
c.comment_user_id as commentUserId,
c.comment_user_nickname as commentUserNickname,
c.article_id as articleId,
c.content as content,
c.create_time as createTime,
f.comment_user_nickname as quoteUserNickname,
f.content as quoteContent
FROM
comments c
LEFT JOIN
comments f
ON
c.father_id = f.id
WHERE
c.article_id = #{paramMap.articleId}
ORDER BY
c.create_time
DESC
</select>