Commit f259d7ac by 段启岩

我的项目列表

parent a343aba2
package cn.meteor.beyondclouds.core.queue.message;
import cn.meteor.beyondclouds.modules.blog.entity.Blog;
import cn.meteor.beyondclouds.modules.blog.entity.BlogComment;
import cn.meteor.beyondclouds.modules.post.entity.Post;
import cn.meteor.beyondclouds.modules.post.entity.PostComment;
import cn.meteor.beyondclouds.modules.project.entity.Project;
import cn.meteor.beyondclouds.modules.project.entity.ProjectComment;
import cn.meteor.beyondclouds.modules.question.entity.Question;
import cn.meteor.beyondclouds.modules.question.entity.QuestionReply;
import cn.meteor.beyondclouds.modules.question.entity.QuestionReplyComment;
import cn.meteor.beyondclouds.modules.user.entity.User;
import cn.meteor.beyondclouds.modules.user.entity.UserFollow;
import cn.meteor.beyondclouds.modules.user.entity.UserStatistics;
......@@ -37,11 +41,21 @@ public enum DataItemType {
BLOG_VIEW_NUM(Blog.class),
/**
* 博客评论
*/
BLOG_COMMENT(BlogComment.class),
/**
* 项目
*/
PROJECT(Project.class),
/**
* 项目评论
*/
PROJECT_COMMENT(ProjectComment.class),
/**
* 话题
*/
TOPIC(Project.class),
......@@ -52,6 +66,11 @@ public enum DataItemType {
POST(Post.class),
/**
* 动态评论
*/
POST_COMMENT(PostComment.class),
/**
* 问答
*/
QUESTION(Question.class),
......@@ -62,6 +81,12 @@ public enum DataItemType {
QUESTION_REPLY(QuestionReply.class),
/**
* 回答被评论
*/
QUESTION_REPLY_COMMENT(QuestionReplyComment.class),
/**
* 问题回答 被采纳
*/
QUESTION_REPLY_ACCEPT(QuestionReply.class),
......
......@@ -3,8 +3,20 @@ package cn.meteor.beyondclouds.modules.message.listener;
import cn.meteor.beyondclouds.core.listener.DataItemChangeListener;
import cn.meteor.beyondclouds.core.queue.message.DataItemChangeMessage;
import cn.meteor.beyondclouds.core.queue.message.DataItemType;
import cn.meteor.beyondclouds.modules.blog.entity.Blog;
import cn.meteor.beyondclouds.modules.blog.entity.BlogComment;
import cn.meteor.beyondclouds.modules.blog.service.IBlogCommentService;
import cn.meteor.beyondclouds.modules.blog.service.IBlogService;
import cn.meteor.beyondclouds.modules.message.entity.Message;
import cn.meteor.beyondclouds.modules.message.service.IMessageService;
import cn.meteor.beyondclouds.modules.post.entity.Post;
import cn.meteor.beyondclouds.modules.post.entity.PostComment;
import cn.meteor.beyondclouds.modules.post.service.IPostCommentService;
import cn.meteor.beyondclouds.modules.post.service.IPostService;
import cn.meteor.beyondclouds.modules.project.entity.Project;
import cn.meteor.beyondclouds.modules.project.entity.ProjectComment;
import cn.meteor.beyondclouds.modules.project.service.IProjectCommentService;
import cn.meteor.beyondclouds.modules.project.service.IProjectService;
import cn.meteor.beyondclouds.modules.user.entity.User;
import cn.meteor.beyondclouds.modules.user.entity.UserFollow;
import cn.meteor.beyondclouds.modules.user.service.IUserFollowService;
......@@ -23,6 +35,12 @@ public class MessageListener implements DataItemChangeListener {
private IMessageService messageService;
private IUserFollowService userFollowService;
private IUserService userService;
private IBlogService blogService;
private IBlogCommentService blogCommentService;
private IProjectService projectService;
private IProjectCommentService projectCommentService;
private IPostService postService;
private IPostCommentService postCommentService;
@Autowired
public void setMessageService(IMessageService messageService) {
......@@ -35,6 +53,36 @@ public class MessageListener implements DataItemChangeListener {
}
@Autowired
public void setPostService(IPostService postService) {
this.postService = postService;
}
@Autowired
public void setPostCommentService(IPostCommentService postCommentService) {
this.postCommentService = postCommentService;
}
@Autowired
public void setBlogService(IBlogService blogService) {
this.blogService = blogService;
}
@Autowired
public void setBlogCommentService(IBlogCommentService blogCommentService) {
this.blogCommentService = blogCommentService;
}
@Autowired
public void setProjectService(IProjectService projectService) {
this.projectService = projectService;
}
@Autowired
public void setProjectCommentService(IProjectCommentService projectCommentService) {
this.projectCommentService = projectCommentService;
}
@Autowired
public void setUserService(IUserService userService) {
this.userService = userService;
}
......@@ -44,6 +92,8 @@ public class MessageListener implements DataItemChangeListener {
DataItemType itemType = dataItemChangeMessage.getItemType();
Serializable itemId = dataItemChangeMessage.getItemId();
String operatorId = dataItemChangeMessage.getOperatorId();
// 关注消息
if (itemType.equals(DataItemType.USER_FOLLOW)) {
UserFollow userFollow = userFollowService.getById(itemId);
String followedUserId = userFollow.getFollowedId();
......@@ -58,6 +108,125 @@ public class MessageListener implements DataItemChangeListener {
messageService.save(message);
}
// 博客评论
if (itemType.equals(DataItemType.BLOG_COMMENT)) {
// 获取评论
BlogComment blogComment = blogCommentService.getById(itemId);
// 获取父评论
BlogComment parentComment = null;
if (blogComment.getParentId() != null) {
parentComment = blogCommentService.getById(blogComment.getParentId());
}
// 获取博客
Blog blog = blogService.getById(blogComment.getBlogId());
// 给博主发消息
Message messageToAuthor = new Message();
messageToAuthor.setUserId(blog.getUserId());
messageToAuthor.setMscContent(String.format("用户%s对您的博客%s进行了评论!", blogComment.getUserNick(), blog.getBlogTitle()));
messageService.save(messageToAuthor);
// 给父评论的用户发消息
if (null != parentComment) {
Message messageToParentCommenter = new Message();
messageToParentCommenter.setUserId(parentComment.getUserId());
messageToParentCommenter.setMscContent(String.format("用户%s对您在博客%s下的评论进行了回复", blogComment.getUserNick(), blog.getBlogTitle()));
}
}
// 项目评论
if (itemType.equals(DataItemType.PROJECT_COMMENT)) {
// 获取评论
ProjectComment comment = projectCommentService.getById(itemId);
// 获取父评论
ProjectComment parentComment = null;
if (comment.getParentId() != null) {
parentComment = projectCommentService.getById(parentComment.getParentId());
}
// 获取博客
Project project = projectService.getById(comment.getProjectId());
// 给博主发消息
Message messageToAuthor = new Message();
messageToAuthor.setUserId(project.getUserId());
messageToAuthor.setMscContent(String.format("用户%s对您的项目%s进行了评论!", comment.getUserNick(), project.getProjectName()));
messageService.save(messageToAuthor);
// 给父评论的用户发消息
if (null != parentComment) {
Message messageToParentCommenter = new Message();
messageToParentCommenter.setUserId(parentComment.getUserId());
messageToParentCommenter.setMscContent(String.format("用户%s对您在项目%s下的评论进行了回复", comment.getUserNick(), project.getProjectName()));
}
}
// 动态评论
if (itemType.equals(DataItemType.POST_COMMENT)) {
// 获取评论
PostComment comment = postCommentService.getById(itemId);
// 获取父评论
PostComment parentComment = null;
if (comment.getParentId() != null) {
parentComment = postCommentService.getById(parentComment.getParentId());
}
// 获取博客
Post post = postService.getById(comment.getPostId());
// 给博主发消息
Message messageToAuthor = new Message();
messageToAuthor.setUserId(post.getUserId());
messageToAuthor.setMscContent(String.format("用户%s对您的动态%s进行了评论!", comment.getUserNick(), post.getContent()));
messageService.save(messageToAuthor);
// 给父评论的用户发消息
if (null != parentComment) {
Message messageToParentCommenter = new Message();
messageToParentCommenter.setUserId(parentComment.getUserId());
messageToParentCommenter.setMscContent(String.format("用户%s对您在动态%s下的评论进行了回复", comment.getUserNick(), post.getContent()));
}
}
// 问题
if (itemType.equals(DataItemType.PROJECT_COMMENT)) {
// 获取评论
PostComment comment = postCommentService.getById(itemId);
// 获取父评论
PostComment parentComment = null;
if (comment.getParentId() != null) {
parentComment = postCommentService.getById(parentComment.getParentId());
}
// 获取博客
Post post = postService.getById(comment.getPostId());
// 给博主发消息
Message messageToAuthor = new Message();
messageToAuthor.setUserId(post.getUserId());
messageToAuthor.setMscContent(String.format("用户%s对您的动态%s进行了评论!", comment.getUserNick(), post.getContent()));
messageService.save(messageToAuthor);
// 给父评论的用户发消息
if (null != parentComment) {
Message messageToParentCommenter = new Message();
messageToParentCommenter.setUserId(parentComment.getUserId());
messageToParentCommenter.setMscContent(String.format("用户%s对您在动态%s下的评论进行了回复", comment.getUserNick(), post.getContent()));
}
}
}
}
......@@ -279,7 +279,9 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
IPage<Project> page = new Page<>(pageNumber, pageSize);
QueryWrapper<Project> projectQueryWrapper = new QueryWrapper<>();
projectQueryWrapper.eq("user_id", userId);
if (!SubjectUtils.isAuthenticated() || !SubjectUtils.getSubject().getId().equals(userId)) {
projectQueryWrapper.eq("status", 1);
}
projectQueryWrapper.orderByDesc("create_time");
return page(page, projectQueryWrapper);
}
......
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