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.AddComActNeighborCircleAppDTO;
|
import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleAdminDTO;
|
import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleAppDTO;
|
import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleDetailAppDTO;
|
import com.panzhihua.common.model.vos.R;
|
import com.panzhihua.common.model.vos.neighbor.AddNeighborCircleAdminVO;
|
import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleAdminVO;
|
import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleAppVO;
|
import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleCommentAppVO;
|
import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleDetailAppVO;
|
import com.panzhihua.common.utlis.StringUtils;
|
import com.panzhihua.service_community.dao.ComActNeighborCircleCommentDAO;
|
import com.panzhihua.common.model.vos.neighbor.EditNeighborCircleAdminVO;
|
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;
|
|
import javax.annotation.Resource;
|
import java.util.List;
|
|
/**
|
* @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
|
private ComActNeighborCircleCommentDAO comActNeighborCircleCommentDAO;
|
public abstract class ComActNeighborCircleServiceImpl extends ServiceImpl<ComActNeighborCircleDAO, ComActNeighborCircleDO> implements ComActNeighborCircleService {
|
@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 = comActNeighborCircleCommentDAO.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));
|
//邻里圈点赞删除
|
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) {
|
return null;
|
}
|
}
|