| | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.google.common.base.Joiner; |
| | | import com.google.common.collect.Lists; |
| | | import com.panzhihua.common.enums.PopulCultureLevelEnum; |
| | | import com.panzhihua.common.enums.PopulHouseUseEnum; |
| | | import com.panzhihua.common.enums.PopulIsOksEnum; |
| | | import com.panzhihua.common.enums.PopulMarriageEnum; |
| | | import com.panzhihua.common.enums.*; |
| | | 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.grid.PageComMngPopulationDTO; |
| | | import com.panzhihua.common.model.dtos.grid.PagePopulationListDTO; |
| | | import com.panzhihua.common.model.dtos.grid.admin.ComMngPopulationExportDTO; |
| | | import com.panzhihua.common.model.dtos.grid.admin.ComMngPopulationListDTO; |
| | | import com.panzhihua.common.model.dtos.grid.admin.ComMngPopulationSubordinateDTO; |
| | | import com.panzhihua.common.model.dtos.grid.admin.PageComMngVillagePopulationDTO; |
| | | import com.panzhihua.common.model.dtos.user.PageInputUserDTO; |
| | | import com.panzhihua.common.model.helper.AESUtil; |
| | | import com.panzhihua.common.model.vos.R; |
| | |
| | | import com.panzhihua.common.model.vos.community.screen.civil.CivilStatisticsVO; |
| | | import com.panzhihua.common.model.vos.community.screen.civil.CivilVillageStatisticsVO; |
| | | import com.panzhihua.common.model.vos.community.screen.event.*; |
| | | import com.panzhihua.common.model.vos.community.screen.event.EventTransferRecordVO; |
| | | import com.panzhihua.common.model.vos.community.screen.index.*; |
| | | import com.panzhihua.common.model.vos.grid.EventGridDataVO; |
| | | import com.panzhihua.common.model.vos.grid.EventResourceVO; |
| | | import com.panzhihua.common.model.vos.grid.PopulationDetailVO; |
| | | import com.panzhihua.common.model.vos.grid.PopulationListVO; |
| | | import com.panzhihua.common.model.vos.grid.*; |
| | | import com.panzhihua.common.model.vos.grid.admin.ComMngPopulationListVO; |
| | | import com.panzhihua.common.model.vos.grid.admin.ComMngPopulationVillageVO; |
| | | import com.panzhihua.common.model.vos.grid.admin.ComMngSubordinateVO; |
| | | import com.panzhihua.common.model.vos.grid.admin.excel.ComMngPopulationExportExcelVO; |
| | | import com.panzhihua.common.model.vos.screen.ComActPopulationCultureVO; |
| | | import com.panzhihua.common.model.vos.screen.ComActPopulationScreenVO; |
| | | import com.panzhihua.common.model.vos.screen.ComMngPopulationAgeVO; |
| | |
| | | import com.panzhihua.service_community.model.dos.*; |
| | | import com.panzhihua.service_community.service.ComMngPopulationHouseUserService; |
| | | import com.panzhihua.service_community.service.ComMngPopulationService; |
| | | import com.panzhihua.service_community.service.ComMngVillageService; |
| | | import com.panzhihua.service_community.service.EventResourceService; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.math.BigDecimal; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | |
| | | //不存在实有人口,则新增 |
| | | populationDO = savePopulationDO(vo, comActDO, comMngVillageDO); |
| | | } else { |
| | | //如果存在人口信息,且是自用房或是居住地,则更新人口默认的房屋信息 |
| | | if ((vo.getIsRent() != null && vo.getIsRent().equals(PopulHouseUseEnum.SELF.getCode())) || |
| | | (vo.getIsResidence() != null && vo.getIsResidence().intValue() == 1)) { |
| | | //如果存在人口信息,且是自用房,则更新人口默认的房屋信息 |
| | | if (vo.getIsRent() != null && vo.getIsRent().equals(PopulHouseUseEnum.SELF.getCode())) { |
| | | populationDO = updatePopulationDO(vo, populationDO); |
| | | } |
| | | } |
| | |
| | | comActPopulationScreenVO.setAgeGroup(ageList); |
| | | } |
| | | |
| | | /** |
| | | * 获取社区网格 |
| | | * |
| | | * @param communityId 社区id |
| | | * @return 网格数据 |
| | | */ |
| | | @Override |
| | | public R getScreenGirds(Long communityId) { |
| | | return R.ok(this.baseMapper.getEventScreenGridData(communityId)); |
| | | } |
| | | |
| | | /** |
| | | * 事件大屏查询事件详情 |
| | | * |
| | | * @param eventDetailDTO 请求参数 |
| | | * @return 事件详情 |
| | | */ |
| | | @Override |
| | | public R getScreenEventDetail(BigScreenEventDetailDTO eventDetailDTO) { |
| | | EventNewStatisticsVO statisticsVO = new EventNewStatisticsVO(); |
| | |
| | | return R.ok(statisticsVO); |
| | | } |
| | | |
| | | /** |
| | | * 获取人口数据信息 |
| | | * |
| | | * @param populationListDTO 请求参数 |
| | | * @return 人口数据 |
| | | */ |
| | | @Override |
| | | public R pagePopulationListApp(PagePopulationListDTO populationListDTO){ |
| | | IPage<PopulationListVO> pagePopulationList = this.baseMapper.pagePopulationListApp(new Page(populationListDTO.getPageNum(),populationListDTO.getPageSize()),populationListDTO); |
| | |
| | | return R.ok(pagePopulationList); |
| | | } |
| | | |
| | | /** |
| | | * 根据人口id获取人口详情 |
| | | * |
| | | * @param populationId 人口id |
| | | * @return 人口详情 |
| | | */ |
| | | @Override |
| | | public R getPopulationDetailApp(Long populationId){ |
| | | PopulationDetailVO detail = this.baseMapper.getPopulationDetailApp(populationId); |
| | |
| | | return R.ok(detail); |
| | | } |
| | | |
| | | /** |
| | | * 修复人口加密问题 |
| | | * |
| | | * @return 修复结果 |
| | | */ |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R getPopulationRepairByApp(){ |
| | |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | | * 综治后台-居民列表 |
| | | * @param populationListDTO 请求参数 |
| | | * @return 居民列表 |
| | | */ |
| | | @Override |
| | | public R getGridPopulationAdminList(ComMngPopulationListDTO populationListDTO){ |
| | | IPage<ComMngPopulationListVO> populationListIPage = this.baseMapper.getGridPopulationAdminList(new Page(populationListDTO.getPageNum(),populationListDTO.getPageSize()),populationListDTO); |
| | |
| | | return R.ok(populationListIPage); |
| | | } |
| | | |
| | | /** |
| | | * 综治后台-删除居民 |
| | | * @param ids 居民id集合 |
| | | * @return 删除结果 |
| | | */ |
| | | @Override |
| | | public R delGridPopulationAdmin(List<Long> ids){ |
| | | Integer count = this.baseMapper.getPopulationVisitingCount(ids); |
| | |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | | * 查询平台人口列表 |
| | | * @param populationDTO 请求参数 |
| | | * @return 人口列表 |
| | | */ |
| | | @Override |
| | | public R getBuildingHousePopulationList(PageComMngPopulationDTO populationDTO){ |
| | | |
| | | IPage<EventSpecialPopulationVO> populationVOIPage = this.baseMapper.getBuildingHousePopulationList(new Page(populationDTO.getPageNum(),populationDTO.getPageSize()),populationDTO); |
| | | if(!populationVOIPage.getRecords().isEmpty()){ |
| | | populationVOIPage.getRecords().forEach(population -> { |
| | | try { |
| | | Integer age = IdcardUtil.getAgeByIdCard(population.getIdCard()); |
| | | population.setAge(age); |
| | | }catch (Exception e){ |
| | | log.error("人员身份证转换年龄失败,人员id:" + population.getId()); |
| | | } |
| | | }); |
| | | } |
| | | return R.ok(populationVOIPage); |
| | | } |
| | | |
| | | /** |
| | | * 综治后台-居民标签栏统计 |
| | | * @return 居民统计 |
| | | */ |
| | | @Override |
| | | public R getGridPopulationStatistics(Long communityId){ |
| | | return R.ok(this.baseMapper.getGridPopulationStatistics(communityId)); |
| | | } |
| | | |
| | | /** |
| | | * 综治后台-居民导出查询居民数据 |
| | | * @param populationExportDTO 请求参数 |
| | | * @return 导出结果 |
| | | */ |
| | | @Override |
| | | public R getGridPopulationExport(ComMngPopulationExportDTO populationExportDTO){ |
| | | //结果集 |
| | | List<ComMngPopulationExportExcelVO> resultPopulationList = new ArrayList<>(); |
| | | //查询人口信息 |
| | | List<ComMngPopulationListVO> populationListVOList = this.baseMapper.getGridPopulationAdminLists(populationExportDTO); |
| | | if(!populationListVOList.isEmpty()){ |
| | | populationListVOList.forEach(population -> { |
| | | ComMngPopulationExportExcelVO populationExportExcelVO = new ComMngPopulationExportExcelVO(); |
| | | BeanUtils.copyProperties(population,populationExportExcelVO); |
| | | if(population.getSex() != null){ |
| | | populationExportExcelVO.setSex(PopulSexEnum.getCnDescByName(population.getSex())); |
| | | } |
| | | if(population.getPoliticalOutlook() != null){ |
| | | populationExportExcelVO.setPoliticalOutlook(PopulPoliticalOutlookEnum.getCnDescByName(population.getPoliticalOutlook())); |
| | | } |
| | | if(population.getIsHouse() != null){ |
| | | if(!population.getIsHouse().equals(0L)){ |
| | | populationExportExcelVO.setIsHouse("是"); |
| | | }else{ |
| | | populationExportExcelVO.setIsHouse("否"); |
| | | } |
| | | } |
| | | if(population.getEventStatus() != null){ |
| | | populationExportExcelVO.setEventStatus(EventStatusEnum.getCnDescByName(population.getEventStatus())); |
| | | } |
| | | try { |
| | | Integer age = IdcardUtil.getAgeByIdCard(population.getCardNo()); |
| | | populationExportExcelVO.setAge(age); |
| | | }catch (Exception e){ |
| | | log.error("当前人口身份证获取年龄失败,实有人口id:" + population.getId()); |
| | | } |
| | | resultPopulationList.add(populationExportExcelVO); |
| | | }); |
| | | } |
| | | return R.ok(resultPopulationList); |
| | | } |
| | | |
| | | /** |
| | | * 综治后台-居民管理小区列表 |
| | | * @param name 小区名字 |
| | | * @return 小区列表 |
| | | */ |
| | | @Override |
| | | public R relationVillage(String name){ |
| | | List<ComMngPopulationVillageVO> populationVillageList = new ArrayList<>(); |
| | | QueryWrapper<ComMngVillageDO> villageQuery = new QueryWrapper<>(); |
| | | if(StringUtils.isNotEmpty(name)){ |
| | | villageQuery.lambda().like(ComMngVillageDO::getName,name); |
| | | } |
| | | |
| | | List<ComMngVillageDO> villageList = comActVillageDAO.selectList(villageQuery); |
| | | if(!villageList.isEmpty()){ |
| | | villageList.forEach(village -> { |
| | | ComMngPopulationVillageVO populationVillageVO = new ComMngPopulationVillageVO(); |
| | | BeanUtils.copyProperties(village,populationVillageVO); |
| | | populationVillageList.add(populationVillageVO); |
| | | }); |
| | | } |
| | | return R.ok(populationVillageList); |
| | | } |
| | | |
| | | @Override |
| | | public R getVillagePopulationAdmin(PageComMngVillagePopulationDTO villagePopulationDTO){ |
| | | return R.ok(this.baseMapper.getVillagePopulationAdmin(new Page(villagePopulationDTO.getPageNum(),villagePopulationDTO.getPageSize()),villagePopulationDTO)); |
| | | } |
| | | |
| | | } |