lidongdong
2024-07-11 eef6d2bcdb29348efe4ef17bc45a4c6886b487b1
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));