|
|
|
|
@ -187,6 +187,21 @@ public interface PostMapper {
|
|
|
|
|
@ResultMap("PostResultMap")
|
|
|
|
|
List<Post> selectReviewedPosts(@Param("offset") int offset, @Param("limit") int limit);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 分页查询已审核帖子(包含用户信息、审核方式 - 用于管理后台)
|
|
|
|
|
*/
|
|
|
|
|
@Select("SELECT p.id, p.content, p.images, p.visibility, p.status, p.author_id, " +
|
|
|
|
|
"p.created_at, p.approved_at, p.reviewed_by, p.reject_reason, p.review_type, " +
|
|
|
|
|
"u.username as user_name, u.avatar_url as user_avatar, " +
|
|
|
|
|
"(SELECT COUNT(*) FROM interactions WHERE post_id = p.id) as comments_count " +
|
|
|
|
|
"FROM posts p " +
|
|
|
|
|
"LEFT JOIN users u ON p.author_id = u.id " +
|
|
|
|
|
"WHERE p.status IN ('approved', 'rejected') " +
|
|
|
|
|
"ORDER BY p.approved_at DESC " +
|
|
|
|
|
"LIMIT #{limit} OFFSET #{offset}")
|
|
|
|
|
@ResultMap("PostResultMap")
|
|
|
|
|
List<Post> selectReviewedPostsWithUserInfo(@Param("offset") int offset, @Param("limit") int limit);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 根据状态分页查询帖子(包含图片和拒绝原因)
|
|
|
|
|
*/
|
|
|
|
|
@ -202,6 +217,23 @@ public interface PostMapper {
|
|
|
|
|
@Param("offset") int offset,
|
|
|
|
|
@Param("limit") int limit);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 根据状态分页查询帖子(包含用户信息、审核方式 - 用于管理后台)
|
|
|
|
|
*/
|
|
|
|
|
@Select("SELECT p.id, p.content, p.images, p.visibility, p.status, p.author_id, " +
|
|
|
|
|
"p.created_at, p.approved_at, p.reviewed_by, p.reject_reason, p.review_type, " +
|
|
|
|
|
"u.username as user_name, u.avatar_url as user_avatar, " +
|
|
|
|
|
"(SELECT COUNT(*) FROM interactions WHERE post_id = p.id) as comments_count " +
|
|
|
|
|
"FROM posts p " +
|
|
|
|
|
"LEFT JOIN users u ON p.author_id = u.id " +
|
|
|
|
|
"WHERE p.status = #{status} " +
|
|
|
|
|
"ORDER BY p.created_at DESC " +
|
|
|
|
|
"LIMIT #{limit} OFFSET #{offset}")
|
|
|
|
|
@ResultMap("PostResultMap")
|
|
|
|
|
List<Post> selectPostsByStatusWithUserInfo(@Param("status") Post.Status status,
|
|
|
|
|
@Param("offset") int offset,
|
|
|
|
|
@Param("limit") int limit);
|
|
|
|
|
|
|
|
|
|
// ==================== 帖子发布相关方法 ====================
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|