123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- package com.ruoyi.app.service.impl;
- import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
- import com.ruoyi.app.domain.TbAppUser;
- import com.ruoyi.app.domain.TbMyPublish;
- import com.ruoyi.app.domain.TbPublishComment;
- import com.ruoyi.app.domain.TbPublishThumbs;
- import com.ruoyi.app.service.ITbAppUserService;
- import com.ruoyi.app.service.ITbPublishCommentService;
- import com.ruoyi.app.service.ITbPublishThumbsService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.scheduling.annotation.Async;
- import org.springframework.stereotype.Service;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import com.ruoyi.app.mapper.TbMyPublishMapper;
- import com.ruoyi.app.service.ITbMyPublishService;
- import java.util.ArrayList;
- import java.util.List;
- @Service
- public class TbMyPublishServiceImpl extends ServiceImpl<TbMyPublishMapper, TbMyPublish> implements ITbMyPublishService {
- @Autowired
- private ITbPublishThumbsService thumbsService;
- @Autowired
- private ITbPublishCommentService commentService;
- @Autowired
- private ITbAppUserService userService;
-
- @Async
- @Override
- public int getThumbs(Long publishId) {
- int count = thumbsService.count(new LambdaQueryWrapper<TbPublishThumbs>()
- .eq(TbPublishThumbs::getPublishId, publishId)
- );
- return count;
- }
-
- @Async
- @Override
- public int getComments(Long publishId) {
- int count = commentService.count(new LambdaQueryWrapper<TbPublishComment>()
- .eq(TbPublishComment::getPublishId, publishId)
- );
- return count;
- }
-
- @Override
- public List<TbPublishComment> listComment(Long publishId){
- List<TbPublishComment> comments = commentService.list(new LambdaQueryWrapper<TbPublishComment>()
- .eq(TbPublishComment::getPublishId, publishId)
- );
- if (comments.size() > 0) {
- List<Long> ids = new ArrayList<>();
- comments.forEach(item -> {
- ids.add(item.getAppUserId());
- });
- List<TbAppUser> userList = userService.list(new LambdaQueryWrapper<TbAppUser>()
- .in(TbAppUser::getId,ids)
- );
- if (userList.size() > 0) {
- comments.forEach(item -> {
- userList.forEach(user -> {
- if (item.getAppUserId() == user.getId()) {
- item.setAppUserUrl(user.getAvatar());
- item.setAppUser(user.getNickName());
- }
- });
- });
- }
- }
- return comments;
- }
-
- @Override
- public boolean delComment(Long id) {
- return commentService.removeById(id);
- }
- }
|