点赞,喜欢功能实现(思路是一样的):
逻辑:获取给点赞的文章的发布的Id,从ThreadLocal中获取用户自己信息,给quanzi_comment表中设置状态,需要注意的是给点赞数,和点赞状态设置了缓存,现存库在存缓存
点赞
@Override
public boolean saveLikeComment(Long userId, String publishId) {
//判断是否已经点赞,如果已经点赞就返回
Criteria criteria = Criteria.where("userId").is(userId)
.and("publishId").is(new ObjectId(publishId))
.and("commentType").is(1);
Query query = Query.query(criteria);
long count = this.mongoTemplate.count(query, Comment.class);
if (count > 0) {
return false;
}
return this.saveComment(userId, publishId, 1, null);