package com.panzhihua.service_community.service.impl;
|
|
import java.util.Date;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.panzhihua.common.model.dtos.neighbor.*;
|
import com.panzhihua.common.model.vos.R;
|
import com.panzhihua.common.model.vos.neighbor.*;
|
import com.panzhihua.common.utlis.StringUtils;
|
import com.panzhihua.service_community.dao.ComActNeighborCircleCommentDAO;
|
import com.panzhihua.common.model.vos.user.AdministratorsUserVO;
|
import com.panzhihua.service_community.dao.ComActNeighborCircleDAO;
|
import com.panzhihua.service_community.model.dos.ComActNeighborCircleDO;
|
import com.panzhihua.service_community.service.ComActNeighborCircleBrowseService;
|
import com.panzhihua.service_community.dao.*;
|
import com.panzhihua.service_community.model.dos.*;
|
import com.panzhihua.service_community.service.ComActNeighborCircleService;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
|
/**
|
* @auther lyq
|
* @create 2021-04-28 09:20:49
|
* @describe 邻里圈表服务实现类
|
*/
|
@Slf4j
|
@Service
|
public class ComActNeighborCircleServiceImpl extends ServiceImpl<ComActNeighborCircleDAO, ComActNeighborCircleDO> implements ComActNeighborCircleService {
|
|
@Resource
|
private ComActNeighborCircleBrowseService comActNeighborCircleBrowseService;
|
|
@Resource
|
ComActNeighborCircleFabulousDAO neighborCircleFabulousDAO;
|
|
@Resource
|
ComActNeighborCircleBrowseDAO neighborCircleBrowseDAO;
|
|
@Resource
|
ComActNeighborCircleCommentDAO neighborCircleCommentDAO;
|
|
@Resource
|
ComActNeighborCircleCommentReplyDAO neighborCircleCommentReplyDAO;
|
|
/**
|
* 分页查询邻里圈列表
|
*
|
* @param neighborCircleAppDTO 请求参数
|
* @return 邻里圈列表
|
*/
|
@Override
|
public R pageNeighborByApp(ComActNeighborCircleAppDTO neighborCircleAppDTO) {
|
Page userPage = new Page(neighborCircleAppDTO.getPageNum(), neighborCircleAppDTO.getPageSize());
|
IPage<ComActNeighborCircleAppVO> doPager = this.baseMapper.pageNeighborByApp(userPage, neighborCircleAppDTO);
|
return R.ok(doPager);
|
}
|
|
/**
|
* 用户发布邻里圈审核
|
*
|
* @param addNeighborCircleAppDTO 邻里圈请求参数
|
* @return 发布结果
|
*/
|
@Override
|
public R addNeighborByApp(AddComActNeighborCircleAppDTO addNeighborCircleAppDTO) {
|
//新增邻里圈审核
|
ComActNeighborCircleDO neighborCircleDO = new ComActNeighborCircleDO();
|
BeanUtils.copyProperties(addNeighborCircleAppDTO, neighborCircleDO);
|
if (addNeighborCircleAppDTO.getUserId() != null) {
|
neighborCircleDO.setReleaseId(addNeighborCircleAppDTO.getUserId());
|
}
|
if (addNeighborCircleAppDTO.getCommunityId() != null) {
|
neighborCircleDO.setCommunityId(addNeighborCircleAppDTO.getCommunityId());
|
}
|
if (StringUtils.isNotEmpty(addNeighborCircleAppDTO.getPhone())) {
|
neighborCircleDO.setReleasePhone(addNeighborCircleAppDTO.getPhone());
|
}
|
if (this.baseMapper.insert(neighborCircleDO) > 0) {
|
return R.ok();
|
} else {
|
return R.fail("发布失败");
|
}
|
}
|
|
@Override
|
public R neighborDetailByApp(ComActNeighborCircleDetailAppDTO neighborCircleAppDTO) {
|
|
//添加邻里圈浏览记录
|
comActNeighborCircleBrowseService.addBrowseRecord(neighborCircleAppDTO.getCircleId(), neighborCircleAppDTO.getUserId());
|
|
//查询邻里圈详情
|
ComActNeighborCircleDetailAppVO circleDetailAppVO = this.baseMapper.neighborDetailByApp(neighborCircleAppDTO.getCircleId());
|
|
//查询邻里圈下评论列表
|
IPage<ComActNeighborCircleCommentAppVO> circleCommentAppPage = neighborCircleCommentDAO.pageNeighborCommentByApp(
|
new Page(neighborCircleAppDTO.getPageNum(), neighborCircleAppDTO.getPageSize()), neighborCircleAppDTO.getCircleId());
|
if (!circleCommentAppPage.getRecords().isEmpty()) {
|
for (ComActNeighborCircleCommentAppVO circleCommentVo : circleCommentAppPage.getRecords()) {
|
//查询评论下评论回复
|
|
|
}
|
}
|
|
|
return R.ok(circleDetailAppVO);
|
}
|
|
@Override
|
public R pageNeighborByAdmin(ComActNeighborCircleAdminDTO neighborCircleAdminDTO) {
|
Page page = new Page(neighborCircleAdminDTO.getPageNum(), neighborCircleAdminDTO.getPageSize());
|
IPage<ComActNeighborCircleAdminVO> doPager = this.baseMapper.pageNeighborByAdmin(page, neighborCircleAdminDTO);
|
return R.ok(doPager);
|
}
|
|
@Override
|
public R addNeighborByAdmin(AddNeighborCircleAdminVO addVO) {
|
ComActNeighborCircleDO comActNeighborCircleDO = new ComActNeighborCircleDO();
|
AdministratorsUserVO adminUser = this.baseMapper.selectUserByUserId(addVO.getUserId());
|
if (adminUser == null) {
|
return R.fail("请登录重试");
|
}
|
comActNeighborCircleDO.setReleaseId(addVO.getUserId());
|
comActNeighborCircleDO.setReleasePhone(adminUser.getPhone());
|
comActNeighborCircleDO.setCommunityId(adminUser.getCommunityId());
|
comActNeighborCircleDO.setReleaseContent(addVO.getReleaseContent());
|
comActNeighborCircleDO.setReleaseImages(addVO.getReleaseImages());
|
comActNeighborCircleDO.setStatus(1);
|
comActNeighborCircleDO.setCommentNum(0);
|
comActNeighborCircleDO.setFabulousNum(0);
|
comActNeighborCircleDO.setForwardNum(0);
|
comActNeighborCircleDO.setViewsNum(0);
|
comActNeighborCircleDO.setIsBoutique(2);
|
comActNeighborCircleDO.setCreateAt(new Date());
|
comActNeighborCircleDO.setLastCommentNum(0);
|
comActNeighborCircleDO.setLastFabulousNum(0);
|
comActNeighborCircleDO.setLastViewsNum(0);
|
this.baseMapper.insert(comActNeighborCircleDO);
|
return R.ok();
|
}
|
|
@Override
|
public R changeStatusByAdmin(EditNeighborCircleAdminVO editVO) {
|
ComActNeighborCircleDO neighborCircleDO = this.baseMapper.selectById(editVO.getId());
|
if (neighborCircleDO == null) {
|
return R.fail("id有误!");
|
}
|
neighborCircleDO.setStatus(editVO.getStatus());
|
neighborCircleDO.setRefuseReason(editVO.getRefuseReason());
|
this.baseMapper.updateById(neighborCircleDO);
|
return R.ok();
|
}
|
|
@Override
|
public R deleteByAdmin(Long id) {
|
ComActNeighborCircleDO comActNeighborCircleDO = this.baseMapper.selectById(id);
|
if (comActNeighborCircleDO == null) {
|
return R.fail();
|
}
|
if (comActNeighborCircleDO.getStatus() == 1) {
|
return R.fail("待审核的邻里圈不能删除");
|
}
|
//邻里圈删除
|
this.baseMapper.deleteById(id);
|
//邻里圈评论删除
|
neighborCircleCommentDAO.delete(new LambdaQueryWrapper<ComActNeighborCircleCommentDO>()
|
.eq(ComActNeighborCircleCommentDO::getCircleId, id));
|
//邻里圈回复删除
|
neighborCircleCommentReplyDAO.delete(new LambdaQueryWrapper<ComActNeighborCircleCommentReplyDO>()
|
.eq(ComActNeighborCircleCommentReplyDO::getCircleId, id));
|
//邻里圈浏览器记录
|
neighborCircleBrowseDAO.delete(new LambdaQueryWrapper<ComActNeighborCircleBrowseDO>()
|
.eq(ComActNeighborCircleBrowseDO::getNeighborId, id));
|
//邻里圈点赞删除 需要一层一层删
|
/* neighborCircleFabulousDAO.delete(new LambdaQueryWrapper<ComActNeighborCircleFabulousDO>()
|
.eq(ComActNeighborCircleFabulousDO::get))*/
|
return R.ok();
|
|
}
|
|
@Override
|
public R detailNeighborByAdmin(Long id) {
|
ComActNeighborCircleDO comActNeighborCircleDO = this.baseMapper.selectById(id);
|
if (comActNeighborCircleDO == null) {
|
return R.fail("id有误");
|
}
|
DetailNeighborCircleAdminVO vo = new DetailNeighborCircleAdminVO();
|
BeanUtils.copyProperties(comActNeighborCircleDO, vo);
|
return R.ok(vo);
|
}
|
|
@Override
|
public R detailNeighborAllCommentByAdmin(DetailNeighborAllCommentByAdminDTO dto) {
|
ComActNeighborCircleDO comActNeighborCircleDO = this.baseMapper.selectById(dto.getId());
|
if (comActNeighborCircleDO == null) {
|
return R.fail("id有误");
|
}
|
Page<ComActNeighborCircleCommentDO> page = new Page<>(dto.getPageNum(),dto.getPageSize());
|
//1、先查询所有该邻里圈_的评论
|
IPage<ComActNeighborCommentByAdminVO> commentDOIPage = neighborCircleCommentDAO.selectPageDetailNeighborComment(page,dto);
|
return R.ok(commentDOIPage);
|
}
|
|
@Override
|
public R changeCommentStatusByAdmin(ChangeCommentStatusByAdminVO dto) {
|
ComActNeighborCircleCommentDO commentDO = neighborCircleCommentDAO.selectById(dto.getId());
|
if(commentDO==null){
|
return R.fail("id有误!");
|
}
|
commentDO.setStatus(dto.getStatus());
|
neighborCircleCommentDAO.updateById(commentDO);
|
return R.ok();
|
}
|
|
@Override
|
public R detailNeighborCommentByAdmin(Long id) {
|
ComActNeighborCircleCommentDO commentDO = neighborCircleCommentDAO.selectById(id);
|
if(commentDO==null){
|
return R.fail("id有误!");
|
}
|
ComActNeighborCommentByAdminVO vo = new ComActNeighborCommentByAdminVO();
|
BeanUtils.copyProperties(commentDO,vo);
|
return R.ok(vo);
|
}
|
|
@Override
|
public R detailNeighborCommentAllReply(DetailNeighborCommentReplyByAdminDTO dto) {
|
Page<ComActNeighborCircleCommentReplyDO> page = new Page<>(dto.getPageNum(),dto.getPageSize());
|
Page<ComActNeighborCommentReplyByAdminVO> replyPage = neighborCircleCommentReplyDAO.selectListByComment(page, dto);
|
return R.ok(replyPage);
|
}
|
|
@Override
|
public R detailNeighborCommentReply(Long id) {
|
ComActNeighborCircleCommentReplyDO replyDO = neighborCircleCommentReplyDAO.selectById(id);
|
if(replyDO==null){
|
return R.fail("id有误!");
|
}
|
ComActNeighborCircleCommentReplyDO vo = new ComActNeighborCircleCommentReplyDO();
|
BeanUtils.copyProperties(replyDO,vo);
|
return R.ok(vo);
|
}
|
|
@Override
|
public R changeCommentReplyStatusByAdmin(ChangeCommentReplyStatusByAdminVO changeStatusReplyVO) {
|
ComActNeighborCircleCommentReplyDO replyDO = neighborCircleCommentReplyDAO.selectById(changeStatusReplyVO.getId());
|
if(replyDO==null){
|
return R.fail("id有误!");
|
}
|
replyDO.setStatus(changeStatusReplyVO.getStatus());
|
neighborCircleCommentReplyDAO.updateById(replyDO);
|
return R.ok();
|
}
|
}
|