diff --git a/src/main/java/com/bao/dating/mapper/PostLikeMapper.java b/src/main/java/com/bao/dating/mapper/PostLikeMapper.java index 2de398e..41783e4 100644 --- a/src/main/java/com/bao/dating/mapper/PostLikeMapper.java +++ b/src/main/java/com/bao/dating/mapper/PostLikeMapper.java @@ -6,11 +6,29 @@ import org.apache.ibatis.annotations.Param; @Mapper public interface PostLikeMapper { - //根据 postId 和 userId 查询点赞记录 用于判断是否已经点赞 + /** + * 根据 postId 和 userId 查询点赞记录 用于判断是否已经点赞 + * @param postId + * @param userId + * @return + */ PostLike findByPostAndUser(@Param("postId") Long postId, @Param("userId") Long userId); + /** + * 插入点赞记录 + * + * @param postLike + * @return + */ int insert(PostLike postLike); - // 根据 postId + userId 删除点赞 + /** + * 删除点赞记录 + * 根据 postId + userId 删除点赞 + * + * @param postId + * @param userId + * @return + */ int deleteByPostIdAndUserId(@Param("postId") Long postId, @Param("userId") Long userId); } diff --git a/src/main/java/com/bao/dating/mapper/PostMapper.java b/src/main/java/com/bao/dating/mapper/PostMapper.java index 8d78c84..b3ba80c 100644 --- a/src/main/java/com/bao/dating/mapper/PostMapper.java +++ b/src/main/java/com/bao/dating/mapper/PostMapper.java @@ -5,13 +5,44 @@ import org.apache.ibatis.annotations.Mapper; @Mapper public interface PostMapper { + /** + * 插入动态 + * + * @param post 动态对象 + * @return 插入的行数 + */ int insert(Post post); - int increaseLikeCount(Long postId); + /** + * 根据ID删除动态 + * + * @param postId 动态ID + * @return 删除的行数 + */ + int deletePostById(Integer postId); + /*** + * 查询点赞数 + * + * @param postId + * @return + */ int selectLikeCount(Long postId); - int decreaseLikeCount(Long postId); - int deletePostById(Integer postId); + /** + * 点赞数+1 + * + * @param postId 动态ID + * @return 影响行数 + */ + int increaseLikeCount(Long postId); + + /** + * 点赞数-1 + * + * @param postId 动态ID + * @return 影响行数 + */ + int decreaseLikeCount(Long postId); } diff --git a/src/main/java/com/bao/dating/pojo/dto/PostRequestDTO.java b/src/main/java/com/bao/dating/pojo/dto/PostRequestDTO.java index 5f7eeab..fde914d 100644 --- a/src/main/java/com/bao/dating/pojo/dto/PostRequestDTO.java +++ b/src/main/java/com/bao/dating/pojo/dto/PostRequestDTO.java @@ -7,7 +7,7 @@ import java.util.List; @Data public class PostRequestDTO { - private Integer userId; + private Long userId; private String content; private List tags; private List mediaUrls; diff --git a/src/main/java/com/bao/dating/service/PostLikeService.java b/src/main/java/com/bao/dating/service/PostLikeService.java index 0434e7e..ba705c0 100644 --- a/src/main/java/com/bao/dating/service/PostLikeService.java +++ b/src/main/java/com/bao/dating/service/PostLikeService.java @@ -11,6 +11,12 @@ public interface PostLikeService { * @return 统一返回结果 */ Result likePost(Long postId, Long userId); - //取消点赞 + + /** + * 取消点赞指定的 post + * + * @param postId 帖子ID + * @param userId 用户ID + */ void unlike(Long postId, Long userId); } diff --git a/src/main/java/com/bao/dating/service/impl/PostLikeServiceImpl.java b/src/main/java/com/bao/dating/service/impl/PostLikeServiceImpl.java index b1564f2..ee43274 100644 --- a/src/main/java/com/bao/dating/service/impl/PostLikeServiceImpl.java +++ b/src/main/java/com/bao/dating/service/impl/PostLikeServiceImpl.java @@ -24,6 +24,13 @@ public class PostLikeServiceImpl implements PostLikeService { + /** + * 点赞指定的 post + * + * @param postId 帖子ID + * @param userId 用户ID + * @return 统一返回结果 + */ @Override @Transactional // 保证点赞 + 点赞数更新是一个事务 public Result likePost(Long postId, Long userId) { @@ -51,6 +58,12 @@ public class PostLikeServiceImpl implements PostLikeService { return Result.success(ResultCode.SUCCESS_REVIEW,"点赞成功",data); } + /** + * 取消点赞指定的 post + * + * @param postId 帖子ID + * @param userId 用户ID + */ @Override @Transactional public void unlike(Long postId, Long userId) { diff --git a/src/main/resources/com/bao/dating/mapper/PostMapper.xml b/src/main/resources/com/bao/dating/mapper/PostMapper.xml index 577ae03..fcb9c1d 100644 --- a/src/main/resources/com/bao/dating/mapper/PostMapper.xml +++ b/src/main/resources/com/bao/dating/mapper/PostMapper.xml @@ -3,7 +3,8 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + + INSERT INTO post (user_id, content, @@ -26,10 +27,18 @@ #{isPublic}, 0, 0, #{createdAt}, #{updatedAt}) + + + + DELETE FROM post WHERE post_id = #{postId} + + update dating.post set like_count = like_count + 1 where post.post_id = #{postId} + + update dating.post set like_count= like_count - 1 where post.post_id = #{postId} @@ -39,8 +48,4 @@ select dating.post.like_count from dating.post where post.post_id = #{postId} - - DELETE FROM post WHERE post_id = #{postId} - - \ No newline at end of file