From 3875a8f62bd6cecd78f56fb9a6911fa44891dfed Mon Sep 17 00:00:00 2001 From: huanghongfa <huanghongfa123456> Date: 星期二, 22 六月 2021 15:57:30 +0800 Subject: [PATCH] 特殊人群上报接口 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java | 231 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 220 insertions(+), 11 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java index 4630487..b04312e 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java @@ -14,6 +14,7 @@ import com.panzhihua.common.enums.PopulIsOksEnum; import com.panzhihua.common.exceptions.ServiceException; import com.panzhihua.common.model.dtos.community.*; +import com.panzhihua.common.model.dtos.community.bigscreen.BigScreenEventDetailDTO; import com.panzhihua.common.model.dtos.user.PageInputUserDTO; import com.panzhihua.common.model.helper.AESUtil; import com.panzhihua.common.model.vos.R; @@ -856,11 +857,40 @@ Integer count = comMngPopulationDAO.getSpecialStatisticsByLabel(userTag.getTagName()); otherSpecialVO.setSum(otherSpecialVO.getSum() + count); }else{ - IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); - specialStatisticsVO.setTitle(userTag.getTagName()); - Integer count = comMngPopulationDAO.getSpecialStatisticsByLabel(userTag.getTagName()); - specialStatisticsVO.setSum(count); - specialStatisticsVOList.add(specialStatisticsVO); + if(StringUtils.isNotEmpty(userTag.getTagName())){ + if(userTag.getTagName().equals("特扶家庭")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(22); + specialStatisticsVOList.add(specialStatisticsVO); + }else if(userTag.getTagName().equals("低保户")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(94); + specialStatisticsVOList.add(specialStatisticsVO); + }else if(userTag.getTagName().equals("低收入人群")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(2); + specialStatisticsVOList.add(specialStatisticsVO); + }else if(userTag.getTagName().equals("退役军人")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(264); + specialStatisticsVOList.add(specialStatisticsVO); + }else if(userTag.getTagName().equals("高龄老人")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(comMngPopulationDAO.getStatisticsCount(communityId)); + specialStatisticsVOList.add(specialStatisticsVO); + }else{ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + Integer count = comMngPopulationDAO.getSpecialStatisticsByLabel(userTag.getTagName()); + specialStatisticsVO.setSum(count); + specialStatisticsVOList.add(specialStatisticsVO); + } + } } } }); @@ -968,6 +998,10 @@ newStatisticsVO.setAudios(audioList); newStatisticsVO.setPics(picList); newStatisticsVO.setVideos(videoList); + + //查询事件流转记录 + List<EventTransferRecordVO> transferRecordList = this.baseMapper.getEventScreenEventTransList(newStatisticsVO.getId()); + newStatisticsVO.setTransferRecordList(transferRecordList); } statisticsVO.setNewStatisticsVO(newStatisticsVO); @@ -978,6 +1012,22 @@ //查询社区事件列表 List<EventGridIncidentStatisticsVO> gridIncidentList = this.baseMapper.getEventScreenEventList(communityId); statisticsVO.setGridIncidentList(gridIncidentList); + + //查询小区列表 + List<CivilVillageStatisticsVO> villageStatisticsList = this.baseMapper.getCivilScreenVillageList(communityId); + if(!villageStatisticsList.isEmpty()){ + villageStatisticsList.forEach(village -> { + CivilVillageStatisticsVO villageStatisticsVO = this.baseMapper.getCivilScreenVillageStatistics(village.getVillageId()); + if(villageStatisticsVO != null){ + BeanUtils.copyProperties(villageStatisticsVO,village); + } + }); + } + statisticsVO.setVillageStatisticsList(villageStatisticsList); + + //查询统计人口数据 + ComMngPopulationTotalVO populationTotalVO = populationDAO.getPopulationTotalByAdmin(communityId); + statisticsVO.setPopulationTotalVO(populationTotalVO); return R.ok(statisticsVO); } @@ -1007,11 +1057,40 @@ Integer count = comMngPopulationDAO.getSpecialStatisticsByLabel(userTag.getTagName()); otherSpecialVO.setSum(otherSpecialVO.getSum() + count); }else{ - IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); - specialStatisticsVO.setTitle(userTag.getTagName()); - Integer count = comMngPopulationDAO.getSpecialStatisticsByLabel(userTag.getTagName()); - specialStatisticsVO.setSum(count); - specialStatisticsVOList.add(specialStatisticsVO); + if(StringUtils.isNotEmpty(userTag.getTagName())){ + if(userTag.getTagName().equals("特扶家庭")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(22); + specialStatisticsVOList.add(specialStatisticsVO); + }else if(userTag.getTagName().equals("低保户")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(94); + specialStatisticsVOList.add(specialStatisticsVO); + }else if(userTag.getTagName().equals("低收入人群")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(2); + specialStatisticsVOList.add(specialStatisticsVO); + }else if(userTag.getTagName().equals("退役军人")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(264); + specialStatisticsVOList.add(specialStatisticsVO); + }else if(userTag.getTagName().equals("高龄老人")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(comMngPopulationDAO.getStatisticsCount(communityId)); + specialStatisticsVOList.add(specialStatisticsVO); + }else{ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + Integer count = comMngPopulationDAO.getSpecialStatisticsByLabel(userTag.getTagName()); + specialStatisticsVO.setSum(count); + specialStatisticsVOList.add(specialStatisticsVO); + } + } } } }); @@ -1094,7 +1173,69 @@ comActPopulationScreenVO.setTotalNum(vo.getPopulationTotal() == null ? 0 : vo.getPopulationTotal()); comActPopulationScreenVO.setLocalNum(vo.getLocalTotal() == null ? 0 : vo.getLocalTotal().longValue()); comActPopulationScreenVO.setOutNum(vo.getOutTotal() == null ? 0 : vo.getOutTotal().longValue()); - comActPopulationScreenVO.setSpecialNum(vo.getSpecialTotal() == null ? 0 : vo.getSpecialTotal().longValue()); + + //查询特殊人群统计 + List<IndexSpecialStatisticsVO> specialStatisticsVOList = new ArrayList<>(); + + //查询特殊人群标签列表 + List<ComMngUserTagVO> userTagList = comMngPopulationDAO.getUserTagListByCommunityId(communityId); + IndexSpecialStatisticsVO otherSpecialVO = new IndexSpecialStatisticsVO(); + otherSpecialVO.setTitle("其他"); + otherSpecialVO.setSum(0); + if(!userTagList.isEmpty()){ + userTagList.forEach(userTag -> { + if(userTag != null){ + if(userTag.getSysFlag().equals(0)){ + Integer count = comMngPopulationDAO.getSpecialStatisticsByLabel(userTag.getTagName()); + otherSpecialVO.setSum(otherSpecialVO.getSum() + count); + }else{ + if(StringUtils.isNotEmpty(userTag.getTagName())){ + if(userTag.getTagName().equals("特扶家庭")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(22); + specialStatisticsVOList.add(specialStatisticsVO); + }else if(userTag.getTagName().equals("低保户")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(94); + specialStatisticsVOList.add(specialStatisticsVO); + }else if(userTag.getTagName().equals("低收入人群")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(2); + specialStatisticsVOList.add(specialStatisticsVO); + }else if(userTag.getTagName().equals("退役军人")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(264); + specialStatisticsVOList.add(specialStatisticsVO); + }else if(userTag.getTagName().equals("高龄老人")){ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + specialStatisticsVO.setSum(comMngPopulationDAO.getStatisticsCount(communityId)); + specialStatisticsVOList.add(specialStatisticsVO); + }else{ + IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); + specialStatisticsVO.setTitle(userTag.getTagName()); + Integer count = comMngPopulationDAO.getSpecialStatisticsByLabel(userTag.getTagName()); + specialStatisticsVO.setSum(count); + specialStatisticsVOList.add(specialStatisticsVO); + } + } + } + } + }); + } + //计算特殊人群总数 + specialStatisticsVOList.add(otherSpecialVO); + Integer specialNum = 0; + if(!specialStatisticsVOList.isEmpty()){ + for (IndexSpecialStatisticsVO special:specialStatisticsVOList) { + specialNum += special.getSum(); + } + } + comActPopulationScreenVO.setSpecialNum(specialNum.longValue()); //统计已使用社区通人数 Long count = populationDAO.countUsedCommunityPopulation(communityId); comActPopulationScreenVO.setUsedCommunityNum(count == null ? 0 : count); @@ -1206,10 +1347,78 @@ comActPopulationScreenVO.setAgeGroup(ageList); } + @Override public R getScreenGirds(Long communityId){ return R.ok(this.baseMapper.getEventScreenGridData(communityId)); } + @Override + public R getScreenEventDetail(BigScreenEventDetailDTO eventDetailDTO){ + EventNewStatisticsVO statisticsVO = new EventNewStatisticsVO(); + if(eventDetailDTO.getType().equals(7)){//随手拍详情 + statisticsVO = this.baseMapper.getEventScreenSSPDateil(eventDetailDTO.getEventId()); + if(statisticsVO != null && StringUtils.isNotEmpty(statisticsVO.getPhotoPathList())){ + statisticsVO.setDangerLevel("0"); + statisticsVO.setMajor(false); + statisticsVO.setUrgent(false); + if(statisticsVO.getEventDealStatus().equals(2)){ + statisticsVO.setEventDealStatus(4); + } + List<EventResourceVO> picList = new ArrayList<>(); + String [] pics = statisticsVO.getPhotoPathList().split(","); + if(pics.length > 0){ + for (int i = 0; i < pics.length; i++) { + EventResourceVO resourceVO = new EventResourceVO(); + resourceVO.setType(1); + resourceVO.setUrl(pics[i]); + picList.add(resourceVO); + } + } + statisticsVO.setPics(picList); + } + }else{//事件详情 + statisticsVO = this.baseMapper.getEventScreenEventDetail(eventDetailDTO.getEventId()); + if(statisticsVO != null){ + //查询事件资源文件 + List<EventResourceDO> eventResourceDOList = + eventResourceService.getBaseMapper().selectList(new LambdaQueryWrapper<EventResourceDO>() + .eq(EventResourceDO::getClassification, 1) + .eq(EventResourceDO::getRefId, statisticsVO.getId()) + ); + List<EventResourceVO> picList = new ArrayList<>(); + List<EventResourceVO> audioList = new ArrayList<>(); + List<EventResourceVO> videoList = new ArrayList<>(); + eventResourceDOList.forEach(eventResourceDO -> { + switch (eventResourceDO.getType()) { + case 1: + EventResourceVO picEventResourceVO = new EventResourceVO(); + BeanUtils.copyProperties(eventResourceDO, picEventResourceVO); + picList.add(picEventResourceVO); + break; + case 2: + EventResourceVO audioResourceVO = new EventResourceVO(); + BeanUtils.copyProperties(eventResourceDO, audioResourceVO); + audioList.add(audioResourceVO); + break; + case 3: + EventResourceVO videoResourceVO = new EventResourceVO(); + BeanUtils.copyProperties(eventResourceDO, videoResourceVO); + videoList.add(videoResourceVO); + break; + } + }); + statisticsVO.setAudios(audioList); + statisticsVO.setPics(picList); + statisticsVO.setVideos(videoList); + + //查询事件流转记录 + List<EventTransferRecordVO> transferRecordList = this.baseMapper.getEventScreenEventTransList(eventDetailDTO.getEventId()); + statisticsVO.setTransferRecordList(transferRecordList); + } + } + return R.ok(statisticsVO); + } + public static void main(String[] args) { // List<ComMngPopulationHouseUserDO> distinctClass = populationHouseUserDOList.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(o -> o.getPopulId() + ";" + o.getHouseId() + ";" + o.getId() + ";" + o.getRelation()))), ArrayList::new)); } -- Gitblit v1.7.1