From 02f18587bd8860b305e2c688e20465be166bb48c Mon Sep 17 00:00:00 2001 From: huanghongfa <huanghongfa123456> Date: 星期四, 22 七月 2021 15:14:03 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/test' into test --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java | 172 ++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 156 insertions(+), 16 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java index 6dafef1..ff84220 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java @@ -1,5 +1,6 @@ package com.panzhihua.service_community.service.impl; +import java.util.ArrayList; import java.util.Date; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -68,6 +69,10 @@ private ComActNeighborCircleFabulousDAO comActNeighborCircleFabulousDAO; @Resource private ComActNeighborCircleBrowseDAO comActNeighborCircleBrowseDAO; + @Resource + private ComActDAO comActDAO; + @Resource + private ComActNeighborCircleTopicMapper comActNeighborCircleTopicMapper; /** * 分页查询邻里圈列表 @@ -84,12 +89,21 @@ ComActNeighborCircleFabulousDO circleFabulousDO = comActNeighborCircleFabulousDAO.selectOne( new QueryWrapper<ComActNeighborCircleFabulousDO>().lambda().eq(ComActNeighborCircleFabulousDO::getParentId,circleAppVO.getId()) .eq(ComActNeighborCircleFabulousDO::getUserId,neighborCircleAppDTO.getUserId()) - .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.llq)); - if(circleFabulousDO != null && circleFabulousDO.getIsEffective().equals(ComActNeighborCircleFabulousDO.isEffective.yes)){ + .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.llq) + .eq(ComActNeighborCircleFabulousDO::getIsEffective,ComActNeighborCircleFabulousDO.isEffective.yes)); + if(circleFabulousDO != null){ circleAppVO.setHaveSign(1); }else{ circleAppVO.setHaveSign(2); } + + if(circleAppVO.getType() != null && circleAppVO.getType().equals(ComActNeighborCircleDO.type.admin)){ + ComActDO actDO = comActDAO.selectById(circleAppVO.getCommunityId()); + if(actDO != null){ + circleAppVO.setName(actDO.getName()); + } + } + } } return R.ok(doPager); @@ -135,12 +149,20 @@ return R.fail("未找到邻里圈信息"); } + if(circleDetailAppVO.getType() != null && circleDetailAppVO.getType().equals(ComActNeighborCircleDO.type.admin)){ + ComActDO actDO = comActDAO.selectById(circleDetailAppVO.getCommunityId()); + if(actDO != null){ + circleDetailAppVO.setName(actDO.getName()); + } + } + //查询邻里圈点赞信息 ComActNeighborCircleFabulousDO circleFabulousDO = comActNeighborCircleFabulousDAO.selectOne( new QueryWrapper<ComActNeighborCircleFabulousDO>().lambda().eq(ComActNeighborCircleFabulousDO::getParentId,circleDetailAppVO.getId()) .eq(ComActNeighborCircleFabulousDO::getUserId,neighborCircleAppDTO.getUserId()) - .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.llq)); - if(circleFabulousDO != null && circleFabulousDO.getIsEffective().equals(ComActNeighborCircleFabulousDO.isEffective.yes)){ + .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.llq) + .eq(ComActNeighborCircleFabulousDO::getIsEffective,ComActNeighborCircleFabulousDO.isEffective.yes)); + if(circleFabulousDO != null){ circleDetailAppVO.setHaveSign(1); }else{ circleDetailAppVO.setHaveSign(2); @@ -155,8 +177,9 @@ ComActNeighborCircleFabulousDO circleCommentFabulousDO = comActNeighborCircleFabulousDAO.selectOne( new QueryWrapper<ComActNeighborCircleFabulousDO>().lambda().eq(ComActNeighborCircleFabulousDO::getParentId,circleCommentVo.getId()) .eq(ComActNeighborCircleFabulousDO::getUserId,neighborCircleAppDTO.getUserId()) - .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.pl)); - if(circleCommentFabulousDO != null && circleCommentFabulousDO.getIsEffective().equals(ComActNeighborCircleFabulousDO.isEffective.yes)){ + .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.pl) + .eq(ComActNeighborCircleFabulousDO::getIsEffective,ComActNeighborCircleFabulousDO.isEffective.yes)); + if(circleCommentFabulousDO != null){ circleCommentVo.setHaveSign(1); }else{ circleCommentVo.setHaveSign(2); @@ -164,19 +187,28 @@ //查询评论下评论回复 List<ComActNeighborCircleCommentReplyAppVO> commentReplyAppVOS = comActNeighborCircleCommentReplyDAO.getCircleCommentReplyList(circleCommentVo.getId()); if(!commentReplyAppVOS.isEmpty()){ + List<ComActNeighborCircleCommentReplyAppVO> newCommentReplyAppVOS = new ArrayList<>(); + int i = 0; for (ComActNeighborCircleCommentReplyAppVO commentReplyVO:commentReplyAppVOS) { + if(i >= 2){ + break; + } //查询点赞信息 ComActNeighborCircleFabulousDO circleReplyFabulousDO = comActNeighborCircleFabulousDAO.selectOne( new QueryWrapper<ComActNeighborCircleFabulousDO>().lambda().eq(ComActNeighborCircleFabulousDO::getParentId,commentReplyVO.getId()) .eq(ComActNeighborCircleFabulousDO::getUserId,neighborCircleAppDTO.getUserId()) - .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.hf)); - if(circleReplyFabulousDO != null && circleReplyFabulousDO.getIsEffective().equals(ComActNeighborCircleFabulousDO.isEffective.yes)){ + .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.hf) + .eq(ComActNeighborCircleFabulousDO::getIsEffective,ComActNeighborCircleFabulousDO.isEffective.yes)); + if(circleReplyFabulousDO != null){ commentReplyVO.setHaveSign(1); }else{ commentReplyVO.setHaveSign(2); } + newCommentReplyAppVOS.add(commentReplyVO); + i++; } - circleCommentVo.setCircleCommentReplyAppList(commentReplyAppVOS); + circleCommentVo.setCircleCommentReplyAppList(newCommentReplyAppVOS); + circleCommentVo.setCommentReplyNum(commentReplyAppVOS.size()); } } } @@ -208,7 +240,8 @@ comActNeighborCircleDO.setCommunityId(adminUser.getCommunityId()); comActNeighborCircleDO.setReleaseContent(addVO.getReleaseContent()); comActNeighborCircleDO.setReleaseImages(addVO.getReleaseImages()); - comActNeighborCircleDO.setStatus(1); + comActNeighborCircleDO.setType(2); + comActNeighborCircleDO.setStatus(2); comActNeighborCircleDO.setCommentNum(0); comActNeighborCircleDO.setFabulousNum(0); comActNeighborCircleDO.setForwardNum(0); @@ -233,7 +266,7 @@ neighborCircleDO.setRefuseReason(editVO.getRefuseReason()); } this.baseMapper.updateById(neighborCircleDO); - return R.ok(); + return R.ok(neighborCircleDO.getReleaseId()); } /** @@ -245,6 +278,21 @@ public R neighborExamineByApp(ComActNeighborCircleAppDTO neighborCircleAppDTO){ IPage<ComActNeighborCircleAppVO> neighborCircleIPage = this.baseMapper.neighborExamineByApp( new Page<>(neighborCircleAppDTO.getPageNum(),neighborCircleAppDTO.getPageSize()),neighborCircleAppDTO.getUserId()); + if(!neighborCircleIPage.getRecords().isEmpty()) { + for (ComActNeighborCircleAppVO circleAppVO : neighborCircleIPage.getRecords()) { + //查询点赞信息 + ComActNeighborCircleFabulousDO circleFabulousDO = comActNeighborCircleFabulousDAO.selectOne( + new QueryWrapper<ComActNeighborCircleFabulousDO>().lambda().eq(ComActNeighborCircleFabulousDO::getParentId, circleAppVO.getId()) + .eq(ComActNeighborCircleFabulousDO::getUserId, neighborCircleAppDTO.getUserId()) + .eq(ComActNeighborCircleFabulousDO::getType, ComActNeighborCircleFabulousDO.type.llq) + .eq(ComActNeighborCircleFabulousDO::getIsEffective, ComActNeighborCircleFabulousDO.isEffective.yes)); + if (circleFabulousDO != null) { + circleAppVO.setHaveSign(1); + } else { + circleAppVO.setHaveSign(2); + } + } + } return R.ok(neighborCircleIPage); } @@ -263,6 +311,16 @@ circleFabulousDO.setParentId(fabulousAppDTO.getServiceId()); //判断点赞类型 if(fabulousAppDTO.getType().equals(ComActNeighborFabulousAppDTO.type.llq)){ + + ComActNeighborCircleFabulousDO oldCircleFabulousDO = comActNeighborCircleFabulousDAO.selectOne( + new QueryWrapper<ComActNeighborCircleFabulousDO>().lambda().eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborFabulousAppDTO.type.llq) + .eq(ComActNeighborCircleFabulousDO::getParentId,fabulousAppDTO.getServiceId()) + .eq(ComActNeighborCircleFabulousDO::getIsEffective,ComActNeighborCircleFabulousDO.isEffective.yes) + .eq(ComActNeighborCircleFabulousDO::getUserId,fabulousAppDTO.getUserId())); + if(oldCircleFabulousDO != null){ + return R.fail("您已点赞"); + } + //增加邻里圈点赞数量 ComActNeighborCircleDO neighborCircleDO = this.baseMapper.selectById(fabulousAppDTO.getServiceId()); if(neighborCircleDO != null){ @@ -274,6 +332,13 @@ //添加邻里圈浏览记录 comActNeighborCircleBrowseService.addBrowseRecord(fabulousAppDTO.getServiceId(),fabulousAppDTO.getUserId()); }else if(fabulousAppDTO.getType().equals(ComActNeighborFabulousAppDTO.type.pl)){ + ComActNeighborCircleFabulousDO oldCircleFabulousDO = comActNeighborCircleFabulousDAO.selectOne( + new QueryWrapper<ComActNeighborCircleFabulousDO>().lambda().eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborFabulousAppDTO.type.pl) + .eq(ComActNeighborCircleFabulousDO::getParentId,fabulousAppDTO.getServiceId()) + .eq(ComActNeighborCircleFabulousDO::getIsEffective,ComActNeighborCircleFabulousDO.isEffective.yes)); + if(oldCircleFabulousDO != null){ + return R.fail("您已点赞"); + } //增加邻里圈评论点赞数量 ComActNeighborCircleCommentDO circleCommentDO = comActNeighborCircleCommentDAO.selectById(fabulousAppDTO.getServiceId()); if(circleCommentDO != null){ @@ -282,6 +347,13 @@ circleFabulousDO.setCircleId(circleCommentDO.getCircleId()); } }else if(fabulousAppDTO.getType().equals(ComActNeighborFabulousAppDTO.type.hf)){ + ComActNeighborCircleFabulousDO oldCircleFabulousDO = comActNeighborCircleFabulousDAO.selectOne( + new QueryWrapper<ComActNeighborCircleFabulousDO>().lambda().eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborFabulousAppDTO.type.hf) + .eq(ComActNeighborCircleFabulousDO::getParentId,fabulousAppDTO.getServiceId()) + .eq(ComActNeighborCircleFabulousDO::getIsEffective,ComActNeighborCircleFabulousDO.isEffective.yes)); + if(oldCircleFabulousDO != null){ + return R.fail("您已点赞"); + } //增加邻里圈评论回复点赞数量 ComActNeighborCircleCommentReplyDO circleCommentReplyDO = comActNeighborCircleCommentReplyDAO.selectById(fabulousAppDTO.getServiceId()); if(circleCommentReplyDO != null){ @@ -469,13 +541,19 @@ @Override public R detailNeighborByAdmin(Long id) { ComActNeighborCircleDO comActNeighborCircleDO = this.baseMapper.selectById(id); - AdministratorsUserVO user = this.baseMapper.selectUserByUserId(comActNeighborCircleDO.getReleaseId()); if (comActNeighborCircleDO == null) { return R.fail("id有误"); } + AdministratorsUserVO user = this.baseMapper.selectUserByUserId(comActNeighborCircleDO.getReleaseId()); DetailNeighborCircleAdminVO vo = new DetailNeighborCircleAdminVO(); BeanUtils.copyProperties(comActNeighborCircleDO, vo); vo.setReleaseName(user.getName()); + + //查询话题名称 + if(comActNeighborCircleDO.getTopicId() != null){ + ComActNeighborCircleTopicDO circleTopicDO = comActNeighborCircleTopicMapper.selectById(comActNeighborCircleDO.getTopicId()); + vo.setTopicName(circleTopicDO.getName()); + } return R.ok(vo); } @@ -499,6 +577,17 @@ } commentDO.setStatus(dto.getStatus()); neighborCircleCommentDAO.updateById(commentDO); + + //查询邻里圈更新邻里圈评论数量 + ComActNeighborCircleDO neighborCircleDO = this.baseMapper.selectById(commentDO.getCircleId()); + if(neighborCircleDO != null){ + if(dto.getStatus().equals(2)){ + neighborCircleDO.setCommentNum(neighborCircleDO.getCommentNum() - 1); + }else{ + neighborCircleDO.setCommentNum(neighborCircleDO.getCommentNum() + 1); + } + this.baseMapper.updateById(neighborCircleDO); + } return R.ok(); } @@ -511,7 +600,8 @@ AdministratorsUserVO user = this.baseMapper.selectUserByUserId(commentDO.getUserId()); ComActNeighborCommentByAdminVO vo = new ComActNeighborCommentByAdminVO(); BeanUtils.copyProperties(commentDO,vo); - vo.setUserName(user.getName()); + String name = user.getName()==null?user.getNickName():user.getName(); + vo.setUserName(name); return R.ok(vo); } @@ -564,25 +654,48 @@ circleFabulousDO = comActNeighborCircleFabulousDAO.selectOne( new QueryWrapper<ComActNeighborCircleFabulousDO>().lambda().eq(ComActNeighborCircleFabulousDO::getParentId,fabulousAppDTO.getServiceId()) .eq(ComActNeighborCircleFabulousDO::getUserId,fabulousAppDTO.getUserId()) - .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.llq)); + .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.llq) + .eq(ComActNeighborCircleFabulousDO::getIsEffective,ComActNeighborCircleFabulousDO.isEffective.yes)); if(circleFabulousDO == null){ return R.fail("未查询到点赞信息"); + } + + //减少邻里圈点赞数量 + ComActNeighborCircleDO neighborCircleDO = this.baseMapper.selectById(fabulousAppDTO.getServiceId()); + if(neighborCircleDO != null){ + neighborCircleDO.setFabulousNum(neighborCircleDO.getFabulousNum() - 1); + this.baseMapper.updateById(neighborCircleDO); } }else if(fabulousAppDTO.getType().equals(ComActNeighborFabulousAppDTO.type.pl)){ circleFabulousDO = comActNeighborCircleFabulousDAO.selectOne( new QueryWrapper<ComActNeighborCircleFabulousDO>().lambda().eq(ComActNeighborCircleFabulousDO::getParentId,fabulousAppDTO.getServiceId()) .eq(ComActNeighborCircleFabulousDO::getUserId,fabulousAppDTO.getUserId()) - .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.pl)); + .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.pl) + .eq(ComActNeighborCircleFabulousDO::getIsEffective,ComActNeighborCircleFabulousDO.isEffective.yes)); if(circleFabulousDO == null){ return R.fail("未查询到点赞信息"); + } + + //减少邻里圈评论点赞数量 + ComActNeighborCircleCommentDO circleCommentDO = comActNeighborCircleCommentDAO.selectById(fabulousAppDTO.getServiceId()); + if(circleCommentDO != null){ + circleCommentDO.setFabulousNum(circleCommentDO.getFabulousNum() - 1); + comActNeighborCircleCommentDAO.updateById(circleCommentDO); } }else if(fabulousAppDTO.getType().equals(ComActNeighborFabulousAppDTO.type.hf)){ circleFabulousDO = comActNeighborCircleFabulousDAO.selectOne( new QueryWrapper<ComActNeighborCircleFabulousDO>().lambda().eq(ComActNeighborCircleFabulousDO::getParentId,fabulousAppDTO.getServiceId()) .eq(ComActNeighborCircleFabulousDO::getUserId,fabulousAppDTO.getUserId()) - .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.hf)); + .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.hf) + .eq(ComActNeighborCircleFabulousDO::getIsEffective,ComActNeighborCircleFabulousDO.isEffective.yes)); if(circleFabulousDO == null){ return R.fail("未查询到点赞信息"); + } + //减少邻里圈评论回复点赞数量 + ComActNeighborCircleCommentReplyDO circleCommentReplyDO = comActNeighborCircleCommentReplyDAO.selectById(fabulousAppDTO.getServiceId()); + if(circleCommentReplyDO != null){ + circleCommentReplyDO.setFabulousNum(circleCommentReplyDO.getFabulousNum() - 1); + comActNeighborCircleCommentReplyDAO.updateById(circleCommentReplyDO); } } if(circleFabulousDO != null){ @@ -610,4 +723,31 @@ } return R.ok(); } + + /** + * 分页查询评论下所有回复 + * @param commentReplyAppDTO 请求参数 + * @return 回复列表 + */ + @Override + public R neighborCommentReplyByApp(ComActNeighborCommentReplyAppDTO commentReplyAppDTO){ + IPage<ComActNeighborCommentReplyAppVO> neighborCircleIPage = this.baseMapper.neighborCommentReplyByApp( + new Page<>(commentReplyAppDTO.getPageNum(),commentReplyAppDTO.getPageSize()),commentReplyAppDTO.getCommentId()); + if(!neighborCircleIPage.getRecords().isEmpty()){ + for (ComActNeighborCommentReplyAppVO commentReplyAppVO:neighborCircleIPage.getRecords()) { + //查询点赞信息 + ComActNeighborCircleFabulousDO circleFabulousDO = comActNeighborCircleFabulousDAO.selectOne( + new QueryWrapper<ComActNeighborCircleFabulousDO>().lambda().eq(ComActNeighborCircleFabulousDO::getParentId,commentReplyAppVO.getId()) + .eq(ComActNeighborCircleFabulousDO::getUserId,commentReplyAppDTO.getUserId()) + .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.hf) + .eq(ComActNeighborCircleFabulousDO::getIsEffective,ComActNeighborCircleFabulousDO.isEffective.yes)); + if(circleFabulousDO != null){ + commentReplyAppVO.setHaveSign(1); + }else{ + commentReplyAppVO.setHaveSign(2); + } + } + } + return R.ok(neighborCircleIPage); + } } -- Gitblit v1.7.1