From cf2e6ce54f82c61606a01f816f7cac8b3a967809 Mon Sep 17 00:00:00 2001
From: manailin <261030956@qq.com>
Date: 星期三, 30 六月 2021 18:07:13 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/test' into test

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java |   85 ++++++++++++++++++++++++++++++++++++++----
 1 files changed, 77 insertions(+), 8 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 9eabb95..9a9786c 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
@@ -16,7 +16,10 @@
 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.AddComMngHousePopulationDTO;
+import com.panzhihua.common.model.dtos.grid.PageComMngPopulationDTO;
 import com.panzhihua.common.model.dtos.grid.PagePopulationListDTO;
+import com.panzhihua.common.model.dtos.grid.admin.ComMngPopulationListDTO;
 import com.panzhihua.common.model.dtos.user.PageInputUserDTO;
 import com.panzhihua.common.model.helper.AESUtil;
 import com.panzhihua.common.model.vos.R;
@@ -27,11 +30,10 @@
 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.screen.ComActPopulationCultureVO;
 import com.panzhihua.common.model.vos.screen.ComActPopulationScreenVO;
 import com.panzhihua.common.model.vos.screen.ComMngPopulationAgeVO;
@@ -356,6 +358,7 @@
                     + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
             vo.setAddress(address);
 
+            //todo 后期优化改为批量
             //先判断房屋是否存在
             ComMngPopulationHouseDO populationHouseDO = comMngPopulationHouseDAO.selectOne(new QueryWrapper<ComMngPopulationHouseDO>().lambda()
                     .eq(ComMngPopulationHouseDO::getCommunityId, communityId).eq(ComMngPopulationHouseDO::getVillageId, comMngVillageDO.getVillageId())
@@ -364,6 +367,7 @@
             if (populationHouseDO == null) {
                 //房屋信息不存在建立房屋信息
                 populationHouseDO = savePopulationHouse(vo, comMngVillageDO, communityId, address, areaPath, comActDO.getName());
+                vo.setHouseId(populationHouseDO.getId());
             }
 
             if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
@@ -380,7 +384,7 @@
             } else {
                 //如果存在人口信息,且是自用房,则更新人口默认的房屋信息
                 if (vo.getIsRent() != null && vo.getIsRent().equals(PopulHouseUseEnum.SELF.getCode())) {
-                    populationDO = updatePopulationHouseUse(vo, populationDO);
+                    populationDO = updatePopulationDO(vo, populationDO);
                 }
             }
 
@@ -413,7 +417,7 @@
         return R.ok();
     }
 
-    private ComMngPopulationDO updatePopulationHouseUse(ComMngPopulationServeExcelVO vo, ComMngPopulationDO populationDO) throws Exception {
+    private ComMngPopulationDO updatePopulationDO(ComMngPopulationServeExcelVO vo, ComMngPopulationDO populationDO) throws Exception {
         populationDO.setRoad(vo.getRoad());
         populationDO.setDoorNo(vo.getDoorNo());
         populationDO.setFloor(vo.getFloor());
@@ -421,8 +425,10 @@
         populationDO.setHouseNo(vo.getHouseNo());
         populationDO.setCardNo(vo.getCardNo());
         populationDO.setCardNoStr(vo.getCardNo());
+        if(vo.getIsResidence().intValue() == 1){
+            populationDO.setHouseId(vo.getHouseId());
+        }
         if (StringUtils.isNotEmpty(populationDO.getPhone())) {
-//            populationDO.setPhone(AESUtil.encrypt128(populationDO.getPhone(), aesKey));
             populationDO.setPhone(populationDO.getPhone());
         }
         this.baseMapper.updateById(populationDO);
@@ -442,6 +448,9 @@
         populationDO.setCardNo(vo.getCardNo());
         populationDO.setCardNoStr(vo.getCardNo());
         populationDO.setUpdateAt(new Date());
+        if(vo.getIsResidence().intValue() == 1){
+            populationDO.setHouseId(vo.getHouseId());
+        }
         this.baseMapper.insert(populationDO);
         return populationDO;
     }
@@ -454,12 +463,12 @@
         populationHouseDO.setVillageId(comMngVillageDO.getVillageId());
         populationHouseDO.setAlley(vo.getRoad());
         populationHouseDO.setHouseNum(vo.getDoorNo());
-        populationHouseDO.setCode(vo.getDoorNo());
         populationHouseDO.setStatus(vo.getIsRent());
         populationHouseDO.setCommunityId(communityId);
         populationHouseDO.setFloor(vo.getFloor());
         populationHouseDO.setUnitNo(vo.getUnitNo());
         populationHouseDO.setHouseNo(vo.getHouseNo());
+        populationHouseDO.setCode(vo.getHouseNo());
         populationHouseDO.setAddress(address);
         populationHouseDO.setUpdateAt(new Date());
         populationHouseDO.setConstructPurpose(vo.getBuildPurpose());
@@ -1079,6 +1088,9 @@
 
         //查询统计人口数据
         ComMngPopulationTotalVO populationTotalVO = populationDAO.getPopulationTotalByAdmin(communityId);
+        if(communityId.equals(2L)){
+            populationTotalVO.setSpecialTotal(36);
+        }
         statisticsVO.setPopulationTotalVO(populationTotalVO);
 
         return R.ok(statisticsVO);
@@ -1268,6 +1280,14 @@
         setAgeGroup(comActPopulationScreenVO, communityId);
         //统计学历
         setCultureGroup(comActPopulationScreenVO, communityId);
+
+        //查询网格数据
+        List<EventGridStatisticsVO> gridStatisticsList = this.baseMapper.getEventScreenGridData(communityId);
+        comActPopulationScreenVO.setGridStatisticsList(gridStatisticsList);
+
+        //查询小区列表
+        List<CivilVillageStatisticsVO> villageStatisticsList = this.baseMapper.getCivilScreenVillageList(communityId);
+        comActPopulationScreenVO.setVillageStatisticsList(villageStatisticsList);
 
         return R.ok(comActPopulationScreenVO);
     }
@@ -1485,5 +1505,54 @@
         return R.ok();
     }
 
+    @Override
+    public R getGridPopulationAdminList(ComMngPopulationListDTO populationListDTO){
+        IPage<ComMngPopulationListVO> populationListIPage = this.baseMapper.getGridPopulationAdminList(new Page(populationListDTO.getPageNum(),populationListDTO.getPageSize()),populationListDTO);
+        if(!populationListIPage.getRecords().isEmpty()){
+            populationListIPage.getRecords().forEach(population -> {
+                try {
+                    Integer age = IdcardUtil.getAgeByIdCard(population.getCardNo());
+                    population.setAge(age);
+                }catch (Exception e){
+                    log.error("当前人口身份证获取年龄失败,实有人口id:" + population.getId());
+                }
+                //查询此用户在当前房屋是否是户主
+                Integer relation = this.baseMapper.getPopulationRelationByHouseId(population.getHouseId(),population.getId());
+                if(relation == null || relation != 1){
+                    population.setIsRelation(2);
+                }else{
+                    population.setIsRelation(1);
+                }
+            });
+        }
+        return R.ok(populationListIPage);
+    }
+
+    @Override
+    public R delGridPopulationAdmin(List<Long> ids){
+        Integer count = this.baseMapper.getPopulationVisitingCount(ids);
+        if(count > 0){
+            return R.ok("您选择的数据中存在被引用的,无法删除");
+        }
+        this.baseMapper.deleteBatchIds(ids);
+        return R.ok();
+    }
+
+    @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);
+    }
 
 }
\ No newline at end of file

--
Gitblit v1.7.1