[fix]优化评论逻辑
This commit is contained in:
parent
093758afe9
commit
8cff58e360
@ -378,9 +378,19 @@ public class CommentServiceImpl extends ServiceImpl<CommentMapper, Comment> impl
|
|||||||
}
|
}
|
||||||
bo.setCommentUserId(loginUser.getUserId());
|
bo.setCommentUserId(loginUser.getUserId());
|
||||||
|
|
||||||
|
Vlog vlog;
|
||||||
|
Comment father;
|
||||||
|
|
||||||
// 父评论为空时,按根评论处理(约定使用"0"作为无父评论标记)
|
// 父评论为空时,按根评论处理(约定使用"0"作为无父评论标记)
|
||||||
if (bo.getFatherCommentId() == null) {
|
if (bo.getFatherCommentId() == null) {
|
||||||
bo.setFatherCommentId(0L);
|
bo.setFatherCommentId(0L);
|
||||||
|
vlog = vlogMapper.selectById(bo.getVlogId());
|
||||||
|
father = null;
|
||||||
|
} else {
|
||||||
|
father = commentMapper.selectById(bo.getFatherCommentId());
|
||||||
|
vlog = vlogMapper.selectById(father.getVlogId());
|
||||||
|
bo.setVlogId(vlog.getId());
|
||||||
|
bo.setVlogerId(Long.valueOf(vlog.getMemberId()));
|
||||||
}
|
}
|
||||||
|
|
||||||
// 1) 创建评论
|
// 1) 创建评论
|
||||||
@ -393,15 +403,13 @@ public class CommentServiceImpl extends ServiceImpl<CommentMapper, Comment> impl
|
|||||||
// 3) 发送站内消息:根评论 -> 通知视频作者;回复评论 -> 通知被回复用户
|
// 3) 发送站内消息:根评论 -> 通知视频作者;回复评论 -> 通知被回复用户
|
||||||
|
|
||||||
|
|
||||||
Vlog vlog=vlogMapper.selectById(bo.getVlogId());
|
|
||||||
// 给评论或者作者发送通知
|
// 给评论或者作者发送通知
|
||||||
MqUtil.sendIMMessage(buildCommentMessage(bo,vlog));
|
MqUtil.sendIMMessage(buildCommentMessage(bo, vlog, father));
|
||||||
|
|
||||||
//检查是否有@
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private MQMessage buildCommentMessage(CommentBO bo,Vlog vlog) {
|
private MQMessage buildCommentMessage(CommentBO bo, Vlog vlog, Comment father) {
|
||||||
Map<String, Object> params = new HashMap<>();
|
Map<String, Object> params = new HashMap<>();
|
||||||
LoginUser loginUser = LoginHelper.getLoginUser();
|
LoginUser loginUser = LoginHelper.getLoginUser();
|
||||||
|
|
||||||
@ -425,7 +433,6 @@ public class CommentServiceImpl extends ServiceImpl<CommentMapper, Comment> impl
|
|||||||
|
|
||||||
} else {
|
} else {
|
||||||
// 回复评论,通知父评论作者
|
// 回复评论,通知父评论作者
|
||||||
Comment father = baseMapper.selectById(bo.getFatherCommentId());
|
|
||||||
if (father != null && father.getCommentUserId() != null
|
if (father != null && father.getCommentUserId() != null
|
||||||
&& !String.valueOf(loginUser.getUserId()).equals(father.getCommentUserId())) {
|
&& !String.valueOf(loginUser.getUserId()).equals(father.getCommentUserId())) {
|
||||||
params.put("userID", loginUser.getUserId());
|
params.put("userID", loginUser.getUserId());
|
||||||
|
@ -7,6 +7,7 @@ import com.wzj.soopin.im.domain.SysMessageTemplate;
|
|||||||
import com.wzj.soopin.im.domain.bo.SysMessageTemplateBo;
|
import com.wzj.soopin.im.domain.bo.SysMessageTemplateBo;
|
||||||
import com.wzj.soopin.im.mapper.SysMessageTemplateMapper;
|
import com.wzj.soopin.im.mapper.SysMessageTemplateMapper;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.dromara.common.core.exception.ServiceException;
|
||||||
import org.dromara.common.core.utils.MapstructUtils;
|
import org.dromara.common.core.utils.MapstructUtils;
|
||||||
import org.dromara.common.core.utils.StringUtils;
|
import org.dromara.common.core.utils.StringUtils;
|
||||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||||
@ -82,6 +83,13 @@ public class SysMessageTemplateServiceImpl extends ServiceImpl<SysMessageTemplat
|
|||||||
public SysMessageTemplate getTemplateByAction(Integer action) {
|
public SysMessageTemplate getTemplateByAction(Integer action) {
|
||||||
LambdaQueryWrapper<SysMessageTemplate> lqw = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<SysMessageTemplate> lqw = new LambdaQueryWrapper<>();
|
||||||
lqw.eq(SysMessageTemplate::getAction, action).eq(SysMessageTemplate::getStatus, 0);
|
lqw.eq(SysMessageTemplate::getAction, action).eq(SysMessageTemplate::getStatus, 0);
|
||||||
return templateMapper.selectOne(lqw);
|
List<SysMessageTemplate> templateList = templateMapper.selectList(lqw);
|
||||||
|
if (templateList.isEmpty()) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
if(templateList.size()>1){
|
||||||
|
throw new ServiceException("根据操作类型查询模板数量大于1");
|
||||||
|
}
|
||||||
|
return templateList.get(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user