101captain
2022-06-06 560db6a1036201e7e2ac50f34ad4a418f17eaba6
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/BigScreenStatisticsServiceImpl.java
@@ -17,6 +17,7 @@
import com.panzhihua.common.model.vos.community.ComActEasyPhotoVO;
import com.panzhihua.common.model.vos.community.ComMngVolunteerMngVO;
import com.panzhihua.common.model.vos.community.bigscreen.BigScreenAlarmStatisticsInfo;
import com.panzhihua.common.model.vos.community.bigscreen.BigScreenCourtyardStatisticsInfo;
import com.panzhihua.common.model.vos.community.bigscreen.BigScreenVolunteerStatisticsInfo;
import com.panzhihua.common.model.vos.community.bigscreen.EquipmentPointMapDataVO;
import com.panzhihua.common.model.vos.community.bigscreen.VolunteerOrgRelationVO;
@@ -882,6 +883,17 @@
            jjwtTotalPolylineData.add(temp);
        });
        statisticsInfo.setJjwtTotalPolylineData(jjwtTotalPolylineData);
        //新增院落议事数
        List<StatisticsCommVO> ylysAddPolylineData = comActFourMemberDao.retrieveYLYSAddPolylineData(communityId);
        statisticsInfo.setYlysAddPolylineData(ylysAddPolylineData);
        //累计院落议事数
        List<StatisticsCommVO> ylysTotalPolylineData = new ArrayList<>();
        ylysAddPolylineData.forEach(e -> {
            StatisticsCommVO temp = comActFourMemberDao.retrieveYLYSTotalPolylineData(communityId, e.getFiled());
            temp.setFiled(e.getFiled());
            ylysTotalPolylineData.add(temp);
        });
        statisticsInfo.setYlysTotalPolylineData(ylysTotalPolylineData);
        return R.ok(statisticsInfo);
    }
@@ -904,7 +916,8 @@
                int size = entry.getValue().size();
                temp.setFiled(entry.getKey());
                temp.setNum(size);
                temp.setPercent(new BigDecimal(size/teamCount).setScale(2));
                temp.setPercent(new BigDecimal(size)
                        .divide(new BigDecimal(teamCount), 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).setScale(0));
                teamTypeCircleData.add(temp);
            }
        }
@@ -931,7 +944,8 @@
                int size = entry.getValue().size();
                temp.setFiled(entry.getKey());
                temp.setNum(size);
                temp.setPercent(new BigDecimal(size/adjustCount).setScale(2));
                temp.setPercent(new BigDecimal(size)
                        .divide(new BigDecimal(adjustCount), 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).setScale(0));
                adjustCircleData.add(temp);
            }
        }
@@ -958,7 +972,8 @@
                int size = entry.getValue().size();
                temp.setFiled(entry.getKey());
                temp.setNum(size);
                temp.setPercent(new BigDecimal(size/controlCount).setScale(2));
                temp.setPercent(new BigDecimal(size)
                        .divide(new BigDecimal(controlCount), 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).setScale(0));
                controlCircleData.add(temp);
            }
        }
@@ -1095,7 +1110,8 @@
                int size = entry.getValue().size();
                temp.setFiled(entry.getKey());
                temp.setNum(size);
                temp.setPercent(new BigDecimal(size/count).setScale(2));
                temp.setPercent(new BigDecimal(size)
                        .divide(new BigDecimal(count), 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).setScale(0));
                volunteerServiceTypeCircleData.add(temp);
            }
        }
@@ -1105,7 +1121,8 @@
        int sum = volunteerAgeCircleData.stream().mapToInt(StatisticsCommVO::getNum).sum();
        volunteerAgeCircleData.forEach(e -> {
            if (sum != 0) {
                e.setPercent(new BigDecimal(e.getNum()/sum).setScale(2));
                e.setPercent(new BigDecimal(e.getNum())
                        .divide(new BigDecimal(sum), 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).setScale(0));
            } else {
                e.setPercent(new BigDecimal(0));
            }
@@ -1122,7 +1139,8 @@
                int size = entry.getValue().size();
                temp.setFiled(entry.getKey());
                temp.setNum(size);
                temp.setPercent(new BigDecimal(size/count).setScale(2));
                temp.setPercent(new BigDecimal(size)
                        .divide(new BigDecimal(count), 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).setScale(0));
                volunteerSkillCircleData.add(temp);
            }
        }
@@ -1166,6 +1184,39 @@
        return R.ok(comActMicroWishDAO.pageFourMemberResolve(page, pageBaseDTO));
    }
    /**
     * 金沙定制页面-四长四员院落议事展示列表
     * @param pageBaseDTO
     * @return
     */
    @Override
    public R pageCourtyardDiscuss(PageBaseDTO pageBaseDTO) {
        Page page = retrievePage(pageBaseDTO);
        return R.ok(comActDiscussDAO.pageCourtyardDiscuss(page, pageBaseDTO));
    }
    /**
     * 金沙定制页面-院落议事
     * @param communityId
     * @return
     */
    @Override
    public R getCourtyardBaseData(Long communityId) {
        BigScreenCourtyardStatisticsInfo statisticsInfo = comActDiscussDAO.getCourtyardBaseData(communityId);
        //新增院落议事数
        List<StatisticsCommVO> discussAddPolylineData = comActFourMemberDao.retrieveYLYSAddPolylineData(communityId);
        statisticsInfo.setDiscussAddPolylineData(discussAddPolylineData);
        //累计院落议事数
        List<StatisticsCommVO> discussTotalPolylineData = new ArrayList<>();
        discussAddPolylineData.forEach(e -> {
            StatisticsCommVO temp = comActFourMemberDao.retrieveYLYSTotalPolylineData(communityId, e.getFiled());
            temp.setFiled(e.getFiled());
            discussTotalPolylineData.add(temp);
        });
        statisticsInfo.setDiscussTotalPolylineData(discussTotalPolylineData);
        return R.ok(statisticsInfo);
    }
    private Page retrievePage(PageBaseDTO pageBaseDTO) {
        Long pageNum = pageBaseDTO.getPageNum();
        Long size = pageBaseDTO.getPageSize();