Commit f2ed14cd by Author name

2.10 更新博客和博客评论里面的用户信息

parent 5fe06029
package cn.meteor.beyondclouds.modules.blog.listener;
import cn.meteor.beyondclouds.core.listener.DataItemChangeListener;
import cn.meteor.beyondclouds.modules.blog.service.IBlogCommentService;
import cn.meteor.beyondclouds.modules.blog.service.IBlogService;
import cn.meteor.beyondclouds.modules.queue.message.DataItemChangeMessage;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
......@@ -13,8 +16,27 @@ import org.springframework.stereotype.Component;
@Component("blogUserInfoChangeListener")
public class UserInfoChangeListener extends DataItemChangeListener {
private IBlogService blogService;
private IBlogCommentService blogCommentService;
@Autowired
public UserInfoChangeListener(IBlogService blogService, IBlogCommentService blogCommentService) {
this.blogService = blogService;
this.blogCommentService = blogCommentService;
}
@Override
public void onUserAvatarUpdate(DataItemChangeMessage dataItemChangeMessage) {
log.debug("blog-用户头像更新:{}", dataItemChangeMessage);
String userId = (String) dataItemChangeMessage.getItemId();
blogCommentService.updateBlogCommentUserAvatar(userId);
}
public void onUserNickUpdate(DataItemChangeMessage dataItemChangeMessage) {
log.debug("bolg-用户昵称更新:{}", dataItemChangeMessage);
String userId = (String) dataItemChangeMessage.getItemId();
blogService.updateBlogUserNick(userId);
blogCommentService.updateBlogCommentUserNick(userId);
}
}
......@@ -42,5 +42,17 @@ public interface IBlogCommentService extends IService<BlogComment> {
* @return
*/
IPage<BlogComment> getCommentPage(Integer pageNumber, Integer size, String blogId, Integer parentId) throws BlogCommentServiceException;
/**
* 更新博客评论的用户昵称
* @param userId
*/
void updateBlogCommentUserNick(String userId);
/**
* 更新博客评论的用户头像
* @param userId
*/
void updateBlogCommentUserAvatar(String userId);
}
......@@ -106,5 +106,17 @@ public interface IBlogService extends IService<Blog> {
* @return
*/
IPage<Blog> getRelatedBlogPage(Integer page, Integer size, String blogId);
/**
* 更新博客的用户昵称
* @param userId
*/
void updateBlogUserNick(String userId);
/**
* 更新博客的用户头像
* @param userId
*/
void updateBlogUserAvatar(String userId);
}
......@@ -12,6 +12,7 @@ import cn.meteor.beyondclouds.modules.blog.service.IBlogService;
import cn.meteor.beyondclouds.modules.user.entity.User;
import cn.meteor.beyondclouds.modules.user.service.IUserService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
......@@ -148,7 +149,7 @@ public class BlogCommentServiceImpl extends ServiceImpl<BlogCommentMapper, BlogC
}
//4.删除评论
QueryWrapper blogCommentQueryWrapper = new QueryWrapper();
QueryWrapper<BlogComment> blogCommentQueryWrapper = new QueryWrapper();
blogCommentQueryWrapper.like("thread", blogComment.getThread());
remove(blogCommentQueryWrapper);
}
......@@ -170,7 +171,7 @@ public class BlogCommentServiceImpl extends ServiceImpl<BlogCommentMapper, BlogC
//如果parentId为null,则只获取一级评论
if (null == parentId) {
QueryWrapper blogCommentQueryWrapper = new QueryWrapper();
QueryWrapper<BlogComment> blogCommentQueryWrapper = new QueryWrapper();
blogCommentQueryWrapper.eq("blog_id", blogId);
blogCommentQueryWrapper.eq("depth", 0);
blogCommentQueryWrapper.orderByDesc("create_time");
......@@ -183,12 +184,36 @@ public class BlogCommentServiceImpl extends ServiceImpl<BlogCommentMapper, BlogC
throw new BlogCommentServiceException(BlogCommentErrorCode.PARENT_COMMENT_NOT_FOUND);
}
//根据parentId查出其子评论
QueryWrapper blogCommentQueryWrapper = new QueryWrapper();
QueryWrapper<BlogComment> blogCommentQueryWrapper = new QueryWrapper();
blogCommentQueryWrapper.eq("parent_id", parentId);
return page(page,blogCommentQueryWrapper);
}
@Override
public void updateBlogCommentUserNick(String userId) {
User user = userService.getById(userId);
if (null != user) {
String userNick = user.getNickName();
UpdateWrapper<BlogComment> blogCommentUserNickUpdateWrapper = new UpdateWrapper();
blogCommentUserNickUpdateWrapper.eq("user_id", userId);
blogCommentUserNickUpdateWrapper.set("user_nick", userNick);
update(blogCommentUserNickUpdateWrapper);
}
}
@Override
public void updateBlogCommentUserAvatar(String userId) {
User user = userService.getById(userId);
if (null != user) {
String userAvatar = user.getUserAvatar();
UpdateWrapper<BlogComment> blogCommentUserAvatarUpdateWrapper = new UpdateWrapper<>();
blogCommentUserAvatarUpdateWrapper.eq("user_id", userId);
blogCommentUserAvatarUpdateWrapper.set("user_avatar", userAvatar);
update(blogCommentUserAvatarUpdateWrapper);
}
}
}
package cn.meteor.beyondclouds.modules.blog.service.impl;
import cn.meteor.beyondclouds.core.bean.Subject;
import cn.meteor.beyondclouds.core.validation.groups.UpdateGroup;
import cn.meteor.beyondclouds.modules.blog.bean.BlogDetail;
import cn.meteor.beyondclouds.modules.blog.entity.Blog;
import cn.meteor.beyondclouds.modules.blog.entity.BlogCategory;
import cn.meteor.beyondclouds.modules.blog.entity.BlogExt;
import cn.meteor.beyondclouds.modules.blog.entity.BlogTag;
import cn.meteor.beyondclouds.modules.blog.entity.*;
import cn.meteor.beyondclouds.modules.blog.enums.BlogCategoryErrorCode;
import cn.meteor.beyondclouds.modules.blog.enums.BlogErrorCode;
import cn.meteor.beyondclouds.modules.blog.exception.BlogCategoryServiceException;
......@@ -27,6 +25,7 @@ import cn.meteor.beyondclouds.modules.user.service.IUserService;
import cn.meteor.beyondclouds.util.AbstractUtils;
import cn.meteor.beyondclouds.util.PageUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
......@@ -179,22 +178,22 @@ public class BlogServiceImpl extends ServiceImpl<BlogMapper, Blog> implements IB
}
//2.删除博客评论表
QueryWrapper queryWrapperComment = new QueryWrapper();
QueryWrapper<BlogComment> queryWrapperComment = new QueryWrapper();
queryWrapperComment.eq("blog_id",blogId);
blogCommentService.remove(queryWrapperComment);
//3.删除博客内容
QueryWrapper queryWrapperExt = new QueryWrapper();
QueryWrapper<BlogExt> queryWrapperExt = new QueryWrapper();
queryWrapperExt.eq("blog_id", blogId);
blogExtService.remove(queryWrapperExt);
//4.删除博客标签
QueryWrapper queryWrapperTag = new QueryWrapper();
QueryWrapper<BlogTag> queryWrapperTag = new QueryWrapper();
queryWrapperTag.eq("blog_id", blogId);
blogTagService.remove(queryWrapperTag);
//5.删除博客引用的话题
QueryWrapper queryWrapperTopic = new QueryWrapper();
QueryWrapper<TopicReference> queryWrapperTopic = new QueryWrapper();
queryWrapperTopic.eq("referencer_id", blogId);
topicReferenceService.remove(queryWrapperTopic);
......@@ -315,7 +314,7 @@ public class BlogServiceImpl extends ServiceImpl<BlogMapper, Blog> implements IB
*/
@Override
public IPage<Blog> getMyBlogPage(Integer pageNumber, Integer pageSize, String userId) {
QueryWrapper myBlogQueryWrapper = new QueryWrapper();
QueryWrapper<Blog> myBlogQueryWrapper = new QueryWrapper();
myBlogQueryWrapper.eq("b.user_id", userId);
myBlogQueryWrapper.orderByDesc("b.create_time");
IPage<Blog> page = new Page<>(pageNumber, pageSize);
......@@ -368,7 +367,7 @@ public class BlogServiceImpl extends ServiceImpl<BlogMapper, Blog> implements IB
BlogExt blogExt = new BlogExt();
blogExt.setBlogId(blog.getBlogId());
blogExt.setContent(content);
QueryWrapper blogExtQueryWrapper = new QueryWrapper();
QueryWrapper<BlogExt> blogExtQueryWrapper = new QueryWrapper();
blogExtQueryWrapper.eq("blog_id", blog.getBlogId());
blogExtService.update(blogExt,blogExtQueryWrapper);
}
......@@ -496,7 +495,7 @@ public class BlogServiceImpl extends ServiceImpl<BlogMapper, Blog> implements IB
@Override
public IPage<Blog> getHotBlogPage(Integer pageNumber, Integer pageSize) {
QueryWrapper blogQueryWrapper = new QueryWrapper();
QueryWrapper<Blog> blogQueryWrapper = new QueryWrapper();
blogQueryWrapper.orderByDesc("view_number");
IPage<Blog> page = new Page<>(pageNumber, pageSize);
return blogMapper.selectPageWithTags(page, blogQueryWrapper);
......@@ -560,4 +559,28 @@ public class BlogServiceImpl extends ServiceImpl<BlogMapper, Blog> implements IB
return blogPage;
}
}
@Override
public void updateBlogUserNick(String userId) {
User user = userService.getById(userId);
if (null != user) {
String userNick = user.getNickName();
UpdateWrapper<Blog> blogUserNickUpdateWrapper = new UpdateWrapper();
blogUserNickUpdateWrapper.eq("user_id", userId);
blogUserNickUpdateWrapper.set("user_nick", userNick);
update(blogUserNickUpdateWrapper);
}
}
@Override
public void updateBlogUserAvatar(String userId) {
User user = userService.getById(userId);
if (null != user) {
String userAvatar = user.getUserAvatar();
UpdateWrapper<Blog> blogUserAvatarUpdeteWrapper = new UpdateWrapper<>();
blogUserAvatarUpdeteWrapper.eq("user_id", userId);
blogUserAvatarUpdeteWrapper.set("user_avatar", userAvatar);
update(blogUserAvatarUpdeteWrapper);
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment