From 07c60d85678d4a3b6fedcc27d7984f29cfb8dcc1 Mon Sep 17 00:00:00 2001 From: huanghongfa <huanghongfa123456> Date: 星期四, 29 四月 2021 16:22:29 +0800 Subject: [PATCH] 邻里圈模块小程序接口开发 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java | 131 +++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 125 insertions(+), 6 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 3c97b42..fc22ba2 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 @@ -57,11 +57,14 @@ @Resource ComActNeighborCircleCommentReplyDAO neighborCircleCommentReplyDAO; + @Resource private ComActNeighborCircleCommentDAO comActNeighborCircleCommentDAO; @Resource private ComActNeighborCircleCommentReplyDAO comActNeighborCircleCommentReplyDAO; @Resource private ComActNeighborCircleFabulousDAO comActNeighborCircleFabulousDAO; + @Resource + private ComActNeighborCircleBrowseDAO comActNeighborCircleBrowseDAO; /** * 分页查询邻里圈列表 @@ -72,6 +75,20 @@ public R pageNeighborByApp(ComActNeighborCircleAppDTO neighborCircleAppDTO){ Page userPage = new Page(neighborCircleAppDTO.getPageNum(), neighborCircleAppDTO.getPageSize()); IPage<ComActNeighborCircleAppVO> doPager = this.baseMapper.pageNeighborByApp(userPage, neighborCircleAppDTO); + if(!doPager.getRecords().isEmpty()){ + for (ComActNeighborCircleAppVO circleAppVO:doPager.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)); + if(circleFabulousDO != null && circleFabulousDO.getIsEffective().equals(ComActNeighborCircleFabulousDO.isEffective.yes)){ + circleAppVO.setHaveSign(1); + }else{ + circleAppVO.setHaveSign(2); + } + } + } return R.ok(doPager); } @@ -108,22 +125,59 @@ */ @Override public R neighborDetailByApp(ComActNeighborCircleDetailAppDTO neighborCircleAppDTO){ - //添加邻里圈浏览记录 - comActNeighborCircleBrowseService.addBrowseRecord(neighborCircleAppDTO.getCircleId(),neighborCircleAppDTO.getUserId()); + //查询邻里圈详情 ComActNeighborCircleDetailAppVO circleDetailAppVO = this.baseMapper.neighborDetailByApp(neighborCircleAppDTO.getCircleId()); + if(circleDetailAppVO == null){ + return R.fail("未找到邻里圈信息"); + } + + //查询邻里圈点赞信息 + 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)){ + circleDetailAppVO.setHaveSign(1); + }else{ + circleDetailAppVO.setHaveSign(2); + } + //查询邻里圈下评论列表 IPage<ComActNeighborCircleCommentAppVO> circleCommentAppPage = comActNeighborCircleCommentDAO.pageNeighborCommentByApp( new Page(neighborCircleAppDTO.getPageNum(),neighborCircleAppDTO.getPageSize()),neighborCircleAppDTO); if(!circleCommentAppPage.getRecords().isEmpty()){ for (ComActNeighborCircleCommentAppVO circleCommentVo:circleCommentAppPage.getRecords()) { + //查询点赞信息 + 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)){ + circleCommentVo.setHaveSign(1); + }else{ + circleCommentVo.setHaveSign(2); + } //查询评论下评论回复 List<ComActNeighborCircleCommentReplyAppVO> commentReplyAppVOS = comActNeighborCircleCommentReplyDAO.getCircleCommentReplyList(circleCommentVo.getId()); if(!commentReplyAppVOS.isEmpty()){ + for (ComActNeighborCircleCommentReplyAppVO commentReplyVO:commentReplyAppVOS) { + //查询点赞信息 + 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)){ + commentReplyVO.setHaveSign(1); + }else{ + commentReplyVO.setHaveSign(2); + } + } circleCommentVo.setCircleCommentReplyAppList(commentReplyAppVOS); } } } + circleDetailAppVO.setCircleCommentAppList(circleCommentAppPage.getRecords()); return R.ok(circleDetailAppVO); } @@ -203,10 +257,10 @@ ComActNeighborCircleDO neighborCircleDO = this.baseMapper.selectById(fabulousAppDTO.getServiceId()); if(neighborCircleDO != null){ neighborCircleDO.setFabulousNum(neighborCircleDO.getFabulousNum() + 1); + neighborCircleDO.setViewsNum(neighborCircleDO.getViewsNum() + 1); this.baseMapper.updateById(neighborCircleDO); circleFabulousDO.setCircleId(neighborCircleDO.getId()); } - //添加邻里圈浏览记录 comActNeighborCircleBrowseService.addBrowseRecord(fabulousAppDTO.getServiceId(),fabulousAppDTO.getUserId()); }else if(fabulousAppDTO.getType().equals(ComActNeighborFabulousAppDTO.type.pl)){ @@ -357,14 +411,18 @@ int commentReplyCount = comActNeighborCircleCommentReplyDAO.selectCount( new QueryWrapper<ComActNeighborCircleCommentReplyDO>().lambda() .eq(ComActNeighborCircleCommentReplyDO::getCircleId,neighborCircleDO.getId())); - //查询邻里圈近3天的点赞数 int fabulousCount = comActNeighborCircleFabulousDAO.selectCount(new QueryWrapper<ComActNeighborCircleFabulousDO>() .lambda().eq(ComActNeighborCircleFabulousDO::getCircleId,neighborCircleDO.getId()) .eq(ComActNeighborCircleFabulousDO::getIsEffective,ComActNeighborCircleFabulousDO.isEffective.yes)); - //查询邻里圈近3天的浏览量 - + int browseCount = comActNeighborCircleBrowseDAO.selectCount( + new QueryWrapper<ComActNeighborCircleBrowseDO>().lambda().eq(ComActNeighborCircleBrowseDO::getNeighborId,neighborCircleDO.getId())); + //更新邻里圈信息 + neighborCircleDO.setLastCommentNum(commentCount + commentReplyCount); + neighborCircleDO.setLastFabulousNum(fabulousCount); + neighborCircleDO.setLastViewsNum(browseCount); + this.baseMapper.updateById(neighborCircleDO); } } @@ -404,4 +462,65 @@ public R detailNeighborByAdmin(Long id) { return null; } + + /** + * 邻里圈取消点赞 + * @param fabulousAppDTO 请求参数 + * @return 取消点赞结果 + */ + @Override + public R neighborFabulousCancelByApp(ComActNeighborFabulousAppDTO fabulousAppDTO){ + ComActNeighborCircleFabulousDO circleFabulousDO = null; + //查询邻里圈点赞信息 + if(fabulousAppDTO.getType().equals(ComActNeighborFabulousAppDTO.type.llq)){ + //查询点赞信息 + circleFabulousDO = comActNeighborCircleFabulousDAO.selectOne( + new QueryWrapper<ComActNeighborCircleFabulousDO>().lambda().eq(ComActNeighborCircleFabulousDO::getParentId,fabulousAppDTO.getServiceId()) + .eq(ComActNeighborCircleFabulousDO::getUserId,fabulousAppDTO.getUserId()) + .eq(ComActNeighborCircleFabulousDO::getType,ComActNeighborCircleFabulousDO.type.llq)); + if(circleFabulousDO == null){ + return R.fail("未查询到点赞信息"); + } + }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)); + if(circleFabulousDO == null){ + return R.fail("未查询到点赞信息"); + } + }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)); + if(circleFabulousDO == null){ + return R.fail("未查询到点赞信息"); + } + } + if(circleFabulousDO != null){ + circleFabulousDO.setIsEffective(ComActNeighborCircleFabulousDO.isEffective.no); + comActNeighborCircleFabulousDAO.updateById(circleFabulousDO); + } + return R.ok(); + } + + /** + * 添加邻里圈浏览记录 + * @param addBrowseAppDTO 请求参数 + * @return 返回参数 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public R neighborAddBrowseByApp(ComActNeighborAddBrowseAppDTO addBrowseAppDTO){ + //添加邻里圈浏览记录 + comActNeighborCircleBrowseService.addBrowseRecord(addBrowseAppDTO.getCircleId(),addBrowseAppDTO.getUserId()); + //更新邻里圈记录 + ComActNeighborCircleDO neighborCircleDO = this.baseMapper.selectById(addBrowseAppDTO.getCircleId()); + if(neighborCircleDO != null){ + neighborCircleDO.setViewsNum(neighborCircleDO.getViewsNum() + 1); + this.baseMapper.updateById(neighborCircleDO); + } + return R.ok(); + } } -- Gitblit v1.7.1