| | |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | 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; |
| | | import com.panzhihua.common.model.vos.grid.EventVO; |
| | | import com.panzhihua.common.model.vos.property.ComPropertyAlarmVO; |
| | | import com.panzhihua.common.model.vos.property.ComPropertyEquipmentVO; |
| | | import com.panzhihua.service_community.dao.ComMngVolunteerMngDAO; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenDpcStatisticsInfo; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | import com.panzhihua.common.model.dtos.property.CommonPage; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.community.ComActDynVO; |
| | | import com.panzhihua.common.model.vos.community.ComActEasyPhotoVO; |
| | | import com.panzhihua.common.model.vos.community.ComActFourMemberVO; |
| | | import com.panzhihua.common.model.vos.community.ComMngVolunteerMngVO; |
| | | import com.panzhihua.common.model.vos.community.ComSwPatrolRecordVO; |
| | | import com.panzhihua.common.model.vos.community.StatisticsCommVO; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenActivityLine; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenAlarmStatisticsInfo; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenCommunityStatisticsVO; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenCourtyardStatisticsInfo; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenDynStatisticsInfo; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenEasyPhotoStatisticsInfo; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenFiveAssociationsStatisticsInfo; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenFmsStatisticsInfo; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenFourMemberStatisticsInfo; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenHatchStatisticsInfo; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenHmkBaseInfo; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenHmkProjectInfo; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenHmkProjectTypeInfo; |
| | |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenQuestionnaireStatisticsInfo; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenResidentActStatisticsInfo; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.BigScreenVolunteerActStatisticsInfo; |
| | | 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.FourMemberOrgRelationVO; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.GridsGovernanceStatisticsVO; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.ResidentAutonomyStatisticsVO; |
| | | import com.panzhihua.common.model.vos.community.bigscreen.VolunteerOrgRelationVO; |
| | | import com.panzhihua.common.model.vos.community.convenient.ConvenientMerchantVO; |
| | | import com.panzhihua.common.model.vos.community.fms.ComFmsTeamVO; |
| | | import com.panzhihua.common.model.vos.community.screen.civil.CivilVillageStatisticsVO; |
| | | import com.panzhihua.common.model.vos.community.screen.event.EventGridIncidentStatisticsVO; |
| | | import com.panzhihua.common.model.vos.community.screen.event.EventGridStatisticsVO; |
| | | import com.panzhihua.common.model.vos.grid.EventVO; |
| | | import com.panzhihua.common.model.vos.property.ComPropertyAlarmVO; |
| | | import com.panzhihua.common.model.vos.property.ComPropertyEquipmentVO; |
| | | import com.panzhihua.common.utlis.DateUtils; |
| | | import com.panzhihua.service_community.dao.ComActActivityDAO; |
| | | import com.panzhihua.service_community.dao.ComActCommitteeDao; |
| | | import com.panzhihua.service_community.dao.ComActDAO; |
| | | import com.panzhihua.service_community.dao.ComActDiscussDAO; |
| | | import com.panzhihua.service_community.dao.ComActDynDAO; |
| | | import com.panzhihua.service_community.dao.ComActEasyPhotoDAO; |
| | | import com.panzhihua.service_community.dao.ComActEnterpriseDAO; |
| | | import com.panzhihua.service_community.dao.ComActFourMemberDao; |
| | | import com.panzhihua.service_community.dao.ComActMicroWishDAO; |
| | | import com.panzhihua.service_community.dao.ComActNeighborCircleDAO; |
| | | import com.panzhihua.service_community.dao.ComActQuestnaireDAO; |
| | | import com.panzhihua.service_community.dao.ComActSocialOrgDao; |
| | | import com.panzhihua.service_community.dao.ComActSocialOrgHatchDAO; |
| | | import com.panzhihua.service_community.dao.ComActSocialProjectDao; |
| | | import com.panzhihua.service_community.dao.ComActSocialWorkerDao; |
| | | import com.panzhihua.service_community.dao.ComActWarehouseDonatesDao; |
| | | import com.panzhihua.service_community.dao.ComFmsServiceDAO; |
| | | import com.panzhihua.service_community.dao.ComMngPopulationDAO; |
| | | import com.panzhihua.service_community.dao.ComMngVolunteerMngDAO; |
| | | import com.panzhihua.service_community.dao.ComPropertyDao; |
| | | import com.panzhihua.service_community.dao.ConvenientMerchantDAO; |
| | | import com.panzhihua.service_community.model.dos.ComActDO; |
| | | import com.panzhihua.service_community.service.BigScreenStatisticsService; |
| | | |
| | | import lombok.extern.slf4j.Slf4j; |
| | |
| | | private ComFmsServiceDAO comFmsServiceDAO; |
| | | @Resource |
| | | private ComMngVolunteerMngDAO comMngVolunteerMngDAO; |
| | | @Resource |
| | | private ComActSocialOrgHatchDAO comActSocialOrgHatchDAO; |
| | | @Resource |
| | | private ComActDAO comActDAO; |
| | | @Resource |
| | | private ComActEnterpriseDAO comActEnterpriseDAO; |
| | | |
| | | /** |
| | | * 大数据分析平台-居民自治 |
| | |
| | | return R.ok(statisticsInfo); |
| | | } |
| | | |
| | | /** |
| | | * 孵化中心-基础数据 |
| | | * @param communityId |
| | | * @return |
| | | */ |
| | | @Override |
| | | public R getHatchBaseData(Long communityId) { |
| | | ComActDO comActDO = comActDAO.selectById(communityId); |
| | | BigScreenHatchStatisticsInfo statisticsInfo = comActSocialOrgHatchDAO.getHatchBaseData(communityId, comActDO.getStreetId()); |
| | | //孵化进程占比圆形图数据 |
| | | List<StatisticsCommVO> hatchScheduleCircleData = comActSocialOrgHatchDAO.getHatchScheduleCircleData(comActDO.getStreetId()); |
| | | statisticsInfo.setHatchScheduleCircleData(hatchScheduleCircleData); |
| | | //孵化状态占比柱形数据 |
| | | List<StatisticsCommVO> hatchStatusColumnData = comActSocialOrgHatchDAO.getHatchStatusColumnData(comActDO.getStreetId()); |
| | | statisticsInfo.setHatchStatusColumnData(hatchStatusColumnData); |
| | | //街道组织占比柱形数据 |
| | | List<StatisticsCommVO> streetOrgColumnData = comActSocialOrgHatchDAO.getStreetOrgColumnData(comActDO.getStreetId()); |
| | | if (nonNull(streetOrgColumnData) && !streetOrgColumnData.isEmpty()) { |
| | | streetOrgColumnData.forEach(e -> e.setStatisticsCommVOS(comActSocialOrgHatchDAO.getStreetOrgChildData(e.getFiled()))); |
| | | } |
| | | statisticsInfo.setStreetOrgColumnData(streetOrgColumnData); |
| | | return R.ok(statisticsInfo); |
| | | } |
| | | |
| | | /** |
| | | * 孵化中心-孵化成果展示列表 |
| | | * @param pageBaseDTO |
| | | * @return |
| | | */ |
| | | @Override |
| | | public R pageHatchResult(PageBaseDTO pageBaseDTO) { |
| | | ComActDO comActDO = comActDAO.selectById(pageBaseDTO.getCommunityId()); |
| | | Page page = retrievePage(pageBaseDTO); |
| | | return R.ok(comActSocialOrgDao.pageHatchResult(page, pageBaseDTO, comActDO.getStreetId())); |
| | | } |
| | | |
| | | /** |
| | | * 孵化中心-孵化进度展示列表 |
| | | * @param pageBaseDTO |
| | | * @return |
| | | */ |
| | | @Override |
| | | public R pageHatchSchedule(PageBaseDTO pageBaseDTO) { |
| | | ComActDO comActDO = comActDAO.selectById(pageBaseDTO.getCommunityId()); |
| | | Page page = retrievePage(pageBaseDTO); |
| | | return R.ok(comActSocialOrgDao.pageHatchSchedule(page, pageBaseDTO, comActDO.getStreetId())); |
| | | } |
| | | |
| | | /** |
| | | * 五社联动基础数据 |
| | | * @param communityId |
| | | * @return |
| | | */ |
| | | @Override |
| | | public R getFiveAssociationsBaseData(Long communityId) { |
| | | ComActDO comActDO = comActDAO.selectById(communityId); |
| | | BigScreenFiveAssociationsStatisticsInfo statisticsInfo = comActSocialProjectDao.getFiveAssociationsBaseData(communityId, comActDO.getStreetId()); |
| | | //社区企业服务分类占比圆形图数据 |
| | | Integer enterpriseNum = statisticsInfo.getEnterpriseNum(); |
| | | List<StatisticsCommVO> enterpriseServiceTypeCircleData = comActEnterpriseDAO.getEnterpriseServiceTypeCircleData(communityId); |
| | | if (nonNull(enterpriseServiceTypeCircleData) && !enterpriseServiceTypeCircleData.isEmpty() && enterpriseNum > 0) { |
| | | enterpriseServiceTypeCircleData.forEach(e -> { |
| | | e.setPercent(new BigDecimal(e.getNum()) |
| | | .divide(new BigDecimal(enterpriseNum), 2, BigDecimal.ROUND_HALF_UP) |
| | | .multiply(new BigDecimal(100)).setScale(0)); |
| | | }); |
| | | } |
| | | statisticsInfo.setEnterpriseServiceTypeCircleData(enterpriseServiceTypeCircleData); |
| | | //社区工作者年龄段占比圆形图数据 |
| | | List<StatisticsCommVO> socialWorkerAgeStageCircleData = comActEnterpriseDAO.getSocialWorkerAgeStageCircleData(communityId); |
| | | Integer socialWorkerNum = statisticsInfo.getSocialWorkerNum(); |
| | | if (nonNull(socialWorkerAgeStageCircleData) && !socialWorkerAgeStageCircleData.isEmpty() && socialWorkerNum > 0) { |
| | | socialWorkerAgeStageCircleData.forEach(e -> { |
| | | e.setPercent(new BigDecimal(e.getNum()) |
| | | .divide(new BigDecimal(socialWorkerNum), 2, BigDecimal.ROUND_HALF_UP) |
| | | .multiply(new BigDecimal(100)).setScale(0)); |
| | | }); |
| | | } |
| | | statisticsInfo.setSocialWorkerAgeStageCircleData(socialWorkerAgeStageCircleData); |
| | | //社区工作者服务分类占比圆形图数据 |
| | | List<StatisticsCommVO> socialWorkerServiceTypeCircleData = comActEnterpriseDAO.getSocialWorkerServiceTypeCircleData(communityId); |
| | | if (nonNull(socialWorkerServiceTypeCircleData) && !socialWorkerServiceTypeCircleData.isEmpty() && socialWorkerNum > 0) { |
| | | socialWorkerServiceTypeCircleData.forEach(e -> { |
| | | e.setPercent(new BigDecimal(e.getNum()) |
| | | .divide(new BigDecimal(socialWorkerNum), 2, BigDecimal.ROUND_HALF_UP) |
| | | .multiply(new BigDecimal(100)).setScale(0)); |
| | | }); |
| | | } |
| | | statisticsInfo.setSocialWorkerServiceTypeCircleData(socialWorkerServiceTypeCircleData); |
| | | return R.ok(statisticsInfo); |
| | | } |
| | | |
| | | /** |
| | | * 五社联动项目展示列表 |
| | | * @param pageBaseDTO |
| | | * @return |
| | | */ |
| | | @Override |
| | | public R pageSocialProjectList(PageBaseDTO pageBaseDTO) { |
| | | ComActDO comActDO = comActDAO.selectById(pageBaseDTO.getCommunityId()); |
| | | Page page = retrievePage(pageBaseDTO); |
| | | return R.ok(comActSocialProjectDao.pageSocialProjectList(page, pageBaseDTO, comActDO.getStreetId())); |
| | | } |
| | | |
| | | /** |
| | | * 五社联动社会组织展示列表 |
| | | * @param pageBaseDTO |
| | | * @return |
| | | */ |
| | | @Override |
| | | public R pageSocialOrgList(PageBaseDTO pageBaseDTO) { |
| | | ComActDO comActDO = comActDAO.selectById(pageBaseDTO.getCommunityId()); |
| | | Page page = retrievePage(pageBaseDTO); |
| | | return R.ok(comActSocialOrgDao.pageSocialOrgList(page, pageBaseDTO, comActDO.getStreetId())); |
| | | } |
| | | |
| | | /** |
| | | * 人大代表 |
| | | * @param communityId |
| | | * @return |
| | | */ |
| | | @Override |
| | | public R dpcBase(Long communityId) { |
| | | BigScreenDpcStatisticsInfo statisticsInfo = comActEasyPhotoDAO.selectDpcBaseData(communityId); |
| | | //随手拍新增折线数据 |
| | | List<StatisticsCommVO> easyPhotoAddPolylineData = comActEasyPhotoDAO.getEasyPhotoAddPolylineDataForDpc(communityId); |
| | | statisticsInfo.setEasyPhotoAddPolylineData(easyPhotoAddPolylineData); |
| | | //随手拍累计折线数据 |
| | | List<StatisticsCommVO> easyPhotoTotalPolylineData = new ArrayList<>(); |
| | | easyPhotoAddPolylineData.forEach(e -> { |
| | | StatisticsCommVO temp = comActEasyPhotoDAO.getEasyPhotoTotalPolylineDateForDpc(communityId, e.getFiled()); |
| | | temp.setFiled(e.getFiled()); |
| | | easyPhotoTotalPolylineData.add(temp); |
| | | }); |
| | | statisticsInfo.setEasyPhotoTotalPolylineData(easyPhotoTotalPolylineData); |
| | | return R.ok(statisticsInfo); |
| | | } |
| | | |
| | | /** |
| | | * 人大代表-随手拍展示列表 |
| | | * @return |
| | | */ |
| | | @Override |
| | | public R dpcEasyPhotoList(PageBaseDTO pageBaseDTO) { |
| | | Page page = retrievePage(pageBaseDTO); |
| | | return R.ok(comActEasyPhotoDAO.dpcEasyPhotoList(page, pageBaseDTO)); |
| | | } |
| | | |
| | | private Page retrievePage(PageBaseDTO pageBaseDTO) { |
| | | Long pageNum = pageBaseDTO.getPageNum(); |
| | | Long size = pageBaseDTO.getPageSize(); |