张天森
2022-10-12 3c884ccd7b51edf3b36840bf99de5edaa41a38a7
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
@@ -139,6 +139,8 @@
    private String aesKey;
    @Resource
    private ComActEasyPhotoDAO comActEasyPhotoDAO;
    @Resource
    private ComMngBuildingDAO comMngBuildingDAO;
    /**
     * 新增实有人口
@@ -719,14 +721,14 @@
            Integer nub = 1;
            // 查询所有人口数据放入HashMap中
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(null);
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getActId,communityId));
            HashMap<String, Object> populationMap = new HashMap<>();
            populationList.forEach(population -> {
                String key = population.getCardNo();
                populationMap.put(key, population);
            });
            // 查询所有房屋信息放入到HashMap中
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(null);
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(new QueryWrapper<ComMngPopulationHouseDO>().lambda().eq(ComMngPopulationHouseDO::getCommunityId,communityId));
            HashMap<String, Object> houseMap = new HashMap<>();
            houseLists.forEach(house -> {
                String key = house.getCommunityId() + house.getVillageId() + house.getFloor() + house.getUnitNo()
@@ -734,14 +736,14 @@
                houseMap.put(key, house);
            });
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(null);
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(new QueryWrapper<ComMngVillageDO>().lambda().eq(ComMngVillageDO::getCommunityId,communityId));
            HashMap<String, Object> villageMap = new HashMap<>();
            villageList.forEach(village -> {
                String key = village.getCommunityId() + village.getAlley() + village.getHouseNum();
                villageMap.put(key, village);
            });
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectList(null);
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectListIndex(communityId);
            HashMap<String, Object> houseUserMap = new HashMap<>();
            houseUserLists.forEach(houseUser -> {
                String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
@@ -749,7 +751,7 @@
            });
            List<ComMngPopulationCommunityTagsDO> populationCommunityLists =
                comMngPopulationCommunityTagsDAO.selectList(null);
                comMngPopulationCommunityTagsDAO.selectList(new QueryWrapper<ComMngPopulationCommunityTagsDO>().lambda().eq(ComMngPopulationCommunityTagsDO::getCommunityId,communityId));
            HashMap<String, Object> populationCommunityMap = new HashMap<>();
            populationCommunityLists.forEach(populationCommunity -> {
                String key = populationCommunity.getPopulationId() + populationCommunity.getCommunityId() + "";
@@ -851,11 +853,11 @@
                    // 空户处理完房屋信息,直接返回
                    continue;
                }
                String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                //String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                // 判断实有人口是否已存在
                log.info("开始查询实有人口是否已存在");
                ComMngPopulationDO populationDO = null;
                String populationKey = cardNoAES;
                String populationKey = vo.getCardNo();
                if (!isOnly(populationKey, populationMap)) {
                    // 存在实有人口信息,则更新
                    populationDO = (ComMngPopulationDO)populationMap.get(populationKey);
@@ -909,6 +911,7 @@
                        }
                        cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        cpopulationCommunityTagsDO.setCreateBy(userId);
                        populationCommunityMap.put(populationCommunityKey,cpopulationCommunityTagsDO);
                        savePopulationCommunityList.add(cpopulationCommunityTagsDO);
                    }else {
                        // 实有人口存在于当前社区,则更新
@@ -924,6 +927,7 @@
                                iterator.remove();
                        }
                        comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        comMngPopulationCommunityTagsDO.setUpdateBy(userId);
                        updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
@@ -935,6 +939,18 @@
                    }
                }
                log.info("查询实有人口存在社区信息完成");
                log.info("开始处理楼栋信息");
                List<ComMngBuildingDO> comMngBuildingDOList= comMngBuildingDAO.selectList(new QueryWrapper<ComMngBuildingDO>().lambda().eq(ComMngBuildingDO::getVillageId,comMngVillageDO.getVillageId()).eq(ComMngBuildingDO::getName,vo.getFloor()));
                if(comMngBuildingDOList.isEmpty()){
                   ComMngBuildingDO  comMngBuildingDO=new ComMngBuildingDO();
                   comMngBuildingDO.setId(Snowflake.getId());
                   comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
                   comMngBuildingDO.setName(vo.getFloor());
                   comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
                   comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
                   comMngBuildingDAO.insert(comMngBuildingDO);
                }
            }
        } catch (Exception e) {
            log.info("出现错误,错误原因:" + e.getMessage());
@@ -1026,14 +1042,14 @@
            Integer nub = 1;
            // 查询所有人口数据放入HashMap中
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(null);
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getActId,communityId));
            HashMap<String, Object> populationMap = new HashMap<>();
            populationList.forEach(population -> {
                String key = population.getCardNo();
                populationMap.put(key, population);
            });
            // 查询所有房屋信息放入到HashMap中
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(null);
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(new QueryWrapper<ComMngPopulationHouseDO>().lambda().eq(ComMngPopulationHouseDO::getCommunityId,communityId));
            HashMap<String, Object> houseMap = new HashMap<>();
            houseLists.forEach(house -> {
                String key = house.getCommunityId() + house.getVillageId() + house.getFloor() + house.getUnitNo()
@@ -1041,14 +1057,14 @@
                houseMap.put(key, house);
            });
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(null);
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(new QueryWrapper<ComMngVillageDO>().lambda().eq(ComMngVillageDO::getCommunityId,communityId));
            HashMap<String, Object> villageMap = new HashMap<>();
            villageList.forEach(village -> {
                String key = village.getCommunityId() + village.getAlley() + village.getHouseNum();
                villageMap.put(key, village);
            });
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectList(null);
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectListIndex(communityId);
            HashMap<String, Object> houseUserMap = new HashMap<>();
            houseUserLists.forEach(houseUser -> {
                String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
@@ -1056,7 +1072,7 @@
            });
            List<ComMngPopulationCommunityTagsDO> populationCommunityLists =
                comMngPopulationCommunityTagsDAO.selectList(null);
                comMngPopulationCommunityTagsDAO.selectList(new QueryWrapper<ComMngPopulationCommunityTagsDO>().lambda().eq(ComMngPopulationCommunityTagsDO::getCommunityId,communityId));
            HashMap<String, Object> populationCommunityMap = new HashMap<>();
            populationCommunityLists.forEach(populationCommunity -> {
                String key = populationCommunity.getPopulationId() + populationCommunity.getCommunityId() + "";
@@ -1114,39 +1130,49 @@
                log.info("开始查询小区街路巷是否存在完成");
                log.info("开始查询房屋是否存在");
                // 先判断房屋是否存在
                ComMngPopulationHouseDO populationHouseDO = null;
                String houseKey =
                    communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                if (isOnly(houseKey, houseMap)) {
                    if (!houseList.isEmpty()) {
                        for (ComMngPopulationHouseDO house : houseList) {
                            if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                && house.getUnitNo().equals(vo.getUnitNo())
                                && house.getHouseNo().equals(vo.getHouseNo())) {
                                populationHouseDO = house;
                                break;
                // 先判断房屋是否存在
                if(StringUtils.isNotEmpty(vo.getFloor())&&StringUtils.isNotEmpty(vo.getHouseNo())&&StringUtils.isNotEmpty(vo.getUnitNo())){
                    String houseKey =
                            communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                    if (isOnly(houseKey, houseMap)) {
                        if (!houseList.isEmpty()) {
                            for (ComMngPopulationHouseDO house : houseList) {
                                if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                        && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                        && house.getUnitNo().equals(vo.getUnitNo())
                                        && house.getHouseNo().equals(vo.getHouseNo())) {
                                    populationHouseDO = house;
                                    break;
                                }
                            }
                        }
                        if (populationHouseDO == null) {
                            // 房屋信息不存在建立房屋信息
                            populationHouseDO =
                                    saveDrugPopulationHouse(vo, comMngVillageDO, communityId, areaPath, populationActVO.getName());
                            houseList.add(populationHouseDO);
                        }
                    } else {
                        populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    }
                    if (populationHouseDO == null) {
                        // 房屋信息不存在建立房屋信息
                        populationHouseDO = saveDrugPopulationHouse(vo, comMngVillageDO, communityId, areaPath,
                            populationActVO.getName());
                        houseList.add(populationHouseDO);
                    }
                } else {
                    populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    vo.setHouseId(populationHouseDO.getId());
                    log.info("查询房屋是否存在完成");
                }else {
                    ComMngPopulationDrugMistakeExcelVO mistake = new ComMngPopulationDrugMistakeExcelVO();
                    BeanUtils.copyProperties(vo, mistake);
                    setDrugMistake(mistake, vo);
                    mistake.setMistake("房屋数据填报不完整" );
                    mistakes.add(mistake);
                    log.info("房屋数据填报不完整");
                    continue;
                }
                vo.setHouseId(populationHouseDO.getId());
                log.info("开始查询房屋是否存在完成");
                if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
                    // 空户处理完房屋信息,直接返回
                    continue;
                }
                String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                // 判断实有人口是否已存在
                log.info("开始查询实有人口是否已存在");
                ComMngPopulationDO populationDO = null;
@@ -1219,7 +1245,16 @@
                            if (!labelList.contains(s))
                                iterator.remove();
                        }
                        comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        if(StringUtils.isNotEmpty(comMngPopulationCommunityTagsDO.getLabel())){
                            for(String tag:userTag){
                                if(!comMngPopulationCommunityTagsDO.getLabel().contains(tag)){
                                    comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel()+","+tag);
                                }
                            }
                        }
                        else{
                            comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        }
                        comMngPopulationCommunityTagsDO.setUpdateBy(userId);
                        updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
@@ -1230,7 +1265,20 @@
                        mistakes.add(mistake);
                    }
                }
                log.info("查询实有人口存在社区信息完成");
                log.info("开始处理楼栋信息");
                List<ComMngBuildingDO> comMngBuildingDOList= comMngBuildingDAO.selectList(new QueryWrapper<ComMngBuildingDO>().lambda().eq(ComMngBuildingDO::getVillageId,comMngVillageDO.getVillageId()).eq(ComMngBuildingDO::getName,vo.getFloor()));
                if(comMngBuildingDOList.isEmpty()){
      ComMngBuildingDO  comMngBuildingDO=new ComMngBuildingDO();
                   comMngBuildingDO.setId(Snowflake.getId());
                   comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
                   comMngBuildingDO.setName(vo.getFloor());
                   comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
                   comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
                   comMngBuildingDAO.insert(comMngBuildingDO);
                }
            }
        } catch (Exception e) {
            log.info("出现错误,错误原因:" + e.getMessage());
@@ -1241,23 +1289,23 @@
        if (!houseList.isEmpty()) {
            log.info("执行数据库导入房屋");
            comMngPopulationHouseDAO.insertAll(houseList);
            log.info("执行数据库导入房屋完成");
            log.info("数据库导入房屋完成");
        }
        if (!saveList.isEmpty()) {
            log.info("执行数据库导入人口");
            this.baseMapper.insertAll(saveList);
            log.info("执行数据库导入人口完成");
            log.info("数据库导入人口完成");
        }
        if (!updateList.isEmpty()) {
            log.info("执行数据库更新人口");
            this.baseMapper.updateAll(updateList);
            this.updateBatchById(updateList);
            // this.updateBatchById(updateList);
            log.info("执行数据库更新人口完成");
            log.info("数据库更新人口完成");
        }
        if (!houseUserList.isEmpty()) {
            log.info("执行数据库导入人口房屋关系");
            comMngPopulationHouseUserService.saveBatch(houseUserList);
            log.info("执行数据库导入人口房屋关系完成");
            log.info("数据库导入人口房屋关系完成");
        }
        if (!savePopulationCommunityList.isEmpty()) {
            log.info("执行数据库导入人口社区关系");
@@ -1266,7 +1314,7 @@
        }
        if (!updatePopulationCommunityList.isEmpty()) {
            log.info("执行数据库更新人口社区关系");
            comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
            comMngPopulationCommunityTagsService.updateBatchById(updatePopulationCommunityList);
            log.info("数据库更新人口社区关系完成");
        }
        log.info("执行数据库导入完成");
@@ -1322,14 +1370,14 @@
            Integer nub = 1;
            // 查询所有人口数据放入HashMap中
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(null);
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getActId,communityId));
            HashMap<String, Object> populationMap = new HashMap<>();
            populationList.forEach(population -> {
                String key = population.getCardNo();
                populationMap.put(key, population);
            });
            // 查询所有房屋信息放入到HashMap中
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(null);
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(new QueryWrapper<ComMngPopulationHouseDO>().lambda().eq(ComMngPopulationHouseDO::getCommunityId,communityId));
            HashMap<String, Object> houseMap = new HashMap<>();
            houseLists.forEach(house -> {
                String key = house.getCommunityId() + house.getVillageId() + house.getFloor() + house.getUnitNo()
@@ -1337,14 +1385,14 @@
                houseMap.put(key, house);
            });
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(null);
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(new QueryWrapper<ComMngVillageDO>().lambda().eq(ComMngVillageDO::getCommunityId,communityId));
            HashMap<String, Object> villageMap = new HashMap<>();
            villageList.forEach(village -> {
                String key = village.getCommunityId() + village.getAlley() + village.getHouseNum();
                villageMap.put(key, village);
            });
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectList(null);
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectListIndex(communityId);
            HashMap<String, Object> houseUserMap = new HashMap<>();
            houseUserLists.forEach(houseUser -> {
                String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
@@ -1352,7 +1400,7 @@
            });
            List<ComMngPopulationCommunityTagsDO> populationCommunityLists =
                comMngPopulationCommunityTagsDAO.selectList(null);
                comMngPopulationCommunityTagsDAO.selectList(new QueryWrapper<ComMngPopulationCommunityTagsDO>().lambda().eq(ComMngPopulationCommunityTagsDO::getCommunityId,communityId));
            HashMap<String, Object> populationCommunityMap = new HashMap<>();
            populationCommunityLists.forEach(populationCommunity -> {
                String key = populationCommunity.getPopulationId() + populationCommunity.getCommunityId() + "";
@@ -1410,39 +1458,49 @@
                log.info("开始查询小区街路巷是否存在完成");
                log.info("开始查询房屋是否存在");
                // 先判断房屋是否存在
                ComMngPopulationHouseDO populationHouseDO = null;
                String houseKey =
                    communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                if (isOnly(houseKey, houseMap)) {
                    if (!houseList.isEmpty()) {
                        for (ComMngPopulationHouseDO house : houseList) {
                            if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                && house.getUnitNo().equals(vo.getUnitNo())
                                && house.getHouseNo().equals(vo.getHouseNo())) {
                                populationHouseDO = house;
                                break;
                // 先判断房屋是否存在
                if(StringUtils.isNotEmpty(vo.getFloor())&&StringUtils.isNotEmpty(vo.getHouseNo())&&StringUtils.isNotEmpty(vo.getUnitNo())){
                    String houseKey =
                            communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                    if (isOnly(houseKey, houseMap)) {
                        if (!houseList.isEmpty()) {
                            for (ComMngPopulationHouseDO house : houseList) {
                                if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                        && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                        && house.getUnitNo().equals(vo.getUnitNo())
                                        && house.getHouseNo().equals(vo.getHouseNo())) {
                                    populationHouseDO = house;
                                    break;
                                }
                            }
                        }
                        if (populationHouseDO == null) {
                            // 房屋信息不存在建立房屋信息
                            populationHouseDO =
                                    saveCorrectPopulationHouse(vo, comMngVillageDO, communityId, areaPath, populationActVO.getName());
                            houseList.add(populationHouseDO);
                        }
                    } else {
                        populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    }
                    if (populationHouseDO == null) {
                        // 房屋信息不存在建立房屋信息
                        populationHouseDO = saveCorrectPopulationHouse(vo, comMngVillageDO, communityId, areaPath,
                            populationActVO.getName());
                        houseList.add(populationHouseDO);
                    }
                } else {
                    populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    vo.setHouseId(populationHouseDO.getId());
                    log.info("查询房屋是否存在完成");
                }else {
                    ComMngPopulationCorrectMistakeExcelVO mistake = new ComMngPopulationCorrectMistakeExcelVO();
                    BeanUtils.copyProperties(vo, mistake);
                    setCorrectMistake(mistake, vo);
                    mistake.setMistake("房屋数据填报不完整" );
                    mistakes.add(mistake);
                    log.info("房屋数据填报不完整");
                    continue;
                }
                vo.setHouseId(populationHouseDO.getId());
                log.info("开始查询房屋是否存在完成");
                if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
                    // 空户处理完房屋信息,直接返回
                    continue;
                }
                String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                // 判断实有人口是否已存在
                log.info("开始查询实有人口是否已存在");
                ComMngPopulationDO populationDO = null;
@@ -1515,7 +1573,16 @@
                            if (!labelList.contains(s))
                                iterator.remove();
                        }
                        comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        if(StringUtils.isNotEmpty(comMngPopulationCommunityTagsDO.getLabel())){
                            for(String tag:userTag){
                                if(!comMngPopulationCommunityTagsDO.getLabel().contains(tag)){
                                    comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel()+","+tag);
                                }
                            }
                        }
                        else{
                            comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        }
                        comMngPopulationCommunityTagsDO.setUpdateBy(userId);
                        updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
@@ -1526,7 +1593,20 @@
                        mistakes.add(mistake);
                    }
                }
                log.info("查询实有人口存在社区信息完成");
                log.info("开始处理楼栋信息");
                List<ComMngBuildingDO> comMngBuildingDOList= comMngBuildingDAO.selectList(new QueryWrapper<ComMngBuildingDO>().lambda().eq(ComMngBuildingDO::getVillageId,comMngVillageDO.getVillageId()).eq(ComMngBuildingDO::getName,vo.getFloor()));
                if(comMngBuildingDOList.isEmpty()){
      ComMngBuildingDO  comMngBuildingDO=new ComMngBuildingDO();
                   comMngBuildingDO.setId(Snowflake.getId());
                   comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
                   comMngBuildingDO.setName(vo.getFloor());
                   comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
                   comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
                   comMngBuildingDAO.insert(comMngBuildingDO);
                }
            }
        } catch (Exception e) {
            log.info("出现错误,错误原因:" + e.getMessage());
@@ -1537,23 +1617,23 @@
        if (!houseList.isEmpty()) {
            log.info("执行数据库导入房屋");
            comMngPopulationHouseDAO.insertAll(houseList);
            log.info("执行数据库导入房屋完成");
            log.info("数据库导入房屋完成");
        }
        if (!saveList.isEmpty()) {
            log.info("执行数据库导入人口");
            this.baseMapper.insertAll(saveList);
            log.info("执行数据库导入人口完成");
            log.info("数据库导入人口完成");
        }
        if (!updateList.isEmpty()) {
            log.info("执行数据库更新人口");
            this.baseMapper.updateAll(updateList);
            this.updateBatchById(updateList);
            // this.updateBatchById(updateList);
            log.info("执行数据库更新人口完成");
            log.info("数据库更新人口完成");
        }
        if (!houseUserList.isEmpty()) {
            log.info("执行数据库导入人口房屋关系");
            comMngPopulationHouseUserService.saveBatch(houseUserList);
            log.info("执行数据库导入人口房屋关系完成");
            log.info("数据库导入人口房屋关系完成");
        }
        if (!savePopulationCommunityList.isEmpty()) {
            log.info("执行数据库导入人口社区关系");
@@ -1562,7 +1642,7 @@
        }
        if (!updatePopulationCommunityList.isEmpty()) {
            log.info("执行数据库更新人口社区关系");
            comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
            comMngPopulationCommunityTagsService.updateBatchById(updatePopulationCommunityList);
            log.info("数据库更新人口社区关系完成");
        }
        log.info("执行数据库导入完成");
@@ -1618,14 +1698,14 @@
            Integer nub = 1;
            // 查询所有人口数据放入HashMap中
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(null);
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getActId,communityId));
            HashMap<String, Object> populationMap = new HashMap<>();
            populationList.forEach(population -> {
                String key = population.getCardNo();
                populationMap.put(key, population);
            });
            // 查询所有房屋信息放入到HashMap中
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(null);
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(new QueryWrapper<ComMngPopulationHouseDO>().lambda().eq(ComMngPopulationHouseDO::getCommunityId,communityId));
            HashMap<String, Object> houseMap = new HashMap<>();
            houseLists.forEach(house -> {
                String key = house.getCommunityId() + house.getVillageId() + house.getFloor() + house.getUnitNo()
@@ -1633,14 +1713,14 @@
                houseMap.put(key, house);
            });
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(null);
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(new QueryWrapper<ComMngVillageDO>().lambda().eq(ComMngVillageDO::getCommunityId,communityId));
            HashMap<String, Object> villageMap = new HashMap<>();
            villageList.forEach(village -> {
                String key = village.getCommunityId() + village.getAlley() + village.getHouseNum();
                villageMap.put(key, village);
            });
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectList(null);
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectListIndex(communityId);
            HashMap<String, Object> houseUserMap = new HashMap<>();
            houseUserLists.forEach(houseUser -> {
                String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
@@ -1648,7 +1728,7 @@
            });
            List<ComMngPopulationCommunityTagsDO> populationCommunityLists =
                comMngPopulationCommunityTagsDAO.selectList(null);
                comMngPopulationCommunityTagsDAO.selectList(new QueryWrapper<ComMngPopulationCommunityTagsDO>().lambda().eq(ComMngPopulationCommunityTagsDO::getCommunityId,communityId));
            HashMap<String, Object> populationCommunityMap = new HashMap<>();
            populationCommunityLists.forEach(populationCommunity -> {
                String key = populationCommunity.getPopulationId() + populationCommunity.getCommunityId() + "";
@@ -1706,39 +1786,49 @@
                log.info("开始查询小区街路巷是否存在完成");
                log.info("开始查询房屋是否存在");
                // 先判断房屋是否存在
                ComMngPopulationHouseDO populationHouseDO = null;
                String houseKey =
                    communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                if (isOnly(houseKey, houseMap)) {
                    if (!houseList.isEmpty()) {
                        for (ComMngPopulationHouseDO house : houseList) {
                            if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                && house.getUnitNo().equals(vo.getUnitNo())
                                && house.getHouseNo().equals(vo.getHouseNo())) {
                                populationHouseDO = house;
                                break;
                // 先判断房屋是否存在
                if(StringUtils.isNotEmpty(vo.getFloor())&&StringUtils.isNotEmpty(vo.getHouseNo())&&StringUtils.isNotEmpty(vo.getUnitNo())){
                    String houseKey =
                            communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                    if (isOnly(houseKey, houseMap)) {
                        if (!houseList.isEmpty()) {
                            for (ComMngPopulationHouseDO house : houseList) {
                                if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                        && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                        && house.getUnitNo().equals(vo.getUnitNo())
                                        && house.getHouseNo().equals(vo.getHouseNo())) {
                                    populationHouseDO = house;
                                    break;
                                }
                            }
                        }
                        if (populationHouseDO == null) {
                            // 房屋信息不存在建立房屋信息
                            populationHouseDO =
                                    saveMajorPopulationHouse(vo, comMngVillageDO, communityId, areaPath, populationActVO.getName());
                            houseList.add(populationHouseDO);
                        }
                    } else {
                        populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    }
                    if (populationHouseDO == null) {
                        // 房屋信息不存在建立房屋信息
                        populationHouseDO = saveMajorPopulationHouse(vo, comMngVillageDO, communityId, areaPath,
                            populationActVO.getName());
                        houseList.add(populationHouseDO);
                    }
                } else {
                    populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    vo.setHouseId(populationHouseDO.getId());
                    log.info("查询房屋是否存在完成");
                }else {
                    ComMngPopulationMajorMistakeExcelVO mistake = new ComMngPopulationMajorMistakeExcelVO();
                    BeanUtils.copyProperties(vo, mistake);
                    setMajorMistake(mistake, vo);
                    mistake.setMistake("房屋数据填报不完整" );
                    mistakes.add(mistake);
                    log.info("房屋数据填报不完整");
                    continue;
                }
                vo.setHouseId(populationHouseDO.getId());
                log.info("开始查询房屋是否存在完成");
                if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
                    // 空户处理完房屋信息,直接返回
                    continue;
                }
                String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                // 判断实有人口是否已存在
                log.info("开始查询实有人口是否已存在");
                ComMngPopulationDO populationDO = null;
@@ -1811,7 +1901,16 @@
                            if (!labelList.contains(s))
                                iterator.remove();
                        }
                        comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        if(StringUtils.isNotEmpty(comMngPopulationCommunityTagsDO.getLabel())){
                            for(String tag:userTag){
                                if(!comMngPopulationCommunityTagsDO.getLabel().contains(tag)){
                                    comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel()+","+tag);
                                }
                            }
                        }
                        else{
                            comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        }
                        comMngPopulationCommunityTagsDO.setUpdateBy(userId);
                        updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
@@ -1822,7 +1921,20 @@
                        mistakes.add(mistake);
                    }
                }
                log.info("查询实有人口存在社区信息完成");
                log.info("开始处理楼栋信息");
                List<ComMngBuildingDO> comMngBuildingDOList= comMngBuildingDAO.selectList(new QueryWrapper<ComMngBuildingDO>().lambda().eq(ComMngBuildingDO::getVillageId,comMngVillageDO.getVillageId()).eq(ComMngBuildingDO::getName,vo.getFloor()));
                if(comMngBuildingDOList.isEmpty()){
      ComMngBuildingDO  comMngBuildingDO=new ComMngBuildingDO();
                   comMngBuildingDO.setId(Snowflake.getId());
                   comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
                   comMngBuildingDO.setName(vo.getFloor());
                   comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
                   comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
                   comMngBuildingDAO.insert(comMngBuildingDO);
                }
            }
        } catch (Exception e) {
            log.info("出现错误,错误原因:" + e.getMessage());
@@ -1833,23 +1945,23 @@
        if (!houseList.isEmpty()) {
            log.info("执行数据库导入房屋");
            comMngPopulationHouseDAO.insertAll(houseList);
            log.info("执行数据库导入房屋完成");
            log.info("数据库导入房屋完成");
        }
        if (!saveList.isEmpty()) {
            log.info("执行数据库导入人口");
            this.baseMapper.insertAll(saveList);
            log.info("执行数据库导入人口完成");
            log.info("数据库导入人口完成");
        }
        if (!updateList.isEmpty()) {
            log.info("执行数据库更新人口");
            this.baseMapper.updateAll(updateList);
            this.updateBatchById(updateList);
            // this.updateBatchById(updateList);
            log.info("执行数据库更新人口完成");
            log.info("数据库更新人口完成");
        }
        if (!houseUserList.isEmpty()) {
            log.info("执行数据库导入人口房屋关系");
            comMngPopulationHouseUserService.saveBatch(houseUserList);
            log.info("执行数据库导入人口房屋关系完成");
            log.info("数据库导入人口房屋关系完成");
        }
        if (!savePopulationCommunityList.isEmpty()) {
            log.info("执行数据库导入人口社区关系");
@@ -1858,7 +1970,7 @@
        }
        if (!updatePopulationCommunityList.isEmpty()) {
            log.info("执行数据库更新人口社区关系");
            comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
            comMngPopulationCommunityTagsService.updateBatchById(updatePopulationCommunityList);
            log.info("数据库更新人口社区关系完成");
        }
        log.info("执行数据库导入完成");
@@ -1914,14 +2026,14 @@
            Integer nub = 1;
            // 查询所有人口数据放入HashMap中
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(null);
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getActId,communityId));
            HashMap<String, Object> populationMap = new HashMap<>();
            populationList.forEach(population -> {
                String key = population.getCardNo();
                populationMap.put(key, population);
            });
            // 查询所有房屋信息放入到HashMap中
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(null);
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(new QueryWrapper<ComMngPopulationHouseDO>().lambda().eq(ComMngPopulationHouseDO::getCommunityId,communityId));
            HashMap<String, Object> houseMap = new HashMap<>();
            houseLists.forEach(house -> {
                String key = house.getCommunityId() + house.getVillageId() + house.getFloor() + house.getUnitNo()
@@ -1929,14 +2041,14 @@
                houseMap.put(key, house);
            });
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(null);
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(new QueryWrapper<ComMngVillageDO>().lambda().eq(ComMngVillageDO::getCommunityId,communityId));
            HashMap<String, Object> villageMap = new HashMap<>();
            villageList.forEach(village -> {
                String key = village.getCommunityId() + village.getAlley() + village.getHouseNum();
                villageMap.put(key, village);
            });
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectList(null);
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectListIndex(communityId);
            HashMap<String, Object> houseUserMap = new HashMap<>();
            houseUserLists.forEach(houseUser -> {
                String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
@@ -1944,7 +2056,7 @@
            });
            List<ComMngPopulationCommunityTagsDO> populationCommunityLists =
                comMngPopulationCommunityTagsDAO.selectList(null);
                comMngPopulationCommunityTagsDAO.selectList(new QueryWrapper<ComMngPopulationCommunityTagsDO>().lambda().eq(ComMngPopulationCommunityTagsDO::getCommunityId,communityId));
            HashMap<String, Object> populationCommunityMap = new HashMap<>();
            populationCommunityLists.forEach(populationCommunity -> {
                String key = populationCommunity.getPopulationId() + populationCommunity.getCommunityId() + "";
@@ -2002,39 +2114,49 @@
                log.info("开始查询小区街路巷是否存在完成");
                log.info("开始查询房屋是否存在");
                // 先判断房屋是否存在
                ComMngPopulationHouseDO populationHouseDO = null;
                String houseKey =
                    communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                if (isOnly(houseKey, houseMap)) {
                    if (!houseList.isEmpty()) {
                        for (ComMngPopulationHouseDO house : houseList) {
                            if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                && house.getUnitNo().equals(vo.getUnitNo())
                                && house.getHouseNo().equals(vo.getHouseNo())) {
                                populationHouseDO = house;
                                break;
                // 先判断房屋是否存在
                if(StringUtils.isNotEmpty(vo.getFloor())&&StringUtils.isNotEmpty(vo.getHouseNo())&&StringUtils.isNotEmpty(vo.getUnitNo())){
                    String houseKey =
                            communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                    if (isOnly(houseKey, houseMap)) {
                        if (!houseList.isEmpty()) {
                            for (ComMngPopulationHouseDO house : houseList) {
                                if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                        && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                        && house.getUnitNo().equals(vo.getUnitNo())
                                        && house.getHouseNo().equals(vo.getHouseNo())) {
                                    populationHouseDO = house;
                                    break;
                                }
                            }
                        }
                        if (populationHouseDO == null) {
                            // 房屋信息不存在建立房屋信息
                            populationHouseDO =
                                    saveCultPopulationHouse(vo, comMngVillageDO, communityId, areaPath, populationActVO.getName());
                            houseList.add(populationHouseDO);
                        }
                    } else {
                        populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    }
                    if (populationHouseDO == null) {
                        // 房屋信息不存在建立房屋信息
                        populationHouseDO = saveCultPopulationHouse(vo, comMngVillageDO, communityId, areaPath,
                            populationActVO.getName());
                        houseList.add(populationHouseDO);
                    }
                } else {
                    populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    vo.setHouseId(populationHouseDO.getId());
                    log.info("查询房屋是否存在完成");
                }else {
                    ComMngPopulationCultMistakeExcelVO mistake = new ComMngPopulationCultMistakeExcelVO();
                    BeanUtils.copyProperties(vo, mistake);
                    setCultMistake(mistake, vo);
                    mistake.setMistake("房屋数据填报不完整" );
                    mistakes.add(mistake);
                    log.info("房屋数据填报不完整");
                    continue;
                }
                vo.setHouseId(populationHouseDO.getId());
                log.info("开始查询房屋是否存在完成");
                if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
                    // 空户处理完房屋信息,直接返回
                    continue;
                }
                String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                // 判断实有人口是否已存在
                log.info("开始查询实有人口是否已存在");
                ComMngPopulationDO populationDO = null;
@@ -2107,7 +2229,16 @@
                            if (!labelList.contains(s))
                                iterator.remove();
                        }
                        comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        if(StringUtils.isNotEmpty(comMngPopulationCommunityTagsDO.getLabel())){
                            for(String tag:userTag){
                                if(!comMngPopulationCommunityTagsDO.getLabel().contains(tag)){
                                    comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel()+","+tag);
                                }
                            }
                        }
                        else{
                            comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        }
                        comMngPopulationCommunityTagsDO.setUpdateBy(userId);
                        updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
@@ -2118,7 +2249,20 @@
                        mistakes.add(mistake);
                    }
                }
                log.info("查询实有人口存在社区信息完成");
                log.info("开始处理楼栋信息");
                List<ComMngBuildingDO> comMngBuildingDOList= comMngBuildingDAO.selectList(new QueryWrapper<ComMngBuildingDO>().lambda().eq(ComMngBuildingDO::getVillageId,comMngVillageDO.getVillageId()).eq(ComMngBuildingDO::getName,vo.getFloor()));
                if(comMngBuildingDOList.isEmpty()){
      ComMngBuildingDO  comMngBuildingDO=new ComMngBuildingDO();
                   comMngBuildingDO.setId(Snowflake.getId());
                   comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
                   comMngBuildingDO.setName(vo.getFloor());
                   comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
                   comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
                   comMngBuildingDAO.insert(comMngBuildingDO);
                }
            }
        } catch (Exception e) {
            log.info("出现错误,错误原因:" + e.getMessage());
@@ -2129,23 +2273,23 @@
        if (!houseList.isEmpty()) {
            log.info("执行数据库导入房屋");
            comMngPopulationHouseDAO.insertAll(houseList);
            log.info("执行数据库导入房屋完成");
            log.info("数据库导入房屋完成");
        }
        if (!saveList.isEmpty()) {
            log.info("执行数据库导入人口");
            this.baseMapper.insertAll(saveList);
            log.info("执行数据库导入人口完成");
            log.info("数据库导入人口完成");
        }
        if (!updateList.isEmpty()) {
            log.info("执行数据库更新人口");
            this.baseMapper.updateAll(updateList);
            this.updateBatchById(updateList);
            // this.updateBatchById(updateList);
            log.info("执行数据库更新人口完成");
            log.info("数据库更新人口完成");
        }
        if (!houseUserList.isEmpty()) {
            log.info("执行数据库导入人口房屋关系");
            comMngPopulationHouseUserService.saveBatch(houseUserList);
            log.info("执行数据库导入人口房屋关系完成");
            log.info("数据库导入人口房屋关系完成");
        }
        if (!savePopulationCommunityList.isEmpty()) {
            log.info("执行数据库导入人口社区关系");
@@ -2154,7 +2298,7 @@
        }
        if (!updatePopulationCommunityList.isEmpty()) {
            log.info("执行数据库更新人口社区关系");
            comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
            comMngPopulationCommunityTagsService.updateBatchById(updatePopulationCommunityList);
            log.info("数据库更新人口社区关系完成");
        }
        log.info("执行数据库导入完成");
@@ -2211,14 +2355,14 @@
            Integer nub = 1;
            // 查询所有人口数据放入HashMap中
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(null);
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getActId,communityId));
            HashMap<String, Object> populationMap = new HashMap<>();
            populationList.forEach(population -> {
                String key = population.getCardNo();
                populationMap.put(key, population);
            });
            // 查询所有房屋信息放入到HashMap中
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(null);
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(new QueryWrapper<ComMngPopulationHouseDO>().lambda().eq(ComMngPopulationHouseDO::getCommunityId,communityId));
            HashMap<String, Object> houseMap = new HashMap<>();
            houseLists.forEach(house -> {
                String key = house.getCommunityId() + house.getVillageId() + house.getFloor() + house.getUnitNo()
@@ -2226,14 +2370,14 @@
                houseMap.put(key, house);
            });
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(null);
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(new QueryWrapper<ComMngVillageDO>().lambda().eq(ComMngVillageDO::getCommunityId,communityId));
            HashMap<String, Object> villageMap = new HashMap<>();
            villageList.forEach(village -> {
                String key = village.getCommunityId() + village.getAlley() + village.getHouseNum();
                villageMap.put(key, village);
            });
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectList(null);
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectListIndex(communityId);
            HashMap<String, Object> houseUserMap = new HashMap<>();
            houseUserLists.forEach(houseUser -> {
                String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
@@ -2241,7 +2385,7 @@
            });
            List<ComMngPopulationCommunityTagsDO> populationCommunityLists =
                comMngPopulationCommunityTagsDAO.selectList(null);
                comMngPopulationCommunityTagsDAO.selectList(new QueryWrapper<ComMngPopulationCommunityTagsDO>().lambda().eq(ComMngPopulationCommunityTagsDO::getCommunityId,communityId));
            HashMap<String, Object> populationCommunityMap = new HashMap<>();
            populationCommunityLists.forEach(populationCommunity -> {
                String key = populationCommunity.getPopulationId() + populationCommunity.getCommunityId() + "";
@@ -2300,39 +2444,48 @@
                log.info("开始查询小区街路巷是否存在完成");
                log.info("开始查询房屋是否存在");
                // 先判断房屋是否存在
                ComMngPopulationHouseDO populationHouseDO = null;
                String houseKey =
                    communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                if (isOnly(houseKey, houseMap)) {
                    if (!houseList.isEmpty()) {
                        for (ComMngPopulationHouseDO house : houseList) {
                            if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                && house.getUnitNo().equals(vo.getUnitNo())
                                && house.getHouseNo().equals(vo.getHouseNo())) {
                                populationHouseDO = house;
                                break;
                // 先判断房屋是否存在
                if(StringUtils.isNotEmpty(vo.getFloor())&&StringUtils.isNotEmpty(vo.getHouseNo())&&StringUtils.isNotEmpty(vo.getUnitNo())){
                    String houseKey =
                            communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                    if (isOnly(houseKey, houseMap)) {
                        if (!houseList.isEmpty()) {
                            for (ComMngPopulationHouseDO house : houseList) {
                                if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                        && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                        && house.getUnitNo().equals(vo.getUnitNo())
                                        && house.getHouseNo().equals(vo.getHouseNo())) {
                                    populationHouseDO = house;
                                    break;
                                }
                            }
                        }
                        if (populationHouseDO == null) {
                            // 房屋信息不存在建立房屋信息
                            populationHouseDO =
                                    saveRehabilitationPopulationHouse(vo, comMngVillageDO, communityId, areaPath, populationActVO.getName());
                            houseList.add(populationHouseDO);
                        }
                    } else {
                        populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    }
                    if (populationHouseDO == null) {
                        // 房屋信息不存在建立房屋信息
                        populationHouseDO = saveRehabilitationPopulationHouse(vo, comMngVillageDO, communityId,
                            areaPath, populationActVO.getName());
                        houseList.add(populationHouseDO);
                    }
                } else {
                    populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    vo.setHouseId(populationHouseDO.getId());
                    log.info("查询房屋是否存在完成");
                }else {
                    ComMngPopulationRehabilitationMistakeExcelVO mistake = new ComMngPopulationRehabilitationMistakeExcelVO();
                    BeanUtils.copyProperties(vo, mistake);
                    setRehabilitationMistake(mistake, vo);
                    mistake.setMistake("房屋数据填报不完整" );
                    mistakes.add(mistake);
                    log.info("房屋数据填报不完整");
                    continue;
                }
                vo.setHouseId(populationHouseDO.getId());
                log.info("开始查询房屋是否存在完成");
                if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
                    // 空户处理完房屋信息,直接返回
                    continue;
                }
                String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                // 判断实有人口是否已存在
                log.info("开始查询实有人口是否已存在");
                ComMngPopulationDO populationDO = null;
@@ -2405,7 +2558,16 @@
                            if (!labelList.contains(s))
                                iterator.remove();
                        }
                        comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        if(StringUtils.isNotEmpty(comMngPopulationCommunityTagsDO.getLabel())){
                            for(String tag:userTag){
                                if(!comMngPopulationCommunityTagsDO.getLabel().contains(tag)){
                                    comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel()+","+tag);
                                }
                            }
                        }
                        else{
                            comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        }
                        comMngPopulationCommunityTagsDO.setUpdateBy(userId);
                        updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
@@ -2417,7 +2579,20 @@
                        mistakes.add(mistake);
                    }
                }
                log.info("查询实有人口存在社区信息完成");
                log.info("开始处理楼栋信息");
                List<ComMngBuildingDO> comMngBuildingDOList= comMngBuildingDAO.selectList(new QueryWrapper<ComMngBuildingDO>().lambda().eq(ComMngBuildingDO::getVillageId,comMngVillageDO.getVillageId()).eq(ComMngBuildingDO::getName,vo.getFloor()));
                if(comMngBuildingDOList.isEmpty()){
      ComMngBuildingDO  comMngBuildingDO=new ComMngBuildingDO();
                   comMngBuildingDO.setId(Snowflake.getId());
                   comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
                   comMngBuildingDO.setName(vo.getFloor());
                   comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
                   comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
                   comMngBuildingDAO.insert(comMngBuildingDO);
                }
            }
        } catch (Exception e) {
            log.info("出现错误,错误原因:" + e.getMessage());
@@ -2428,23 +2603,23 @@
        if (!houseList.isEmpty()) {
            log.info("执行数据库导入房屋");
            comMngPopulationHouseDAO.insertAll(houseList);
            log.info("执行数据库导入房屋完成");
            log.info("数据库导入房屋完成");
        }
        if (!saveList.isEmpty()) {
            log.info("执行数据库导入人口");
            this.baseMapper.insertAll(saveList);
            log.info("执行数据库导入人口完成");
            log.info("数据库导入人口完成");
        }
        if (!updateList.isEmpty()) {
            log.info("执行数据库更新人口");
            this.baseMapper.updateAll(updateList);
            this.updateBatchById(updateList);
            // this.updateBatchById(updateList);
            log.info("执行数据库更新人口完成");
            log.info("数据库更新人口完成");
        }
        if (!houseUserList.isEmpty()) {
            log.info("执行数据库导入人口房屋关系");
            comMngPopulationHouseUserService.saveBatch(houseUserList);
            log.info("执行数据库导入人口房屋关系完成");
            log.info("数据库导入人口房屋关系完成");
        }
        if (!savePopulationCommunityList.isEmpty()) {
            log.info("执行数据库导入人口社区关系");
@@ -2453,7 +2628,7 @@
        }
        if (!updatePopulationCommunityList.isEmpty()) {
            log.info("执行数据库更新人口社区关系");
            comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
            comMngPopulationCommunityTagsService.updateBatchById(updatePopulationCommunityList);
            log.info("数据库更新人口社区关系完成");
        }
        log.info("执行数据库导入完成");
@@ -2509,14 +2684,14 @@
            Integer nub = 1;
            // 查询所有人口数据放入HashMap中
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(null);
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getActId,communityId));
            HashMap<String, Object> populationMap = new HashMap<>();
            populationList.forEach(population -> {
                String key = population.getCardNo();
                populationMap.put(key, population);
            });
            // 查询所有房屋信息放入到HashMap中
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(null);
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(new QueryWrapper<ComMngPopulationHouseDO>().lambda().eq(ComMngPopulationHouseDO::getCommunityId,communityId));
            HashMap<String, Object> houseMap = new HashMap<>();
            houseLists.forEach(house -> {
                String key = house.getCommunityId() + house.getVillageId() + house.getFloor() + house.getUnitNo()
@@ -2524,14 +2699,14 @@
                houseMap.put(key, house);
            });
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(null);
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(new QueryWrapper<ComMngVillageDO>().lambda().eq(ComMngVillageDO::getCommunityId,communityId));
            HashMap<String, Object> villageMap = new HashMap<>();
            villageList.forEach(village -> {
                String key = village.getCommunityId() + village.getAlley() + village.getHouseNum();
                villageMap.put(key, village);
            });
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectList(null);
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectListIndex(communityId);
            HashMap<String, Object> houseUserMap = new HashMap<>();
            houseUserLists.forEach(houseUser -> {
                String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
@@ -2539,7 +2714,7 @@
            });
            List<ComMngPopulationCommunityTagsDO> populationCommunityLists =
                comMngPopulationCommunityTagsDAO.selectList(null);
                comMngPopulationCommunityTagsDAO.selectList(new QueryWrapper<ComMngPopulationCommunityTagsDO>().lambda().eq(ComMngPopulationCommunityTagsDO::getCommunityId,communityId));
            HashMap<String, Object> populationCommunityMap = new HashMap<>();
            populationCommunityLists.forEach(populationCommunity -> {
                String key = populationCommunity.getPopulationId() + populationCommunity.getCommunityId() + "";
@@ -2597,39 +2772,48 @@
                log.info("开始查询小区街路巷是否存在完成");
                log.info("开始查询房屋是否存在");
                // 先判断房屋是否存在
                ComMngPopulationHouseDO populationHouseDO = null;
                String houseKey =
                    communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                if (isOnly(houseKey, houseMap)) {
                    if (!houseList.isEmpty()) {
                        for (ComMngPopulationHouseDO house : houseList) {
                            if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                && house.getUnitNo().equals(vo.getUnitNo())
                                && house.getHouseNo().equals(vo.getHouseNo())) {
                                populationHouseDO = house;
                                break;
                // 先判断房屋是否存在
                if(StringUtils.isNotEmpty(vo.getFloor())&&StringUtils.isNotEmpty(vo.getHouseNo())&&StringUtils.isNotEmpty(vo.getUnitNo())){
                    String houseKey =
                            communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                    if (isOnly(houseKey, houseMap)) {
                        if (!houseList.isEmpty()) {
                            for (ComMngPopulationHouseDO house : houseList) {
                                if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                        && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                        && house.getUnitNo().equals(vo.getUnitNo())
                                        && house.getHouseNo().equals(vo.getHouseNo())) {
                                    populationHouseDO = house;
                                    break;
                                }
                            }
                        }
                        if (populationHouseDO == null) {
                            // 房屋信息不存在建立房屋信息
                            populationHouseDO =
                                    saveKeyPopulationHouse(vo, comMngVillageDO, communityId, areaPath, populationActVO.getName());
                            houseList.add(populationHouseDO);
                        }
                    } else {
                        populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    }
                    if (populationHouseDO == null) {
                        // 房屋信息不存在建立房屋信息
                        populationHouseDO = saveKeyPopulationHouse(vo, comMngVillageDO, communityId, areaPath,
                            populationActVO.getName());
                        houseList.add(populationHouseDO);
                    }
                } else {
                    populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    vo.setHouseId(populationHouseDO.getId());
                    log.info("查询房屋是否存在完成");
                }else {
                    ComMngPopulationKeyMistakeExcelVO mistake = new ComMngPopulationKeyMistakeExcelVO();
                    BeanUtils.copyProperties(vo, mistake);
                    setKeyMistake(mistake, vo);
                    mistake.setMistake("房屋数据填报不完整" );
                    mistakes.add(mistake);
                    log.info("房屋数据填报不完整");
                    continue;
                }
                vo.setHouseId(populationHouseDO.getId());
                log.info("开始查询房屋是否存在完成");
                if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
                    // 空户处理完房屋信息,直接返回
                    continue;
                }
                String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                // 判断实有人口是否已存在
                log.info("开始查询实有人口是否已存在");
                ComMngPopulationDO populationDO = null;
@@ -2702,7 +2886,16 @@
                            if (!labelList.contains(s))
                                iterator.remove();
                        }
                        comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        if(StringUtils.isNotEmpty(comMngPopulationCommunityTagsDO.getLabel())){
                            for(String tag:userTag){
                                if(!comMngPopulationCommunityTagsDO.getLabel().contains(tag)){
                                    comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel()+","+tag);
                                }
                            }
                        }
                        else{
                            comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        }
                        comMngPopulationCommunityTagsDO.setUpdateBy(userId);
                        updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
@@ -2713,7 +2906,20 @@
                        mistakes.add(mistake);
                    }
                }
                log.info("查询实有人口存在社区信息完成");
                log.info("开始处理楼栋信息");
                List<ComMngBuildingDO> comMngBuildingDOList= comMngBuildingDAO.selectList(new QueryWrapper<ComMngBuildingDO>().lambda().eq(ComMngBuildingDO::getVillageId,comMngVillageDO.getVillageId()).eq(ComMngBuildingDO::getName,vo.getFloor()));
                if(comMngBuildingDOList.isEmpty()){
      ComMngBuildingDO  comMngBuildingDO=new ComMngBuildingDO();
                   comMngBuildingDO.setId(Snowflake.getId());
                   comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
                   comMngBuildingDO.setName(vo.getFloor());
                   comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
                   comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
                   comMngBuildingDAO.insert(comMngBuildingDO);
                }
            }
        } catch (Exception e) {
            log.info("出现错误,错误原因:" + e.getMessage());
@@ -2724,23 +2930,23 @@
        if (!houseList.isEmpty()) {
            log.info("执行数据库导入房屋");
            comMngPopulationHouseDAO.insertAll(houseList);
            log.info("执行数据库导入房屋完成");
            log.info("数据库导入房屋完成");
        }
        if (!saveList.isEmpty()) {
            log.info("执行数据库导入人口");
            this.baseMapper.insertAll(saveList);
            log.info("执行数据库导入人口完成");
            log.info("数据库导入人口完成");
        }
        if (!updateList.isEmpty()) {
            log.info("执行数据库更新人口");
            this.baseMapper.updateAll(updateList);
            this.updateBatchById(updateList);
            // this.updateBatchById(updateList);
            log.info("执行数据库更新人口完成");
            log.info("数据库更新人口完成");
        }
        if (!houseUserList.isEmpty()) {
            log.info("执行数据库导入人口房屋关系");
            comMngPopulationHouseUserService.saveBatch(houseUserList);
            log.info("执行数据库导入人口房屋关系完成");
            log.info("数据库导入人口房屋关系完成");
        }
        if (!savePopulationCommunityList.isEmpty()) {
            log.info("执行数据库导入人口社区关系");
@@ -2749,7 +2955,7 @@
        }
        if (!updatePopulationCommunityList.isEmpty()) {
            log.info("执行数据库更新人口社区关系");
            comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
            comMngPopulationCommunityTagsService.updateBatchById(updatePopulationCommunityList);
            log.info("数据库更新人口社区关系完成");
        }
        log.info("执行数据库导入完成");
@@ -2805,14 +3011,14 @@
            Integer nub = 1;
            // 查询所有人口数据放入HashMap中
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(null);
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getActId,communityId));
            HashMap<String, Object> populationMap = new HashMap<>();
            populationList.forEach(population -> {
                String key = population.getCardNo();
                populationMap.put(key, population);
            });
            // 查询所有房屋信息放入到HashMap中
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(null);
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(new QueryWrapper<ComMngPopulationHouseDO>().lambda().eq(ComMngPopulationHouseDO::getCommunityId,communityId));
            HashMap<String, Object> houseMap = new HashMap<>();
            houseLists.forEach(house -> {
                String key = house.getCommunityId() + house.getVillageId() + house.getFloor() + house.getUnitNo()
@@ -2820,14 +3026,14 @@
                houseMap.put(key, house);
            });
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(null);
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(new QueryWrapper<ComMngVillageDO>().lambda().eq(ComMngVillageDO::getCommunityId,communityId));
            HashMap<String, Object> villageMap = new HashMap<>();
            villageList.forEach(village -> {
                String key = village.getCommunityId() + village.getAlley() + village.getHouseNum();
                villageMap.put(key, village);
            });
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectList(null);
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectListIndex(communityId);
            HashMap<String, Object> houseUserMap = new HashMap<>();
            houseUserLists.forEach(houseUser -> {
                String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
@@ -2835,7 +3041,7 @@
            });
            List<ComMngPopulationCommunityTagsDO> populationCommunityLists =
                comMngPopulationCommunityTagsDAO.selectList(null);
                comMngPopulationCommunityTagsDAO.selectList(new QueryWrapper<ComMngPopulationCommunityTagsDO>().lambda().eq(ComMngPopulationCommunityTagsDO::getCommunityId,communityId));
            HashMap<String, Object> populationCommunityMap = new HashMap<>();
            populationCommunityLists.forEach(populationCommunity -> {
                String key = populationCommunity.getPopulationId() + populationCommunity.getCommunityId() + "";
@@ -2893,39 +3099,48 @@
                log.info("开始查询小区街路巷是否存在完成");
                log.info("开始查询房屋是否存在");
                // 先判断房屋是否存在
                ComMngPopulationHouseDO populationHouseDO = null;
                String houseKey =
                    communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                if (isOnly(houseKey, houseMap)) {
                    if (!houseList.isEmpty()) {
                        for (ComMngPopulationHouseDO house : houseList) {
                            if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                && house.getUnitNo().equals(vo.getUnitNo())
                                && house.getHouseNo().equals(vo.getHouseNo())) {
                                populationHouseDO = house;
                                break;
                // 先判断房屋是否存在
                if(StringUtils.isNotEmpty(vo.getFloor())&&StringUtils.isNotEmpty(vo.getHouseNo())&&StringUtils.isNotEmpty(vo.getUnitNo())){
                    String houseKey =
                            communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                    if (isOnly(houseKey, houseMap)) {
                        if (!houseList.isEmpty()) {
                            for (ComMngPopulationHouseDO house : houseList) {
                                if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                        && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                        && house.getUnitNo().equals(vo.getUnitNo())
                                        && house.getHouseNo().equals(vo.getHouseNo())) {
                                    populationHouseDO = house;
                                    break;
                                }
                            }
                        }
                        if (populationHouseDO == null) {
                            // 房屋信息不存在建立房屋信息
                            populationHouseDO =
                                    saveSentencePopulationHouse(vo, comMngVillageDO, communityId, areaPath, populationActVO.getName());
                            houseList.add(populationHouseDO);
                        }
                    } else {
                        populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    }
                    if (populationHouseDO == null) {
                        // 房屋信息不存在建立房屋信息
                        populationHouseDO = saveSentencePopulationHouse(vo, comMngVillageDO, communityId, areaPath,
                            populationActVO.getName());
                        houseList.add(populationHouseDO);
                    }
                } else {
                    populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    vo.setHouseId(populationHouseDO.getId());
                    log.info("查询房屋是否存在完成");
                }else {
                    ComMngPopulationSentenceMistakeExcelVO mistake = new ComMngPopulationSentenceMistakeExcelVO();
                    BeanUtils.copyProperties(vo, mistake);
                    setSentenceMistake(mistake, vo);
                    mistake.setMistake("房屋数据填报不完整" );
                    mistakes.add(mistake);
                    log.info("房屋数据填报不完整");
                    continue;
                }
                vo.setHouseId(populationHouseDO.getId());
                log.info("开始查询房屋是否存在完成");
                if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
                    // 空户处理完房屋信息,直接返回
                    continue;
                }
                String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                // 判断实有人口是否已存在
                log.info("开始查询实有人口是否已存在");
                ComMngPopulationDO populationDO = null;
@@ -2998,7 +3213,16 @@
                            if (!labelList.contains(s))
                                iterator.remove();
                        }
                        comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        if(StringUtils.isNotEmpty(comMngPopulationCommunityTagsDO.getLabel())){
                            for(String tag:userTag){
                                if(!comMngPopulationCommunityTagsDO.getLabel().contains(tag)){
                                    comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel()+","+tag);
                                }
                            }
                        }
                        else{
                            comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        }
                        comMngPopulationCommunityTagsDO.setUpdateBy(userId);
                        updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
@@ -3009,7 +3233,20 @@
                        mistakes.add(mistake);
                    }
                }
                log.info("查询实有人口存在社区信息完成");
                log.info("开始处理楼栋信息");
                List<ComMngBuildingDO> comMngBuildingDOList= comMngBuildingDAO.selectList(new QueryWrapper<ComMngBuildingDO>().lambda().eq(ComMngBuildingDO::getVillageId,comMngVillageDO.getVillageId()).eq(ComMngBuildingDO::getName,vo.getFloor()));
                if(comMngBuildingDOList.isEmpty()){
      ComMngBuildingDO  comMngBuildingDO=new ComMngBuildingDO();
                   comMngBuildingDO.setId(Snowflake.getId());
                   comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
                   comMngBuildingDO.setName(vo.getFloor());
                   comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
                   comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
                   comMngBuildingDAO.insert(comMngBuildingDO);
                }
            }
        } catch (Exception e) {
            log.info("出现错误,错误原因:" + e.getMessage());
@@ -3020,23 +3257,23 @@
        if (!houseList.isEmpty()) {
            log.info("执行数据库导入房屋");
            comMngPopulationHouseDAO.insertAll(houseList);
            log.info("执行数据库导入房屋完成");
            log.info("数据库导入房屋完成");
        }
        if (!saveList.isEmpty()) {
            log.info("执行数据库导入人口");
            this.baseMapper.insertAll(saveList);
            log.info("执行数据库导入人口完成");
            log.info("数据库导入人口完成");
        }
        if (!updateList.isEmpty()) {
            log.info("执行数据库更新人口");
            this.baseMapper.updateAll(updateList);
            this.updateBatchById(updateList);
            // this.updateBatchById(updateList);
            log.info("执行数据库更新人口完成");
            log.info("数据库更新人口完成");
        }
        if (!houseUserList.isEmpty()) {
            log.info("执行数据库导入人口房屋关系");
            comMngPopulationHouseUserService.saveBatch(houseUserList);
            log.info("执行数据库导入人口房屋关系完成");
            log.info("数据库导入人口房屋关系完成");
        }
        if (!savePopulationCommunityList.isEmpty()) {
            log.info("执行数据库导入人口社区关系");
@@ -3045,7 +3282,7 @@
        }
        if (!updatePopulationCommunityList.isEmpty()) {
            log.info("执行数据库更新人口社区关系");
            comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
            comMngPopulationCommunityTagsService.updateBatchById(updatePopulationCommunityList);
            log.info("数据库更新人口社区关系完成");
        }
        log.info("执行数据库导入完成");
@@ -3101,14 +3338,14 @@
            Integer nub = 1;
            // 查询所有人口数据放入HashMap中
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(null);
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getActId,communityId));
            HashMap<String, Object> populationMap = new HashMap<>();
            populationList.forEach(population -> {
                String key = population.getCardNo();
                populationMap.put(key, population);
            });
            // 查询所有房屋信息放入到HashMap中
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(null);
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(new QueryWrapper<ComMngPopulationHouseDO>().lambda().eq(ComMngPopulationHouseDO::getCommunityId,communityId));
            HashMap<String, Object> houseMap = new HashMap<>();
            houseLists.forEach(house -> {
                String key = house.getCommunityId() + house.getVillageId() + house.getFloor() + house.getUnitNo()
@@ -3116,14 +3353,14 @@
                houseMap.put(key, house);
            });
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(null);
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(new QueryWrapper<ComMngVillageDO>().lambda().eq(ComMngVillageDO::getCommunityId,communityId));
            HashMap<String, Object> villageMap = new HashMap<>();
            villageList.forEach(village -> {
                String key = village.getCommunityId() + village.getAlley() + village.getHouseNum();
                villageMap.put(key, village);
            });
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectList(null);
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectListIndex(communityId);
            HashMap<String, Object> houseUserMap = new HashMap<>();
            houseUserLists.forEach(houseUser -> {
                String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
@@ -3131,7 +3368,7 @@
            });
            List<ComMngPopulationCommunityTagsDO> populationCommunityLists =
                comMngPopulationCommunityTagsDAO.selectList(null);
                comMngPopulationCommunityTagsDAO.selectList(new QueryWrapper<ComMngPopulationCommunityTagsDO>().lambda().eq(ComMngPopulationCommunityTagsDO::getCommunityId,communityId));
            HashMap<String, Object> populationCommunityMap = new HashMap<>();
            populationCommunityLists.forEach(populationCommunity -> {
                String key = populationCommunity.getPopulationId() + populationCommunity.getCommunityId() + "";
@@ -3189,39 +3426,48 @@
                log.info("开始查询小区街路巷是否存在完成");
                log.info("开始查询房屋是否存在");
                // 先判断房屋是否存在
                ComMngPopulationHouseDO populationHouseDO = null;
                String houseKey =
                    communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                if (isOnly(houseKey, houseMap)) {
                    if (!houseList.isEmpty()) {
                        for (ComMngPopulationHouseDO house : houseList) {
                            if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                && house.getUnitNo().equals(vo.getUnitNo())
                                && house.getHouseNo().equals(vo.getHouseNo())) {
                                populationHouseDO = house;
                                break;
                // 先判断房屋是否存在
                if(StringUtils.isNotEmpty(vo.getFloor())&&StringUtils.isNotEmpty(vo.getHouseNo())&&StringUtils.isNotEmpty(vo.getUnitNo())){
                    String houseKey =
                            communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                    if (isOnly(houseKey, houseMap)) {
                        if (!houseList.isEmpty()) {
                            for (ComMngPopulationHouseDO house : houseList) {
                                if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                        && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                        && house.getUnitNo().equals(vo.getUnitNo())
                                        && house.getHouseNo().equals(vo.getHouseNo())) {
                                    populationHouseDO = house;
                                    break;
                                }
                            }
                        }
                        if (populationHouseDO == null) {
                            // 房屋信息不存在建立房屋信息
                            populationHouseDO =
                                    saveVeteransPopulationHouse(vo, comMngVillageDO, communityId, areaPath, populationActVO.getName());
                            houseList.add(populationHouseDO);
                        }
                    } else {
                        populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    }
                    if (populationHouseDO == null) {
                        // 房屋信息不存在建立房屋信息
                        populationHouseDO = saveVeteransPopulationHouse(vo, comMngVillageDO, communityId, areaPath,
                            populationActVO.getName());
                        houseList.add(populationHouseDO);
                    }
                } else {
                    populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    vo.setHouseId(populationHouseDO.getId());
                    log.info("查询房屋是否存在完成");
                }else {
                    ComMngPopulationVeteransMistakeExcelVO mistake = new ComMngPopulationVeteransMistakeExcelVO();
                    BeanUtils.copyProperties(vo, mistake);
                    setVeteransMistake(mistake, vo);
                    mistake.setMistake("房屋数据填报不完整" );
                    mistakes.add(mistake);
                    log.info("房屋数据填报不完整");
                    continue;
                }
                vo.setHouseId(populationHouseDO.getId());
                log.info("开始查询房屋是否存在完成");
                if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
                    // 空户处理完房屋信息,直接返回
                    continue;
                }
                String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                // 判断实有人口是否已存在
                log.info("开始查询实有人口是否已存在");
                ComMngPopulationDO populationDO = null;
@@ -3294,7 +3540,16 @@
                            if (!labelList.contains(s))
                                iterator.remove();
                        }
                        comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        if(StringUtils.isNotEmpty(comMngPopulationCommunityTagsDO.getLabel())){
                            for(String tag:userTag){
                                if(!comMngPopulationCommunityTagsDO.getLabel().contains(tag)){
                                    comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel()+","+tag);
                                }
                            }
                        }
                        else{
                            comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        }
                        comMngPopulationCommunityTagsDO.setUpdateBy(userId);
                        updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
@@ -3305,7 +3560,20 @@
                        mistakes.add(mistake);
                    }
                }
                log.info("查询实有人口存在社区信息完成");
                log.info("开始处理楼栋信息");
                List<ComMngBuildingDO> comMngBuildingDOList= comMngBuildingDAO.selectList(new QueryWrapper<ComMngBuildingDO>().lambda().eq(ComMngBuildingDO::getVillageId,comMngVillageDO.getVillageId()).eq(ComMngBuildingDO::getName,vo.getFloor()));
                if(comMngBuildingDOList.isEmpty()){
      ComMngBuildingDO  comMngBuildingDO=new ComMngBuildingDO();
                   comMngBuildingDO.setId(Snowflake.getId());
                   comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
                   comMngBuildingDO.setName(vo.getFloor());
                   comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
                   comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
                   comMngBuildingDAO.insert(comMngBuildingDO);
                }
            }
        } catch (Exception e) {
            log.info("出现错误,错误原因:" + e.getMessage());
@@ -3316,23 +3584,23 @@
        if (!houseList.isEmpty()) {
            log.info("执行数据库导入房屋");
            comMngPopulationHouseDAO.insertAll(houseList);
            log.info("执行数据库导入房屋完成");
            log.info("数据库导入房屋完成");
        }
        if (!saveList.isEmpty()) {
            log.info("执行数据库导入人口");
            this.baseMapper.insertAll(saveList);
            log.info("执行数据库导入人口完成");
            log.info("数据库导入人口完成");
        }
        if (!updateList.isEmpty()) {
            log.info("执行数据库更新人口");
            this.baseMapper.updateAll(updateList);
            this.updateBatchById(updateList);
            // this.updateBatchById(updateList);
            log.info("执行数据库更新人口完成");
            log.info("数据库更新人口完成");
        }
        if (!houseUserList.isEmpty()) {
            log.info("执行数据库导入人口房屋关系");
            comMngPopulationHouseUserService.saveBatch(houseUserList);
            log.info("执行数据库导入人口房屋关系完成");
            log.info("数据库导入人口房屋关系完成");
        }
        if (!savePopulationCommunityList.isEmpty()) {
            log.info("执行数据库导入人口社区关系");
@@ -3341,7 +3609,7 @@
        }
        if (!updatePopulationCommunityList.isEmpty()) {
            log.info("执行数据库更新人口社区关系");
            comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
            comMngPopulationCommunityTagsService.updateBatchById(updatePopulationCommunityList);
            log.info("数据库更新人口社区关系完成");
        }
        log.info("执行数据库导入完成");
@@ -3397,14 +3665,14 @@
            Integer nub = 1;
            // 查询所有人口数据放入HashMap中
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(null);
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getActId,communityId));
            HashMap<String, Object> populationMap = new HashMap<>();
            populationList.forEach(population -> {
                String key = population.getCardNo();
                populationMap.put(key, population);
            });
            // 查询所有房屋信息放入到HashMap中
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(null);
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(new QueryWrapper<ComMngPopulationHouseDO>().lambda().eq(ComMngPopulationHouseDO::getCommunityId,communityId));
            HashMap<String, Object> houseMap = new HashMap<>();
            houseLists.forEach(house -> {
                String key = house.getCommunityId() + house.getVillageId() + house.getFloor() + house.getUnitNo()
@@ -3412,14 +3680,14 @@
                houseMap.put(key, house);
            });
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(null);
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(new QueryWrapper<ComMngVillageDO>().lambda().eq(ComMngVillageDO::getCommunityId,communityId));
            HashMap<String, Object> villageMap = new HashMap<>();
            villageList.forEach(village -> {
                String key = village.getCommunityId() + village.getAlley() + village.getHouseNum();
                villageMap.put(key, village);
            });
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectList(null);
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectListIndex(communityId);
            HashMap<String, Object> houseUserMap = new HashMap<>();
            houseUserLists.forEach(houseUser -> {
                String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
@@ -3427,7 +3695,7 @@
            });
            List<ComMngPopulationCommunityTagsDO> populationCommunityLists =
                comMngPopulationCommunityTagsDAO.selectList(null);
                comMngPopulationCommunityTagsDAO.selectList(new QueryWrapper<ComMngPopulationCommunityTagsDO>().lambda().eq(ComMngPopulationCommunityTagsDO::getCommunityId,communityId));
            HashMap<String, Object> populationCommunityMap = new HashMap<>();
            populationCommunityLists.forEach(populationCommunity -> {
                String key = populationCommunity.getPopulationId() + populationCommunity.getCommunityId() + "";
@@ -3485,39 +3753,48 @@
                log.info("开始查询小区街路巷是否存在完成");
                log.info("开始查询房屋是否存在");
                // 先判断房屋是否存在
                ComMngPopulationHouseDO populationHouseDO = null;
                String houseKey =
                    communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                if (isOnly(houseKey, houseMap)) {
                    if (!houseList.isEmpty()) {
                        for (ComMngPopulationHouseDO house : houseList) {
                            if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                && house.getUnitNo().equals(vo.getUnitNo())
                                && house.getHouseNo().equals(vo.getHouseNo())) {
                                populationHouseDO = house;
                                break;
                // 先判断房屋是否存在
                if(StringUtils.isNotEmpty(vo.getFloor())&&StringUtils.isNotEmpty(vo.getHouseNo())&&StringUtils.isNotEmpty(vo.getUnitNo())){
                    String houseKey =
                            communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                    if (isOnly(houseKey, houseMap)) {
                        if (!houseList.isEmpty()) {
                            for (ComMngPopulationHouseDO house : houseList) {
                                if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                        && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                        && house.getUnitNo().equals(vo.getUnitNo())
                                        && house.getHouseNo().equals(vo.getHouseNo())) {
                                    populationHouseDO = house;
                                    break;
                                }
                            }
                        }
                        if (populationHouseDO == null) {
                            // 房屋信息不存在建立房屋信息
                            populationHouseDO =
                                    saveDisabilityPopulationHouse(vo, comMngVillageDO, communityId, areaPath, populationActVO.getName());
                            houseList.add(populationHouseDO);
                        }
                    } else {
                        populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    }
                    if (populationHouseDO == null) {
                        // 房屋信息不存在建立房屋信息
                        populationHouseDO = saveDisabilityPopulationHouse(vo, comMngVillageDO, communityId, areaPath,
                            populationActVO.getName());
                        houseList.add(populationHouseDO);
                    }
                } else {
                    populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    vo.setHouseId(populationHouseDO.getId());
                    log.info("查询房屋是否存在完成");
                }else {
                    ComMngPopulationDisabilityMistakeExcelVO mistake = new ComMngPopulationDisabilityMistakeExcelVO();
                    BeanUtils.copyProperties(vo, mistake);
                    setDisabilityMistake(mistake, vo);
                    mistake.setMistake("房屋数据填报不完整" );
                    mistakes.add(mistake);
                    log.info("房屋数据填报不完整");
                    continue;
                }
                vo.setHouseId(populationHouseDO.getId());
                log.info("开始查询房屋是否存在完成");
                if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
                    // 空户处理完房屋信息,直接返回
                    continue;
                }
                String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                // 判断实有人口是否已存在
                log.info("开始查询实有人口是否已存在");
                ComMngPopulationDO populationDO = null;
@@ -3590,7 +3867,16 @@
                            if (!labelList.contains(s))
                                iterator.remove();
                        }
                        comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        if(StringUtils.isNotEmpty(comMngPopulationCommunityTagsDO.getLabel())){
                            for(String tag:userTag){
                                if(!comMngPopulationCommunityTagsDO.getLabel().contains(tag)){
                                    comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel()+","+tag);
                                }
                            }
                        }
                        else{
                            comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        }
                        comMngPopulationCommunityTagsDO.setUpdateBy(userId);
                        updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
@@ -3601,7 +3887,20 @@
                        mistakes.add(mistake);
                    }
                }
                log.info("查询实有人口存在社区信息完成");
                log.info("开始处理楼栋信息");
                List<ComMngBuildingDO> comMngBuildingDOList= comMngBuildingDAO.selectList(new QueryWrapper<ComMngBuildingDO>().lambda().eq(ComMngBuildingDO::getVillageId,comMngVillageDO.getVillageId()).eq(ComMngBuildingDO::getName,vo.getFloor()));
                if(comMngBuildingDOList.isEmpty()){
      ComMngBuildingDO  comMngBuildingDO=new ComMngBuildingDO();
                   comMngBuildingDO.setId(Snowflake.getId());
                   comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
                   comMngBuildingDO.setName(vo.getFloor());
                   comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
                   comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
                   comMngBuildingDAO.insert(comMngBuildingDO);
                }
            }
        } catch (Exception e) {
            log.info("出现错误,错误原因:" + e.getMessage());
@@ -3612,23 +3911,23 @@
        if (!houseList.isEmpty()) {
            log.info("执行数据库导入房屋");
            comMngPopulationHouseDAO.insertAll(houseList);
            log.info("执行数据库导入房屋完成");
            log.info("数据库导入房屋完成");
        }
        if (!saveList.isEmpty()) {
            log.info("执行数据库导入人口");
            this.baseMapper.insertAll(saveList);
            log.info("执行数据库导入人口完成");
            log.info("数据库导入人口完成");
        }
        if (!updateList.isEmpty()) {
            log.info("执行数据库更新人口");
            this.baseMapper.updateAll(updateList);
            this.updateBatchById(updateList);
            // this.updateBatchById(updateList);
            log.info("执行数据库更新人口完成");
            log.info("数据库更新人口完成");
        }
        if (!houseUserList.isEmpty()) {
            log.info("执行数据库导入人口房屋关系");
            comMngPopulationHouseUserService.saveBatch(houseUserList);
            log.info("执行数据库导入人口房屋关系完成");
            log.info("数据库导入人口房屋关系完成");
        }
        if (!savePopulationCommunityList.isEmpty()) {
            log.info("执行数据库导入人口社区关系");
@@ -3637,7 +3936,7 @@
        }
        if (!updatePopulationCommunityList.isEmpty()) {
            log.info("执行数据库更新人口社区关系");
            comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
            comMngPopulationCommunityTagsService.updateBatchById(updatePopulationCommunityList);
            log.info("数据库更新人口社区关系完成");
        }
        log.info("执行数据库导入完成");
@@ -3698,14 +3997,14 @@
            Integer nub = 1;
            // 查询所有人口数据放入HashMap中
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(null);
            List<ComMngPopulationDO> populationList = this.baseMapper.selectList(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getActId,communityId));
            HashMap<String, Object> populationMap = new HashMap<>();
            populationList.forEach(population -> {
                String key = population.getCardNo();
                populationMap.put(key, population);
            });
            // 查询所有房屋信息放入到HashMap中
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(null);
            List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(new QueryWrapper<ComMngPopulationHouseDO>().lambda().eq(ComMngPopulationHouseDO::getCommunityId,communityId));
            HashMap<String, Object> houseMap = new HashMap<>();
            houseLists.forEach(house -> {
                String key = house.getCommunityId() + house.getVillageId() + house.getFloor() + house.getUnitNo()
@@ -3713,14 +4012,14 @@
                houseMap.put(key, house);
            });
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(null);
            List<ComMngVillageDO> villageList = comActVillageDAO.selectList(new QueryWrapper<ComMngVillageDO>().lambda().eq(ComMngVillageDO::getCommunityId,communityId));
            HashMap<String, Object> villageMap = new HashMap<>();
            villageList.forEach(village -> {
                String key = village.getCommunityId() + village.getAlley() + village.getHouseNum();
                villageMap.put(key, village);
            });
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectList(null);
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectListIndex(communityId);
            HashMap<String, Object> houseUserMap = new HashMap<>();
            houseUserLists.forEach(houseUser -> {
                String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
@@ -3728,7 +4027,7 @@
            });
            List<ComMngPopulationCommunityTagsDO> populationCommunityLists =
                comMngPopulationCommunityTagsDAO.selectList(null);
                comMngPopulationCommunityTagsDAO.selectList(new QueryWrapper<ComMngPopulationCommunityTagsDO>().lambda().eq(ComMngPopulationCommunityTagsDO::getCommunityId,communityId));
            HashMap<String, Object> populationCommunityMap = new HashMap<>();
            populationCommunityLists.forEach(populationCommunity -> {
                String key = populationCommunity.getPopulationId() + populationCommunity.getCommunityId() + "";
@@ -3786,39 +4085,48 @@
                log.info("开始查询小区街路巷是否存在完成");
                log.info("开始查询房屋是否存在");
                // 先判断房屋是否存在
                ComMngPopulationHouseDO populationHouseDO = null;
                String houseKey =
                    communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                if (isOnly(houseKey, houseMap)) {
                    if (!houseList.isEmpty()) {
                        for (ComMngPopulationHouseDO house : houseList) {
                            if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                && house.getUnitNo().equals(vo.getUnitNo())
                                && house.getHouseNo().equals(vo.getHouseNo())) {
                                populationHouseDO = house;
                                break;
                // 先判断房屋是否存在
                if(StringUtils.isNotEmpty(vo.getFloor())&&StringUtils.isNotEmpty(vo.getHouseNo())&&StringUtils.isNotEmpty(vo.getUnitNo())){
                    String houseKey =
                            communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                    if (isOnly(houseKey, houseMap)) {
                        if (!houseList.isEmpty()) {
                            for (ComMngPopulationHouseDO house : houseList) {
                                if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                        && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                        && house.getUnitNo().equals(vo.getUnitNo())
                                        && house.getHouseNo().equals(vo.getHouseNo())) {
                                    populationHouseDO = house;
                                    break;
                                }
                            }
                        }
                        if (populationHouseDO == null) {
                            // 房屋信息不存在建立房屋信息
                            populationHouseDO =
                                    saveLowSecurityPopulationHouse(vo, comMngVillageDO, communityId, areaPath, populationActVO.getName());
                            houseList.add(populationHouseDO);
                        }
                    } else {
                        populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    }
                    if (populationHouseDO == null) {
                        // 房屋信息不存在建立房屋信息
                        populationHouseDO = saveLowSecurityPopulationHouse(vo, comMngVillageDO, communityId, areaPath,
                            populationActVO.getName());
                        houseList.add(populationHouseDO);
                    }
                } else {
                    populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    vo.setHouseId(populationHouseDO.getId());
                    log.info("查询房屋是否存在完成");
                }else {
                    ComMngPopulationLowSecurityMistakeExcelVO mistake = new ComMngPopulationLowSecurityMistakeExcelVO();
                    BeanUtils.copyProperties(vo, mistake);
                    setLowSecurityMistake(mistake, vo);
                    mistake.setMistake("房屋数据填报不完整" );
                    mistakes.add(mistake);
                    log.info("房屋数据填报不完整");
                    continue;
                }
                vo.setHouseId(populationHouseDO.getId());
                log.info("开始查询房屋是否存在完成");
                if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
                    // 空户处理完房屋信息,直接返回
                    continue;
                }
                String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                // 判断实有人口是否已存在
                log.info("开始查询实有人口是否已存在");
                ComMngPopulationDO populationDO = null;
@@ -3891,7 +4199,16 @@
                            if (!labelList.contains(s))
                                iterator.remove();
                        }
                        comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        if(StringUtils.isNotEmpty(comMngPopulationCommunityTagsDO.getLabel())){
                            for(String tag:userTag){
                                if(!comMngPopulationCommunityTagsDO.getLabel().contains(tag)){
                                    comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel()+","+tag);
                                }
                            }
                        }
                        else{
                            comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        }
                        comMngPopulationCommunityTagsDO.setUpdateBy(userId);
                        updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
@@ -3902,7 +4219,20 @@
                        mistakes.add(mistake);
                    }
                }
                log.info("查询实有人口存在社区信息完成");
                log.info("开始处理楼栋信息");
                List<ComMngBuildingDO> comMngBuildingDOList= comMngBuildingDAO.selectList(new QueryWrapper<ComMngBuildingDO>().lambda().eq(ComMngBuildingDO::getVillageId,comMngVillageDO.getVillageId()).eq(ComMngBuildingDO::getName,vo.getFloor()));
                if(comMngBuildingDOList.isEmpty()){
      ComMngBuildingDO  comMngBuildingDO=new ComMngBuildingDO();
                   comMngBuildingDO.setId(Snowflake.getId());
                   comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
                   comMngBuildingDO.setName(vo.getFloor());
                   comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
                   comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
                   comMngBuildingDAO.insert(comMngBuildingDO);
                }
            }
        } catch (Exception e) {
            log.info("出现错误,错误原因:" + e.getMessage());
@@ -3913,23 +4243,23 @@
        if (!houseList.isEmpty()) {
            log.info("执行数据库导入房屋");
            comMngPopulationHouseDAO.insertAll(houseList);
            log.info("执行数据库导入房屋完成");
            log.info("数据库导入房屋完成");
        }
        if (!saveList.isEmpty()) {
            log.info("执行数据库导入人口");
            this.baseMapper.insertAll(saveList);
            log.info("执行数据库导入人口完成");
            log.info("数据库导入人口完成");
        }
        if (!updateList.isEmpty()) {
            log.info("执行数据库更新人口");
            this.baseMapper.updateAll(updateList);
            this.updateBatchById(updateList);
            // this.updateBatchById(updateList);
            log.info("执行数据库更新人口完成");
            log.info("数据库更新人口完成");
        }
        if (!houseUserList.isEmpty()) {
            log.info("执行数据库导入人口房屋关系");
            comMngPopulationHouseUserService.saveBatch(houseUserList);
            log.info("执行数据库导入人口房屋关系完成");
            log.info("数据库导入人口房屋关系完成");
        }
        if (!savePopulationCommunityList.isEmpty()) {
            log.info("执行数据库导入人口社区关系");
@@ -3938,7 +4268,7 @@
        }
        if (!updatePopulationCommunityList.isEmpty()) {
            log.info("执行数据库更新人口社区关系");
            comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
            comMngPopulationCommunityTagsService.updateBatchById(updatePopulationCommunityList);
            log.info("数据库更新人口社区关系完成");
        }
        log.info("执行数据库导入完成");
@@ -4016,7 +4346,7 @@
                villageMap.put(key, village);
            });
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectList(null);
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectListIndex(communityId);
            HashMap<String, Object> houseUserMap = new HashMap<>();
            houseUserLists.forEach(houseUser -> {
                String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
@@ -4082,39 +4412,48 @@
                log.info("开始查询小区街路巷是否存在完成");
                log.info("开始查询房屋是否存在");
                // 先判断房屋是否存在
                ComMngPopulationHouseDO populationHouseDO = null;
                String houseKey =
                        communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                if (isOnly(houseKey, houseMap)) {
                    if (!houseList.isEmpty()) {
                        for (ComMngPopulationHouseDO house : houseList) {
                            if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                    && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                    && house.getUnitNo().equals(vo.getUnitNo())
                                    && house.getHouseNo().equals(vo.getHouseNo())) {
                                populationHouseDO = house;
                                break;
                // 先判断房屋是否存在
                if(StringUtils.isNotEmpty(vo.getFloor())&&StringUtils.isNotEmpty(vo.getHouseNo())&&StringUtils.isNotEmpty(vo.getUnitNo())){
                    String houseKey =
                            communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                    if (isOnly(houseKey, houseMap)) {
                        if (!houseList.isEmpty()) {
                            for (ComMngPopulationHouseDO house : houseList) {
                                if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                        && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                        && house.getUnitNo().equals(vo.getUnitNo())
                                        && house.getHouseNo().equals(vo.getHouseNo())) {
                                    populationHouseDO = house;
                                    break;
                                }
                            }
                        }
                        if (populationHouseDO == null) {
                            // 房屋信息不存在建立房屋信息
                            populationHouseDO =
                                    saveElderPopulationHouse(vo, comMngVillageDO, communityId, areaPath, populationActVO.getName());
                            houseList.add(populationHouseDO);
                        }
                    } else {
                        populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    }
                    if (populationHouseDO == null) {
                        // 房屋信息不存在建立房屋信息
                        populationHouseDO = saveElderPopulationHouse(vo, comMngVillageDO, communityId, areaPath,
                                populationActVO.getName());
                        houseList.add(populationHouseDO);
                    }
                } else {
                    populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    vo.setHouseId(populationHouseDO.getId());
                    log.info("查询房屋是否存在完成");
                }else {
                    ComMngPopulationElderMistakeExcelVO mistake = new ComMngPopulationElderMistakeExcelVO();
                    BeanUtils.copyProperties(vo, mistake);
                    setElderMistake(mistake, vo);
                    mistake.setMistake("房屋数据填报不完整" );
                    mistakes.add(mistake);
                    log.info("房屋数据填报不完整");
                    continue;
                }
                vo.setHouseId(populationHouseDO.getId());
                log.info("开始查询房屋是否存在完成");
                if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
                    // 空户处理完房屋信息,直接返回
                    continue;
                }
                String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                // 判断实有人口是否已存在
                log.info("开始查询实有人口是否已存在");
                ComMngPopulationDO populationDO = null;
@@ -4189,8 +4528,15 @@
                                iterator.remove();
                            }
                        }
                        if(userTag != null && userTag.size() > 0){
                            comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel() + "," + Joiner.on(",").join(userTag));
                        if(StringUtils.isNotEmpty(comMngPopulationCommunityTagsDO.getLabel())){
                            for(String tag:userTag){
                                if(!comMngPopulationCommunityTagsDO.getLabel().contains(tag)){
                                    comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel()+","+tag);
                                }
                            }
                        }
                        else{
                            comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        }
                        comMngPopulationCommunityTagsDO.setUpdateBy(userId);
                        updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
@@ -4202,7 +4548,20 @@
                        mistakes.add(mistake);
                    }
                }
                log.info("查询实有人口存在社区信息完成");
                log.info("开始处理楼栋信息");
                List<ComMngBuildingDO> comMngBuildingDOList= comMngBuildingDAO.selectList(new QueryWrapper<ComMngBuildingDO>().lambda().eq(ComMngBuildingDO::getVillageId,comMngVillageDO.getVillageId()).eq(ComMngBuildingDO::getName,vo.getFloor()));
                if(comMngBuildingDOList.isEmpty()){
      ComMngBuildingDO  comMngBuildingDO=new ComMngBuildingDO();
                   comMngBuildingDO.setId(Snowflake.getId());
                   comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
                   comMngBuildingDO.setName(vo.getFloor());
                   comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
                   comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
                   comMngBuildingDAO.insert(comMngBuildingDO);
                }
            }
        } catch (Exception e) {
            log.info("出现错误,错误原因:" + e.getMessage());
@@ -4213,23 +4572,23 @@
        if (!houseList.isEmpty()) {
            log.info("执行数据库导入房屋");
            comMngPopulationHouseDAO.insertAll(houseList);
            log.info("执行数据库导入房屋完成");
            log.info("数据库导入房屋完成");
        }
        if (!saveList.isEmpty()) {
            log.info("执行数据库导入人口");
            this.baseMapper.insertAll(saveList);
            log.info("执行数据库导入人口完成");
            log.info("数据库导入人口完成");
        }
        if (!updateList.isEmpty()) {
            log.info("执行数据库更新人口");
            this.baseMapper.updateAll(updateList);
            this.updateBatchById(updateList);
            // this.updateBatchById(updateList);
            log.info("执行数据库更新人口完成");
            log.info("数据库更新人口完成");
        }
        if (!houseUserList.isEmpty()) {
            log.info("执行数据库导入人口房屋关系");
            comMngPopulationHouseUserService.saveBatch(houseUserList);
            log.info("执行数据库导入人口房屋关系完成");
            log.info("数据库导入人口房屋关系完成");
        }
        if (!savePopulationCommunityList.isEmpty()) {
            log.info("执行数据库导入人口社区关系");
@@ -4238,7 +4597,7 @@
        }
        if (!updatePopulationCommunityList.isEmpty()) {
            log.info("执行数据库更新人口社区关系");
            comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
            comMngPopulationCommunityTagsService.updateBatchById(updatePopulationCommunityList);
            log.info("数据库更新人口社区关系完成");
        }
        log.info("执行数据库导入完成");
@@ -4315,7 +4674,7 @@
                villageMap.put(key, village);
            });
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectList(null);
            List<ComMngPopulationHouseUserDO> houseUserLists = comMngPopulationHouseUserDAO.selectListIndex(communityId);
            HashMap<String, Object> houseUserMap = new HashMap<>();
            houseUserLists.forEach(houseUser -> {
                String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
@@ -4381,39 +4740,48 @@
                log.info("开始查询小区街路巷是否存在完成");
                log.info("开始查询房屋是否存在");
                // 先判断房屋是否存在
                ComMngPopulationHouseDO populationHouseDO = null;
                String houseKey =
                        communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                if (isOnly(houseKey, houseMap)) {
                    if (!houseList.isEmpty()) {
                        for (ComMngPopulationHouseDO house : houseList) {
                            if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                    && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                    && house.getUnitNo().equals(vo.getUnitNo())
                                    && house.getHouseNo().equals(vo.getHouseNo())) {
                                populationHouseDO = house;
                                break;
                // 先判断房屋是否存在
                if(StringUtils.isNotEmpty(vo.getFloor())&&StringUtils.isNotEmpty(vo.getHouseNo())&&StringUtils.isNotEmpty(vo.getUnitNo())){
                    String houseKey =
                            communityId + comMngVillageDO.getVillageId() + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo();
                    if (isOnly(houseKey, houseMap)) {
                        if (!houseList.isEmpty()) {
                            for (ComMngPopulationHouseDO house : houseList) {
                                if (house.getVillageId().equals(comMngVillageDO.getVillageId())
                                        && house.getCommunityId().equals(communityId) && house.getFloor().equals(vo.getFloor())
                                        && house.getUnitNo().equals(vo.getUnitNo())
                                        && house.getHouseNo().equals(vo.getHouseNo())) {
                                    populationHouseDO = house;
                                    break;
                                }
                            }
                        }
                        if (populationHouseDO == null) {
                            // 房屋信息不存在建立房屋信息
                            populationHouseDO =
                                    savePensionPopulationHouse(vo, comMngVillageDO, communityId, areaPath, populationActVO.getName());
                            houseList.add(populationHouseDO);
                        }
                    } else {
                        populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    }
                    if (populationHouseDO == null) {
                        // 房屋信息不存在建立房屋信息
                        populationHouseDO = savePensionPopulationHouse(vo, comMngVillageDO, communityId, areaPath,
                                populationActVO.getName());
                        houseList.add(populationHouseDO);
                    }
                } else {
                    populationHouseDO = (ComMngPopulationHouseDO)houseMap.get(houseKey);
                    vo.setHouseId(populationHouseDO.getId());
                    log.info("查询房屋是否存在完成");
                }else {
                    ComMngPopulationPensionMistakeExcelVO mistake = new ComMngPopulationPensionMistakeExcelVO();
                    BeanUtils.copyProperties(vo, mistake);
                    setPensionMistake(mistake, vo);
                    mistake.setMistake("房屋数据填报不完整" );
                    mistakes.add(mistake);
                    log.info("房屋数据填报不完整");
                    continue;
                }
                vo.setHouseId(populationHouseDO.getId());
                log.info("开始查询房屋是否存在完成");
                if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
                    // 空户处理完房屋信息,直接返回
                    continue;
                }
                String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
                // 判断实有人口是否已存在
                log.info("开始查询实有人口是否已存在");
                ComMngPopulationDO populationDO = null;
@@ -4488,8 +4856,15 @@
                                iterator.remove();
                            }
                        }
                        if(userTag != null && userTag.size() > 0){
                            comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel() + "," + Joiner.on(",").join(userTag));
                        if(StringUtils.isNotEmpty(comMngPopulationCommunityTagsDO.getLabel())){
                            for(String tag:userTag){
                                if(!comMngPopulationCommunityTagsDO.getLabel().contains(tag)){
                                    comMngPopulationCommunityTagsDO.setLabel(comMngPopulationCommunityTagsDO.getLabel()+","+tag);
                                }
                            }
                        }
                        else{
                            comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
                        }
                        comMngPopulationCommunityTagsDO.setUpdateBy(userId);
                        updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
@@ -4501,7 +4876,20 @@
                        mistakes.add(mistake);
                    }
                }
                log.info("查询实有人口存在社区信息完成");
                log.info("开始处理楼栋信息");
                List<ComMngBuildingDO> comMngBuildingDOList= comMngBuildingDAO.selectList(new QueryWrapper<ComMngBuildingDO>().lambda().eq(ComMngBuildingDO::getVillageId,comMngVillageDO.getVillageId()).eq(ComMngBuildingDO::getName,vo.getFloor()));
                if(comMngBuildingDOList.isEmpty()){
      ComMngBuildingDO  comMngBuildingDO=new ComMngBuildingDO();
                   comMngBuildingDO.setId(Snowflake.getId());
                   comMngBuildingDO.setVillageId(comMngVillageDO.getVillageId());
                   comMngBuildingDO.setName(vo.getFloor());
                   comMngBuildingDO.setActId(comMngVillageDO.getCommunityId());
                   comMngBuildingDO.setStreetId(comMngVillageDO.getStreetId());
                   comMngBuildingDAO.insert(comMngBuildingDO);
                }
            }
        } catch (Exception e) {
            log.info("出现错误,错误原因:" + e.getMessage());
@@ -4512,23 +4900,23 @@
        if (!houseList.isEmpty()) {
            log.info("执行数据库导入房屋");
            comMngPopulationHouseDAO.insertAll(houseList);
            log.info("执行数据库导入房屋完成");
            log.info("数据库导入房屋完成");
        }
        if (!saveList.isEmpty()) {
            log.info("执行数据库导入人口");
            this.baseMapper.insertAll(saveList);
            log.info("执行数据库导入人口完成");
            log.info("数据库导入人口完成");
        }
        if (!updateList.isEmpty()) {
            log.info("执行数据库更新人口");
            this.baseMapper.updateAll(updateList);
            this.updateBatchById(updateList);
            // this.updateBatchById(updateList);
            log.info("执行数据库更新人口完成");
            log.info("数据库更新人口完成");
        }
        if (!houseUserList.isEmpty()) {
            log.info("执行数据库导入人口房屋关系");
            comMngPopulationHouseUserService.saveBatch(houseUserList);
            log.info("执行数据库导入人口房屋关系完成");
            log.info("数据库导入人口房屋关系完成");
        }
        if (!savePopulationCommunityList.isEmpty()) {
            log.info("执行数据库导入人口社区关系");
@@ -4537,7 +4925,7 @@
        }
        if (!updatePopulationCommunityList.isEmpty()) {
            log.info("执行数据库更新人口社区关系");
            comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
            comMngPopulationCommunityTagsService.updateBatchById(updatePopulationCommunityList);
            log.info("数据库更新人口社区关系完成");
        }
        log.info("执行数据库导入完成");
@@ -6490,6 +6878,10 @@
            list.forEach(populationDO -> {
                ComMngPopulationVO populationVO = new ComMngPopulationVO();
                BeanUtils.copyProperties(populationDO, populationVO);
                ComMngPopulationCommunityTagsDO comMngPopulationCommunityTagsDO=comMngPopulationCommunityTagsDAO.selectOne(new QueryWrapper<ComMngPopulationCommunityTagsDO>().lambda().eq(ComMngPopulationCommunityTagsDO::getPopulationId,populationDO.getId()));
                if(comMngPopulationCommunityTagsDO!=null){
                    populationVO.setLabel(comMngPopulationCommunityTagsDO.getLabel());
                }
                resultList.add(populationVO);
            });
        }