From eef6d2bcdb29348efe4ef17bc45a4c6886b487b1 Mon Sep 17 00:00:00 2001 From: lidongdong <1459917685@qq.com> Date: 星期四, 11 七月 2024 18:16:26 +0800 Subject: [PATCH] 花城 【小程序】统计排行添加是否是问题清单标识5 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java | 45 ++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 40 insertions(+), 5 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java index b009883..dec89f4 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java @@ -302,9 +302,21 @@ BeanUtils.copyProperties(comActDiscussDO, comActDiscussVO); comActDiscussVO.setSignNum(comActDiscussDO.getFabulousNum()); Integer type = comActDiscussVO.getType(); + Integer num=comActDiscussDAO.getCommentNum(id+""); + comActDiscussVO.setCommentNum(num); if (type.equals(ComActDiscussVO.type.tp)) { //查询选项列表 List<ComActDiscussOptionVO> comActDiscussOptionList = comActDiscussOptionDAO.getDiscussOptionList(id); + comActDiscussOptionList.forEach(option -> { + if (option.getAllNum() ==null || option.getAllNum() == 0) { + option.setPercent(new BigDecimal(0)); + } else { + //占比 + BigDecimal percent = BigDecimal.valueOf(option.getNum()).divide(BigDecimal.valueOf(option.getAllNum()), 2, RoundingMode.HALF_UP) + .multiply(BigDecimal.valueOf(100)).setScale(0); + option.setPercent(percent); + } + }); comActDiscussVO.setComActDiscussOptionVOS(comActDiscussOptionList); } Long userId = comActDiscussDO.getUserId(); @@ -316,7 +328,8 @@ //分页查询评论列表 PageComActDiscussCommentDTO pageComActDiscussCommentDTO = new PageComActDiscussCommentDTO(); BeanUtils.copyProperties(discussDetailDTO, pageComActDiscussCommentDTO); - IPage<ComActDiscussCommentVO> discussComments = comActDiscussDAO.pageDiscussCommentAdmin(new Page<>(pageComActDiscussCommentDTO.getPageNum(), pageComActDiscussCommentDTO.getPageSize()), pageComActDiscussCommentDTO); + IPage<ComActDiscussCommentVO> discussComments = comActDiscussDAO.pageDiscussCommentAdmin(new Page<>(pageComActDiscussCommentDTO.getPageNum(), + pageComActDiscussCommentDTO.getPageSize()), pageComActDiscussCommentDTO); discussComments.getRecords().forEach(comment -> { if (comment.getReplyNum() > 0) { List<ComActDiscussCommentVO> childList = comActDiscussDAO.getDiscussCommentReplyList(comment.getId()); @@ -351,9 +364,21 @@ BeanUtils.copyProperties(comActDiscussDO, comActDiscussVO); comActDiscussVO.setSignNum(comActDiscussDO.getFabulousNum()); Integer type = comActDiscussVO.getType(); + Integer num=comActDiscussDAO.getCommentNum(id+""); + comActDiscussVO.setCommentNum(num); if (type.equals(ComActDiscussVO.type.tp)) { //查询选项列表 List<ComActDiscussOptionVO> comActDiscussOptionList = comActDiscussOptionDAO.getDiscussOptionList(id); + comActDiscussOptionList.forEach(option -> { + if (option.getAllNum() ==null || option.getAllNum() == 0) { + option.setPercent(new BigDecimal(0)); + } else { + //占比 + BigDecimal percent = BigDecimal.valueOf(option.getNum()).divide(BigDecimal.valueOf(option.getAllNum()), 2, RoundingMode.HALF_UP) + .multiply(BigDecimal.valueOf(100)).setScale(0); + option.setPercent(percent); + } + }); comActDiscussVO.setComActDiscussOptionVOS(comActDiscussOptionList); } Long userId = comActDiscussDO.getUserId(); @@ -395,6 +420,7 @@ comActDiscussDO.setId(id); comActDiscussDO.setIsDel(ComActDiscussDO.isOk.yes); if (comActDiscussDAO.updateById(comActDiscussDO) > 0) { + comActDiscussDAO.incrCommentAndJoinNumById(id, false,false); return R.ok(); } return R.fail(); @@ -430,9 +456,9 @@ //评论成功,评论总数+1 //若首次参与评论,参与讨论人数+1 if (currentUserCommentCount > 0) { - comActDiscussDAO.incrCommentAndJoinNumById(discussId, false); + comActDiscussDAO.incrCommentAndJoinNumById(discussId, false,true); } else { - comActDiscussDAO.incrCommentAndJoinNumById(discussId, true); + comActDiscussDAO.incrCommentAndJoinNumById(discussId, true,true); } return R.ok(); } @@ -620,9 +646,9 @@ //回复成功,评论总数+1 //若首次参与评论,参与讨论人数+1 if (currentUserCommentCount > 0) { - comActDiscussDAO.incrCommentAndJoinNumById(discussId, false); + comActDiscussDAO.incrCommentAndJoinNumById(discussId, false,true); } else { - comActDiscussDAO.incrCommentAndJoinNumById(discussId, true); + comActDiscussDAO.incrCommentAndJoinNumById(discussId, true,true); } return R.ok(); } @@ -651,6 +677,11 @@ public R pageDiscussCommentAdmin(PageComActDiscussCommentDTO pageComActDiscussCommentDTO) { IPage<ComActDiscussCommentVO> iPage = comActDiscussDAO.pageDiscussCommentAdmin(new Page<>(pageComActDiscussCommentDTO.getPageNum(), pageComActDiscussCommentDTO.getPageSize()), pageComActDiscussCommentDTO); return R.ok(iPage); + } + + @Override + public R deleteId(String id) { + return R.ok(comActDiscussDAO.deleteId(id)); } /** @@ -1113,6 +1144,8 @@ BeanUtils.copyProperties(comActDiscussDO, comActDiscussVO); comActDiscussVO.setSignNum(comActDiscussDO.getFabulousNum()); Integer type = comActDiscussVO.getType(); + Integer num=comActDiscussDAO.getCommentNum(id+""); + comActDiscussVO.setCommentNum(num); if (type.equals(2)) { List<ComActDiscussOptionDO> comActDiscussOptionDOS = comActDiscussOptionDAO.selectList( new QueryWrapper<ComActDiscussOptionDO>().lambda().eq(ComActDiscussOptionDO::getDiscussId, id)); @@ -1209,6 +1242,8 @@ BeanUtils.copyProperties(comActDiscussDO, comActDiscussVO); comActDiscussVO.setSignNum(comActDiscussDO.getFabulousNum()); Integer type = comActDiscussVO.getType(); + Integer num=comActDiscussDAO.getCommentNum(id+""); + comActDiscussVO.setCommentNum(num); if (type.equals(2)) { List<ComActDiscussOptionDO> comActDiscussOptionDOS = comActDiscussOptionDAO.selectList( new QueryWrapper<ComActDiscussOptionDO>().lambda().eq(ComActDiscussOptionDO::getDiscussId, id)); -- Gitblit v1.7.1