From 41e016f222583c2403fec1ae5889f627f17f748c Mon Sep 17 00:00:00 2001
From: tangxiaobao <303826152@qq.com>
Date: 星期一, 06 九月 2021 09:45:26 +0800
Subject: [PATCH] 活动报名
---
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java | 1056 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 1,014 insertions(+), 42 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
index 418f6a8..733901f 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
@@ -67,8 +67,7 @@
*/
@Slf4j
@Service
-public class ComMngPopulationServiceImpl extends ServiceImpl<ComMngPopulationDAO, ComMngPopulationDO>
- implements ComMngPopulationService {
+public class ComMngPopulationServiceImpl extends ServiceImpl<ComMngPopulationDAO, ComMngPopulationDO> implements ComMngPopulationService {
@Resource
private ComMngPopulationDAO populationDAO;
@Resource
@@ -119,6 +118,10 @@
private ComDisabilityPopulationDAO comDisabilityPopulationDAO;
@Resource
private ComLowSecurityPopulationDAO comLowSecurityPopulationDAO;
+ @Resource
+ private ComElderAuthElderliesDAO comElderAuthElderliesDAO;
+ @Resource
+ private ComPensionAuthPensionerDAO comPensionAuthPensionerDAO;
@Value("${domain.aesKey:}")
private String aesKey;
@@ -386,6 +389,34 @@
comMngPopulationVO.setComLowSecurityPopulationVOs(comLowSecurityPopulationVOS);
});
}
+
+ // 高龄老人信息
+ List<ComElderAuthElderliesVO> comElderAuthElderliesVOList = new ArrayList<>();
+ List<ComElderAuthElderliesDO> comElderAuthElderliesDOS =
+ comElderAuthElderliesDAO.selectList(new QueryWrapper<ComElderAuthElderliesDO>().lambda()
+ .eq(ComElderAuthElderliesDO::getPopulationId, populationId));
+ if (!comElderAuthElderliesDOS.isEmpty()) {
+ comElderAuthElderliesDOS.forEach(comElderAuthElderliesDO -> {
+ ComElderAuthElderliesVO comElderAuthElderliesVO = new ComElderAuthElderliesVO();
+ BeanUtils.copyProperties(comElderAuthElderliesDO, comElderAuthElderliesVO);
+ comElderAuthElderliesVOList.add(comElderAuthElderliesVO);
+ comMngPopulationVO.setComElderAuthElderliesVOList(comElderAuthElderliesVOList);
+ });
+ }
+
+ // 养老人员信息
+ List<ComPensionAuthPensionerVO> comPensionAuthPensionerVOList = new ArrayList<>();
+ List<ComPensionAuthPensionerDO> comPensionAuthPensionerDOS =
+ comPensionAuthPensionerDAO.selectList(new QueryWrapper<ComPensionAuthPensionerDO>().lambda()
+ .eq(ComPensionAuthPensionerDO::getPopulationId, populationId));
+ if (!comPensionAuthPensionerDOS.isEmpty()) {
+ comPensionAuthPensionerDOS.forEach(comPensionAuthPensionerDO -> {
+ ComPensionAuthPensionerVO comPensionAuthPensionerVO = new ComPensionAuthPensionerVO();
+ BeanUtils.copyProperties(comPensionAuthPensionerDO, comPensionAuthPensionerVO);
+ comPensionAuthPensionerVOList.add(comPensionAuthPensionerVO);
+ comMngPopulationVO.setComPensionAuthPensionerVOList(comPensionAuthPensionerVOList);
+ });
+ }
return R.ok(comMngPopulationVO);
}
@@ -561,7 +592,7 @@
// 查询当前社区标签列表
List<String> labelList = new ArrayList<>();
List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO
- .selectList(new QueryWrapper<ComMngUserTagDO>().eq("sys_flag", 1).or().eq("community_id", communityId));
+ .selectList(null);
if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
labelList = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName())
.collect(Collectors.toList());
@@ -749,8 +780,8 @@
if (!labelList.contains(s))
iterator.remove();
}
- populationDO.setLabel(Joiner.on(",").join(userTag));
- populationDO.setCreateBy(userId);
+ cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ cpopulationCommunityTagsDO.setCreateBy(userId);
savePopulationCommunityList.add(cpopulationCommunityTagsDO);
}else {
// 实有人口存在于当前社区,则更新
@@ -855,7 +886,7 @@
// 查询当前社区标签列表
List<String> labelList = new ArrayList<>();
List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO
- .selectList(new QueryWrapper<ComMngUserTagDO>().eq("sys_flag", 1).or().eq("community_id", communityId));
+ .selectList(null);
if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
labelList = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName())
.collect(Collectors.toList());
@@ -1044,8 +1075,8 @@
if (!labelList.contains(s))
iterator.remove();
}
- populationDO.setLabel(Joiner.on(",").join(userTag));
- populationDO.setCreateBy(userId);
+ cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ cpopulationCommunityTagsDO.setCreateBy(userId);
savePopulationCommunityList.add(cpopulationCommunityTagsDO);
}else {
// 实有人口存在于当前社区,则更新
@@ -1150,7 +1181,7 @@
// 查询当前社区标签列表
List<String> labelList = new ArrayList<>();
List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO
- .selectList(new QueryWrapper<ComMngUserTagDO>().eq("sys_flag", 1).or().eq("community_id", communityId));
+ .selectList(null);
if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
labelList = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName())
.collect(Collectors.toList());
@@ -1339,8 +1370,8 @@
if (!labelList.contains(s))
iterator.remove();
}
- populationDO.setLabel(Joiner.on(",").join(userTag));
- populationDO.setCreateBy(userId);
+ cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ cpopulationCommunityTagsDO.setCreateBy(userId);
savePopulationCommunityList.add(cpopulationCommunityTagsDO);
}else {
// 实有人口存在于当前社区,则更新
@@ -1445,7 +1476,7 @@
// 查询当前社区标签列表
List<String> labelList = new ArrayList<>();
List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO
- .selectList(new QueryWrapper<ComMngUserTagDO>().eq("sys_flag", 1).or().eq("community_id", communityId));
+ .selectList(null);
if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
labelList = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName())
.collect(Collectors.toList());
@@ -1634,8 +1665,8 @@
if (!labelList.contains(s))
iterator.remove();
}
- populationDO.setLabel(Joiner.on(",").join(userTag));
- populationDO.setCreateBy(userId);
+ cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ cpopulationCommunityTagsDO.setCreateBy(userId);
savePopulationCommunityList.add(cpopulationCommunityTagsDO);
}else {
// 实有人口存在于当前社区,则更新
@@ -1740,7 +1771,7 @@
// 查询当前社区标签列表
List<String> labelList = new ArrayList<>();
List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO
- .selectList(new QueryWrapper<ComMngUserTagDO>().eq("sys_flag", 1).or().eq("community_id", communityId));
+ .selectList(null);
if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
labelList = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName())
.collect(Collectors.toList());
@@ -1929,8 +1960,8 @@
if (!labelList.contains(s))
iterator.remove();
}
- populationDO.setLabel(Joiner.on(",").join(userTag));
- populationDO.setCreateBy(userId);
+ cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ cpopulationCommunityTagsDO.setCreateBy(userId);
savePopulationCommunityList.add(cpopulationCommunityTagsDO);
} else {
// 实有人口存在于当前社区,则更新
@@ -2036,7 +2067,7 @@
// 查询当前社区标签列表
List<String> labelList = new ArrayList<>();
List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO
- .selectList(new QueryWrapper<ComMngUserTagDO>().eq("sys_flag", 1).or().eq("community_id", communityId));
+ .selectList(null);
if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
labelList = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName())
.collect(Collectors.toList());
@@ -2226,8 +2257,8 @@
if (!labelList.contains(s))
iterator.remove();
}
- populationDO.setLabel(Joiner.on(",").join(userTag));
- populationDO.setCreateBy(userId);
+ cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ cpopulationCommunityTagsDO.setCreateBy(userId);
savePopulationCommunityList.add(cpopulationCommunityTagsDO);
}else {
// 实有人口存在于当前社区,则更新
@@ -2333,7 +2364,7 @@
// 查询当前社区标签列表
List<String> labelList = new ArrayList<>();
List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO
- .selectList(new QueryWrapper<ComMngUserTagDO>().eq("sys_flag", 1).or().eq("community_id", communityId));
+ .selectList(null);
if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
labelList = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName())
.collect(Collectors.toList());
@@ -2522,8 +2553,8 @@
if (!labelList.contains(s))
iterator.remove();
}
- populationDO.setLabel(Joiner.on(",").join(userTag));
- populationDO.setCreateBy(userId);
+ cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ cpopulationCommunityTagsDO.setCreateBy(userId);
savePopulationCommunityList.add(cpopulationCommunityTagsDO);
}else {
// 实有人口存在于当前社区,则更新
@@ -2628,7 +2659,7 @@
// 查询当前社区标签列表
List<String> labelList = new ArrayList<>();
List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO
- .selectList(new QueryWrapper<ComMngUserTagDO>().eq("sys_flag", 1).or().eq("community_id", communityId));
+ .selectList(null);
if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
labelList = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName())
.collect(Collectors.toList());
@@ -2817,8 +2848,8 @@
if (!labelList.contains(s))
iterator.remove();
}
- populationDO.setLabel(Joiner.on(",").join(userTag));
- populationDO.setCreateBy(userId);
+ cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ cpopulationCommunityTagsDO.setCreateBy(userId);
savePopulationCommunityList.add(cpopulationCommunityTagsDO);
} else {
// 实有人口存在于当前社区,则更新
@@ -2923,7 +2954,7 @@
// 查询当前社区标签列表
List<String> labelList = new ArrayList<>();
List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO
- .selectList(new QueryWrapper<ComMngUserTagDO>().eq("sys_flag", 1).or().eq("community_id", communityId));
+ .selectList(null);
if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
labelList = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName())
.collect(Collectors.toList());
@@ -3112,8 +3143,8 @@
if (!labelList.contains(s))
iterator.remove();
}
- populationDO.setLabel(Joiner.on(",").join(userTag));
- populationDO.setCreateBy(userId);
+ cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ cpopulationCommunityTagsDO.setCreateBy(userId);
savePopulationCommunityList.add(cpopulationCommunityTagsDO);
}else {
// 实有人口存在于当前社区,则更新
@@ -3218,7 +3249,7 @@
// 查询当前社区标签列表
List<String> labelList = new ArrayList<>();
List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO
- .selectList(new QueryWrapper<ComMngUserTagDO>().eq("sys_flag", 1).or().eq("community_id", communityId));
+ .selectList(null);
if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
labelList = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName())
.collect(Collectors.toList());
@@ -3407,8 +3438,8 @@
if (!labelList.contains(s))
iterator.remove();
}
- populationDO.setLabel(Joiner.on(",").join(userTag));
- populationDO.setCreateBy(userId);
+ cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ cpopulationCommunityTagsDO.setCreateBy(userId);
savePopulationCommunityList.add(cpopulationCommunityTagsDO);
} else {
// 实有人口存在于当前社区,则更新
@@ -3518,7 +3549,7 @@
// 查询当前社区标签列表
List<String> labelList = new ArrayList<>();
List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO
- .selectList(new QueryWrapper<ComMngUserTagDO>().eq("sys_flag", 1).or().eq("community_id", communityId));
+ .selectList(null);
if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
labelList = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName())
.collect(Collectors.toList());
@@ -3707,8 +3738,8 @@
if (!labelList.contains(s))
iterator.remove();
}
- populationDO.setLabel(Joiner.on(",").join(userTag));
- populationDO.setCreateBy(userId);
+ cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ cpopulationCommunityTagsDO.setCreateBy(userId);
savePopulationCommunityList.add(cpopulationCommunityTagsDO);
} else {
// 实有人口存在于当前社区,则更新
@@ -3730,6 +3761,604 @@
ComMngPopulationLowSecurityMistakeExcelVO mistake = new ComMngPopulationLowSecurityMistakeExcelVO();
BeanUtils.copyProperties(vo, mistake);
setLowSecurityMistake(mistake, vo);
+ mistake.setMistake("该实有人口已存在于该社区,执行更新");
+ mistakes.add(mistake);
+ }
+ }
+ log.info("查询实有人口存在社区信息完成");
+ }
+ } catch (Exception e) {
+ log.info("出现错误,错误原因:" + e.getMessage());
+ }
+ log.info("处理完成导入数据");
+
+ log.info("开始执行数据库导入");
+ if (!houseList.isEmpty()) {
+ log.info("执行数据库导入房屋");
+ comMngPopulationHouseDAO.insertAll(houseList);
+ log.info("执行数据库导入房屋完成");
+ }
+ if (!saveList.isEmpty()) {
+ log.info("执行数据库导入人口");
+ this.baseMapper.insertAll(saveList);
+ log.info("执行数据库导入人口完成");
+ }
+ if (!updateList.isEmpty()) {
+ log.info("执行数据库更新人口");
+ this.baseMapper.updateAll(updateList);
+ // this.updateBatchById(updateList);
+ log.info("执行数据库更新人口完成");
+ }
+ if (!houseUserList.isEmpty()) {
+ log.info("执行数据库导入人口房屋关系");
+ comMngPopulationHouseUserService.saveBatch(houseUserList);
+ log.info("执行数据库导入人口房屋关系完成");
+ }
+ if (!savePopulationCommunityList.isEmpty()) {
+ log.info("执行数据库导入人口社区关系");
+ comMngPopulationCommunityTagsService.saveBatch(savePopulationCommunityList);
+ log.info("数据库导入人口社区关系完成");
+ }
+ if (!updatePopulationCommunityList.isEmpty()) {
+ log.info("执行数据库更新人口社区关系");
+ comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
+ log.info("数据库更新人口社区关系完成");
+ }
+ log.info("执行数据库导入完成");
+
+ if (!mistakes.isEmpty()) {
+ log.info("返回错误数据");
+ return R.fail(mistakes);
+ }
+ return R.ok(mistakes);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public R listSaveEdlerPopulation(List<ComMngPopulationElderExcelVO> list, Long communityId, Long userId) {
+ // 需要新增的房屋集合
+ List<ComMngPopulationHouseDO> houseList = new ArrayList<>();
+ // 需要新增的人口集合
+ List<ComMngPopulationDO> saveList = new ArrayList<>();
+ // 需要修改的人口集合
+ List<ComMngPopulationDO> updateList = new ArrayList<>();
+ // 需要新增的吸毒人员集合
+ List<ComDrugPopulationDO> saveDrugList = new ArrayList<>();
+ // 需要修改的吸毒人员集合
+ List<ComDrugPopulationDO> updateDrugList = new ArrayList<>();
+ // 需要新增的人口与房屋关系集合
+ List<ComMngPopulationHouseUserDO> houseUserList = new ArrayList<>();
+ // 需要新增的人口与社区关系集合
+ List<ComMngPopulationCommunityTagsDO> savePopulationCommunityList = new ArrayList<>();
+ // 需要新增的人口与社区关系集合
+ List<ComMngPopulationCommunityTagsDO> updatePopulationCommunityList = new ArrayList<>();
+
+ log.info("开始处理导入数据");
+ List<ComMngPopulationElderMistakeExcelVO> mistakes = new ArrayList<>();
+ try {
+ // 查询社区信息
+ log.info("开始查询社区信息数据");
+ ComPopulationActVO populationActVO = comActDAO.getPopulationActById(communityId);
+ if (populationActVO == null) {
+ log.error("未查询到社区信息");
+ return R.fail("未查询到社区信息");
+ }
+ log.info("开始查询社区信息数据完成");
+
+ // 查询当前社区标签列表
+ List<String> labelList = new ArrayList<>();
+ List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO
+ .selectList(null);
+ if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
+ labelList = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName())
+ .collect(Collectors.toList());
+ }
+
+ StringBuilder areaPath = new StringBuilder();
+ areaPath.append(populationActVO.getProvinceName()).append(">").append(populationActVO.getCityName())
+ .append(">").append(populationActVO.getDistrictName()).append(">");
+ // 处理实有人口信息
+ Integer nub = 1;
+
+ // 查询所有人口数据放入HashMap中
+ List<ComMngPopulationDO> populationList = this.baseMapper.selectList(null);
+ HashMap<String, Object> populationMap = new HashMap<>();
+ populationList.forEach(population -> {
+ String key = population.getCardNo();
+ populationMap.put(key, population);
+ });
+ // 查询所有房屋信息放入到HashMap中
+ List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(null);
+ HashMap<String, Object> houseMap = new HashMap<>();
+ houseLists.forEach(house -> {
+ String key = house.getCommunityId() + house.getVillageId() + house.getFloor() + house.getUnitNo()
+ + house.getHouseNo();
+ houseMap.put(key, house);
+ });
+
+ List<ComMngVillageDO> villageList = comActVillageDAO.selectList(null);
+ 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);
+ HashMap<String, Object> houseUserMap = new HashMap<>();
+ houseUserLists.forEach(houseUser -> {
+ String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
+ houseUserMap.put(key, houseUser);
+ });
+
+ List<ComMngPopulationCommunityTagsDO> populationCommunityLists =
+ comMngPopulationCommunityTagsDAO.selectList(null);
+ HashMap<String, Object> populationCommunityMap = new HashMap<>();
+ populationCommunityLists.forEach(populationCommunity -> {
+ String key = populationCommunity.getPopulationId() + populationCommunity.getCommunityId() + "";
+ populationCommunityMap.put(key, populationCommunity);
+ });
+
+ for (ComMngPopulationElderExcelVO vo : list) {
+ if (vo.getDoorNo().contains("号")) {
+ vo.setDoorNo(vo.getDoorNo().replace("号", ""));
+ }
+ if (StringUtils.isNotEmpty(vo.getFloor())) {
+ if (vo.getFloor().contains("栋")) {
+ vo.setFloor(vo.getFloor().replace("栋", ""));
+ }
+ }
+ if (StringUtils.isNotEmpty(vo.getUnitNo())) {
+ if (vo.getUnitNo().contains("单元")) {
+ vo.setUnitNo(vo.getUnitNo().replace("单元", ""));
+ }
+ }
+ if (StringUtils.isNotEmpty(vo.getHouseNo())) {
+ if (vo.getHouseNo().contains("号")) {
+ vo.setHouseNo(vo.getHouseNo().replace("号", ""));
+ }
+ }
+ log.info("开始查询小区街路巷是否存在");
+ // 查询小区街路巷是否存在
+ ComMngVillageDO comMngVillageDO = null;
+ String villageKey = communityId + vo.getRoad() + vo.getDoorNo();
+ if (!isOnly(villageKey, villageMap)) {
+ comMngVillageDO = (ComMngVillageDO)villageMap.get(villageKey);
+ } else {
+ ComMngPopulationElderMistakeExcelVO mistake = new ComMngPopulationElderMistakeExcelVO();
+ BeanUtils.copyProperties(vo, mistake);
+ setElderMistake(mistake, vo);
+ mistake.setMistake("街路巷或小区号不存在,请先在“小区管理”中添加该小区:街路巷:" + vo.getRoad() + ",小区号:" + vo.getDoorNo());
+ mistakes.add(mistake);
+ log.info("未查询到街路巷:" + vo.getRoad() + ",小区号:" + vo.getDoorNo());
+ continue;
+ }
+ StringBuilder address = new StringBuilder();
+ address.append(populationActVO.getProvinceName()).append(populationActVO.getCityName())
+ .append(populationActVO.getDistrictName()).append(populationActVO.getStreetName())
+ .append(comMngVillageDO.getAlley()).append(vo.getDoorNo()).append("号");
+ if (StringUtils.isNotEmpty(vo.getFloor())) {
+ address.append(vo.getFloor()).append("栋");
+ }
+ if (StringUtils.isNotEmpty(vo.getUnitNo())) {
+ address.append(vo.getUnitNo()).append("单元");
+ }
+ if (StringUtils.isNotEmpty(vo.getHouseNo())) {
+ address.append(vo.getHouseNo()).append("号");
+ }
+ vo.setAddress(address.toString());
+ 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 (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("开始查询房屋是否存在完成");
+
+ if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
+ // 空户处理完房屋信息,直接返回
+ continue;
+ }
+ String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
+ // 判断实有人口是否已存在
+ log.info("开始查询实有人口是否已存在");
+ ComMngPopulationDO populationDO = null;
+ String populationKey = vo.getCardNo();
+ if (!isOnly(populationKey, populationMap)) {
+ // 存在实有人口信息,则更新
+ populationDO = (ComMngPopulationDO)populationMap.get(populationKey);
+ ComMngPopulationDO updatePopulationDO =
+ updateElderPopulationDO(vo, populationDO, communityId, userId);
+ updateList.add(updatePopulationDO);
+ } else {
+ // 不存在实有人口,则新增
+ populationDO = saveElderPopulationDO(vo, populationActVO, comMngVillageDO, userId);
+ saveList.add(populationDO);
+ }
+ log.info("开始查询实有人口是否已存在完成");
+
+ log.info("开始查询实有人口房屋居住信息");
+ // 处理实有人口房屋居住信息
+ if (populationDO != null) {
+ ComMngPopulationHouseUserDO populationHouseUserDO = null;
+ String houseUserKey = populationDO.getId() + populationHouseDO.getId() + "";
+ if (isOnly(houseUserKey, houseUserMap)) {
+ populationHouseUserDO = new ComMngPopulationHouseUserDO();
+ populationHouseUserDO.setId(Snowflake.getId());
+ populationHouseUserDO.setHouseId(populationHouseDO.getId());
+ populationHouseUserDO.setPopulId(populationDO.getId());
+ // populationHouseUserDO.setRelation(vo.getRelation());
+ populationHouseUserDO.setRelationId(vo.getIsRent());
+ // populationHouseUserDO.setResidence(vo.getResidence());
+ houseUserList.add(populationHouseUserDO);
+ }
+ }
+ log.info("开始查询实有人口房屋居住信息完成");
+
+ log.info("开始查询实有人口存在社区信息");
+ // 处理实有人口与社区关系以及对应特殊群体标签
+ String populationCommunityKey = populationDO.getId() + populationActVO.getCommunityId() + "";
+ if (populationDO != null) {
+ ComMngPopulationCommunityTagsDO cpopulationCommunityTagsDO = null;
+ if (isOnly(populationCommunityKey, populationCommunityMap)) {
+ // 实有人口不存在于当前社区
+ cpopulationCommunityTagsDO = new ComMngPopulationCommunityTagsDO();
+ cpopulationCommunityTagsDO.setId(Snowflake.getId());
+ cpopulationCommunityTagsDO.setPopulationId(populationDO.getId());
+ cpopulationCommunityTagsDO.setCommunityId(communityId);
+ List<String> userTag = vo.getUserTagStr().stream().map(userTagStr -> userTagStr.split("\\(")[0])
+ .collect(Collectors.toList());
+ // 如果导入数据标签中有当前社区标签列表中不包含的标签,则删除
+ Iterator<String> iterator = userTag.iterator();
+ while (iterator.hasNext()) {
+ String s = iterator.next();
+ if (!labelList.contains(s))
+ iterator.remove();
+ }
+ cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ cpopulationCommunityTagsDO.setCreateBy(userId);
+ savePopulationCommunityList.add(cpopulationCommunityTagsDO);
+ } else {
+ // 实有人口存在于当前社区,则更新
+ ComMngPopulationCommunityTagsDO comMngPopulationCommunityTagsDO =
+ (ComMngPopulationCommunityTagsDO)populationCommunityMap.get(populationCommunityKey);
+ List<String> userTag = vo.getUserTagStr().stream().map(userTagStr -> userTagStr.split("\\(")[0])
+ .collect(Collectors.toList());
+ // 如果导入数据标签中有当前社区标签列表中不包含的标签,则删除
+ Iterator<String> iterator = userTag.iterator();
+ while (iterator.hasNext()) {
+ String s = iterator.next();
+ if (!labelList.contains(s))
+ iterator.remove();
+ }
+ comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ comMngPopulationCommunityTagsDO.setUpdateBy(userId);
+ updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
+
+ ComMngPopulationElderMistakeExcelVO mistake = new ComMngPopulationElderMistakeExcelVO();
+ BeanUtils.copyProperties(vo, mistake);
+ setElderMistake(mistake, vo);
+ mistake.setMistake("该实有人口已存在于该社区,执行更新");
+ mistakes.add(mistake);
+ }
+ }
+ log.info("查询实有人口存在社区信息完成");
+ }
+ } catch (Exception e) {
+ log.info("出现错误,错误原因:" + e.getMessage());
+ }
+ log.info("处理完成导入数据");
+
+ log.info("开始执行数据库导入");
+ if (!houseList.isEmpty()) {
+ log.info("执行数据库导入房屋");
+ comMngPopulationHouseDAO.insertAll(houseList);
+ log.info("执行数据库导入房屋完成");
+ }
+ if (!saveList.isEmpty()) {
+ log.info("执行数据库导入人口");
+ this.baseMapper.insertAll(saveList);
+ log.info("执行数据库导入人口完成");
+ }
+ if (!updateList.isEmpty()) {
+ log.info("执行数据库更新人口");
+ this.baseMapper.updateAll(updateList);
+ // this.updateBatchById(updateList);
+ log.info("执行数据库更新人口完成");
+ }
+ if (!houseUserList.isEmpty()) {
+ log.info("执行数据库导入人口房屋关系");
+ comMngPopulationHouseUserService.saveBatch(houseUserList);
+ log.info("执行数据库导入人口房屋关系完成");
+ }
+ if (!savePopulationCommunityList.isEmpty()) {
+ log.info("执行数据库导入人口社区关系");
+ comMngPopulationCommunityTagsService.saveBatch(savePopulationCommunityList);
+ log.info("数据库导入人口社区关系完成");
+ }
+ if (!updatePopulationCommunityList.isEmpty()) {
+ log.info("执行数据库更新人口社区关系");
+ comMngPopulationCommunityTagsDAO.updateAll(updatePopulationCommunityList);
+ log.info("数据库更新人口社区关系完成");
+ }
+ log.info("执行数据库导入完成");
+
+ if (!mistakes.isEmpty()) {
+ log.info("返回错误数据");
+ return R.fail(mistakes);
+ }
+ return R.ok(mistakes);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public R listSavePensionPopulation(List<ComMngPopulationPensionExcelVO> list, Long communityId, Long userId) {
+ // 需要新增的房屋集合
+ List<ComMngPopulationHouseDO> houseList = new ArrayList<>();
+ // 需要新增的人口集合
+ List<ComMngPopulationDO> saveList = new ArrayList<>();
+ // 需要修改的人口集合
+ List<ComMngPopulationDO> updateList = new ArrayList<>();
+ // 需要新增的吸毒人员集合
+ List<ComDrugPopulationDO> saveDrugList = new ArrayList<>();
+ // 需要修改的吸毒人员集合
+ List<ComDrugPopulationDO> updateDrugList = new ArrayList<>();
+ // 需要新增的人口与房屋关系集合
+ List<ComMngPopulationHouseUserDO> houseUserList = new ArrayList<>();
+ // 需要新增的人口与社区关系集合
+ List<ComMngPopulationCommunityTagsDO> savePopulationCommunityList = new ArrayList<>();
+ // 需要新增的人口与社区关系集合
+ List<ComMngPopulationCommunityTagsDO> updatePopulationCommunityList = new ArrayList<>();
+
+ log.info("开始处理导入数据");
+ List<ComMngPopulationPensionMistakeExcelVO> mistakes = new ArrayList<>();
+ try {
+ // 查询社区信息
+ log.info("开始查询社区信息数据");
+ ComPopulationActVO populationActVO = comActDAO.getPopulationActById(communityId);
+ if (populationActVO == null) {
+ log.error("未查询到社区信息");
+ return R.fail("未查询到社区信息");
+ }
+ log.info("开始查询社区信息数据完成");
+
+ // 查询当前社区标签列表
+ List<String> labelList = new ArrayList<>();
+ List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO
+ .selectList(null);
+ if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
+ labelList = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName())
+ .collect(Collectors.toList());
+ }
+
+ StringBuilder areaPath = new StringBuilder();
+ areaPath.append(populationActVO.getProvinceName()).append(">").append(populationActVO.getCityName())
+ .append(">").append(populationActVO.getDistrictName()).append(">");
+ // 处理实有人口信息
+ Integer nub = 1;
+
+ // 查询所有人口数据放入HashMap中
+ List<ComMngPopulationDO> populationList = this.baseMapper.selectList(null);
+ HashMap<String, Object> populationMap = new HashMap<>();
+ populationList.forEach(population -> {
+ String key = population.getCardNo();
+ populationMap.put(key, population);
+ });
+ // 查询所有房屋信息放入到HashMap中
+ List<ComMngPopulationHouseDO> houseLists = comMngPopulationHouseDAO.selectList(null);
+ HashMap<String, Object> houseMap = new HashMap<>();
+ houseLists.forEach(house -> {
+ String key = house.getCommunityId() + house.getVillageId() + house.getFloor() + house.getUnitNo()
+ + house.getHouseNo();
+ houseMap.put(key, house);
+ });
+
+ List<ComMngVillageDO> villageList = comActVillageDAO.selectList(null);
+ 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);
+ HashMap<String, Object> houseUserMap = new HashMap<>();
+ houseUserLists.forEach(houseUser -> {
+ String key = houseUser.getPopulId() + houseUser.getHouseId() + "";
+ houseUserMap.put(key, houseUser);
+ });
+
+ List<ComMngPopulationCommunityTagsDO> populationCommunityLists =
+ comMngPopulationCommunityTagsDAO.selectList(null);
+ HashMap<String, Object> populationCommunityMap = new HashMap<>();
+ populationCommunityLists.forEach(populationCommunity -> {
+ String key = populationCommunity.getPopulationId() + populationCommunity.getCommunityId() + "";
+ populationCommunityMap.put(key, populationCommunity);
+ });
+
+ for (ComMngPopulationPensionExcelVO vo : list) {
+ if (vo.getDoorNo().contains("号")) {
+ vo.setDoorNo(vo.getDoorNo().replace("号", ""));
+ }
+ if (StringUtils.isNotEmpty(vo.getFloor())) {
+ if (vo.getFloor().contains("栋")) {
+ vo.setFloor(vo.getFloor().replace("栋", ""));
+ }
+ }
+ if (StringUtils.isNotEmpty(vo.getUnitNo())) {
+ if (vo.getUnitNo().contains("单元")) {
+ vo.setUnitNo(vo.getUnitNo().replace("单元", ""));
+ }
+ }
+ if (StringUtils.isNotEmpty(vo.getHouseNo())) {
+ if (vo.getHouseNo().contains("号")) {
+ vo.setHouseNo(vo.getHouseNo().replace("号", ""));
+ }
+ }
+ log.info("开始查询小区街路巷是否存在");
+ // 查询小区街路巷是否存在
+ ComMngVillageDO comMngVillageDO = null;
+ String villageKey = communityId + vo.getRoad() + vo.getDoorNo();
+ if (!isOnly(villageKey, villageMap)) {
+ comMngVillageDO = (ComMngVillageDO)villageMap.get(villageKey);
+ } else {
+ ComMngPopulationPensionMistakeExcelVO mistake = new ComMngPopulationPensionMistakeExcelVO();
+ BeanUtils.copyProperties(vo, mistake);
+ setPensionMistake(mistake, vo);
+ mistake.setMistake("街路巷或小区号不存在,请先在“小区管理”中添加该小区:街路巷:" + vo.getRoad() + ",小区号:" + vo.getDoorNo());
+ mistakes.add(mistake);
+ log.info("未查询到街路巷:" + vo.getRoad() + ",小区号:" + vo.getDoorNo());
+ continue;
+ }
+ StringBuilder address = new StringBuilder();
+ address.append(populationActVO.getProvinceName()).append(populationActVO.getCityName())
+ .append(populationActVO.getDistrictName()).append(populationActVO.getStreetName())
+ .append(comMngVillageDO.getAlley()).append(vo.getDoorNo()).append("号");
+ if (StringUtils.isNotEmpty(vo.getFloor())) {
+ address.append(vo.getFloor()).append("栋");
+ }
+ if (StringUtils.isNotEmpty(vo.getUnitNo())) {
+ address.append(vo.getUnitNo()).append("单元");
+ }
+ if (StringUtils.isNotEmpty(vo.getHouseNo())) {
+ address.append(vo.getHouseNo()).append("号");
+ }
+ vo.setAddress(address.toString());
+ 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 (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("开始查询房屋是否存在完成");
+
+ if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
+ // 空户处理完房屋信息,直接返回
+ continue;
+ }
+ String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
+ // 判断实有人口是否已存在
+ log.info("开始查询实有人口是否已存在");
+ ComMngPopulationDO populationDO = null;
+ String populationKey = vo.getCardNo();
+ if (!isOnly(populationKey, populationMap)) {
+ // 存在实有人口信息,则更新
+ populationDO = (ComMngPopulationDO)populationMap.get(populationKey);
+ ComMngPopulationDO updatePopulationDO =
+ updatePensionPopulationDO(vo, populationDO, communityId, userId);
+ updateList.add(updatePopulationDO);
+ } else {
+ // 不存在实有人口,则新增
+ populationDO = savePensionPopulationDO(vo, populationActVO, comMngVillageDO, userId);
+ saveList.add(populationDO);
+ }
+ log.info("开始查询实有人口是否已存在完成");
+
+ log.info("开始查询实有人口房屋居住信息");
+ // 处理实有人口房屋居住信息
+ if (populationDO != null) {
+ ComMngPopulationHouseUserDO populationHouseUserDO = null;
+ String houseUserKey = populationDO.getId() + populationHouseDO.getId() + "";
+ if (isOnly(houseUserKey, houseUserMap)) {
+ populationHouseUserDO = new ComMngPopulationHouseUserDO();
+ populationHouseUserDO.setId(Snowflake.getId());
+ populationHouseUserDO.setHouseId(populationHouseDO.getId());
+ populationHouseUserDO.setPopulId(populationDO.getId());
+ // populationHouseUserDO.setRelation(vo.getRelation());
+ populationHouseUserDO.setRelationId(vo.getIsRent());
+ // populationHouseUserDO.setResidence(vo.getResidence());
+ houseUserList.add(populationHouseUserDO);
+ }
+ }
+ log.info("开始查询实有人口房屋居住信息完成");
+
+ log.info("开始查询实有人口存在社区信息");
+ // 处理实有人口与社区关系以及对应特殊群体标签
+ String populationCommunityKey = populationDO.getId() + populationActVO.getCommunityId() + "";
+ if (populationDO != null) {
+ ComMngPopulationCommunityTagsDO cpopulationCommunityTagsDO = null;
+ if (isOnly(populationCommunityKey, populationCommunityMap)) {
+ // 实有人口不存在于当前社区
+ cpopulationCommunityTagsDO = new ComMngPopulationCommunityTagsDO();
+ cpopulationCommunityTagsDO.setId(Snowflake.getId());
+ cpopulationCommunityTagsDO.setPopulationId(populationDO.getId());
+ cpopulationCommunityTagsDO.setCommunityId(communityId);
+ List<String> userTag = vo.getUserTagStr().stream().map(userTagStr -> userTagStr.split("\\(")[0])
+ .collect(Collectors.toList());
+ // 如果导入数据标签中有当前社区标签列表中不包含的标签,则删除
+ Iterator<String> iterator = userTag.iterator();
+ while (iterator.hasNext()) {
+ String s = iterator.next();
+ if (!labelList.contains(s))
+ iterator.remove();
+ }
+ cpopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ cpopulationCommunityTagsDO.setCreateBy(userId);
+ savePopulationCommunityList.add(cpopulationCommunityTagsDO);
+ } else {
+ // 实有人口存在于当前社区,则更新
+ ComMngPopulationCommunityTagsDO comMngPopulationCommunityTagsDO =
+ (ComMngPopulationCommunityTagsDO)populationCommunityMap.get(populationCommunityKey);
+ List<String> userTag = vo.getUserTagStr().stream().map(userTagStr -> userTagStr.split("\\(")[0])
+ .collect(Collectors.toList());
+ // 如果导入数据标签中有当前社区标签列表中不包含的标签,则删除
+ Iterator<String> iterator = userTag.iterator();
+ while (iterator.hasNext()) {
+ String s = iterator.next();
+ if (!labelList.contains(s))
+ iterator.remove();
+ }
+ comMngPopulationCommunityTagsDO.setLabel(Joiner.on(",").join(userTag));
+ comMngPopulationCommunityTagsDO.setUpdateBy(userId);
+ updatePopulationCommunityList.add(comMngPopulationCommunityTagsDO);
+
+ ComMngPopulationPensionMistakeExcelVO mistake = new ComMngPopulationPensionMistakeExcelVO();
+ BeanUtils.copyProperties(vo, mistake);
+ setPensionMistake(mistake, vo);
mistake.setMistake("该实有人口已存在于该社区,执行更新");
mistakes.add(mistake);
}
@@ -4212,6 +4841,114 @@
comLowSecurityPopulationDO.setCommunityId(populationDO.getActId());
comLowSecurityPopulationDO.setStreetId(populationDO.getStreetId());
comLowSecurityPopulationDAO.insert(comLowSecurityPopulationDO);
+ }
+ return populationDO;
+ }
+
+ private ComMngPopulationDO updateElderPopulationDO(ComMngPopulationElderExcelVO vo,
+ ComMngPopulationDO populationDO, Long communityId, Long userId) {
+ BeanUtils.copyProperties(vo, populationDO);
+ ComElderAuthElderliesDO comElderAuthElderliesDO =
+ comElderAuthElderliesDAO.selectOne(new QueryWrapper<ComElderAuthElderliesDO>().lambda()
+ .eq(ComElderAuthElderliesDO::getPopulationId, populationDO.getId()));
+ // List<String> userTag = vo.getUserTagStr().stream().map(userTagStr ->
+ // userTagStr.split("\\(")[0]).collect(Collectors.toList());
+ // //如果导入数据标签中有当前社区标签列表中不包含的标签,则删除
+ // Iterator<String> iterator = userTag.iterator();
+ // while (iterator.hasNext()) {
+ // String s = iterator.next();
+ // if (!labelList.contains(s))
+ // iterator.remove();
+ // }
+ String cardNoAES = populationDO.getCardNo();
+ try {
+ cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
+ } catch (Exception e) {
+ log.error("身份证加密失败");
+ }
+ // populationDO.setLabel(Joiner.on(",").join(userTag));
+ populationDO.setActId(communityId);
+ populationDO.setCardNo(cardNoAES);
+ populationDO.setUpdateBy(userId);
+ if (comElderAuthElderliesDO != null) {
+ BeanUtils.copyProperties(vo, comElderAuthElderliesDO);
+ comElderAuthElderliesDO.setIdCard(cardNoAES);
+ comElderAuthElderliesDO.setAddress(vo.getNowAddress());
+ if (StringUtils.isNotEmpty(vo.getBirthday())) {
+ int age = AgeUtils.getAgeFromBirthTimes(vo.getBirthday());
+ if (age >= 80 && age < 90) {
+ comElderAuthElderliesDO.setPersonnelCategory(ComElderAuthElderliesDO.personnelCategory.under90);
+ }else if (age >= 90 && age < 100){
+ comElderAuthElderliesDO.setPersonnelCategory(ComElderAuthElderliesDO.personnelCategory.under100);
+ }else if (age >= 100){
+ comElderAuthElderliesDO.setPersonnelCategory(ComElderAuthElderliesDO.personnelCategory.above100);
+ }
+ }
+ comElderAuthElderliesDAO.updateById(comElderAuthElderliesDO);
+ } else {
+ comElderAuthElderliesDO = new ComElderAuthElderliesDO();
+ BeanUtils.copyProperties(vo, comElderAuthElderliesDO);
+ comElderAuthElderliesDO.setId(Snowflake.getId());
+ comElderAuthElderliesDO.setPopulationId(populationDO.getId());
+ comElderAuthElderliesDO.setCommunityId(populationDO.getActId());
+ comElderAuthElderliesDO.setStreetId(populationDO.getStreetId());
+ comElderAuthElderliesDO.setIdCard(cardNoAES);
+ comElderAuthElderliesDO.setAddress(vo.getNowAddress());
+ if (StringUtils.isNotEmpty(vo.getBirthday())) {
+ int age = AgeUtils.getAgeFromBirthTimes(vo.getBirthday());
+ if (age >= 80 && age < 90) {
+ comElderAuthElderliesDO.setPersonnelCategory(ComElderAuthElderliesDO.personnelCategory.under90);
+ }else if (age >= 90 && age < 100){
+ comElderAuthElderliesDO.setPersonnelCategory(ComElderAuthElderliesDO.personnelCategory.under100);
+ }else if (age >= 100){
+ comElderAuthElderliesDO.setPersonnelCategory(ComElderAuthElderliesDO.personnelCategory.above100);
+ }
+ }
+ comElderAuthElderliesDAO.insert(comElderAuthElderliesDO);
+ }
+ return populationDO;
+ }
+
+ private ComMngPopulationDO updatePensionPopulationDO(ComMngPopulationPensionExcelVO vo,
+ ComMngPopulationDO populationDO, Long communityId, Long userId) {
+ BeanUtils.copyProperties(vo, populationDO);
+ ComPensionAuthPensionerDO comPensionAuthPensionerDO =
+ comPensionAuthPensionerDAO.selectOne(new QueryWrapper<ComPensionAuthPensionerDO>().lambda()
+ .eq(ComPensionAuthPensionerDO::getPopulationId, populationDO.getId()));
+ // List<String> userTag = vo.getUserTagStr().stream().map(userTagStr ->
+ // userTagStr.split("\\(")[0]).collect(Collectors.toList());
+ // //如果导入数据标签中有当前社区标签列表中不包含的标签,则删除
+ // Iterator<String> iterator = userTag.iterator();
+ // while (iterator.hasNext()) {
+ // String s = iterator.next();
+ // if (!labelList.contains(s))
+ // iterator.remove();
+ // }
+ String cardNoAES = populationDO.getCardNo();
+ try {
+ cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
+ } catch (Exception e) {
+ log.error("身份证加密失败");
+ }
+ // populationDO.setLabel(Joiner.on(",").join(userTag));
+ populationDO.setActId(communityId);
+ populationDO.setCardNo(cardNoAES);
+ populationDO.setUpdateBy(userId);
+ if (comPensionAuthPensionerDO != null) {
+ BeanUtils.copyProperties(vo, comPensionAuthPensionerDO);
+ comPensionAuthPensionerDO.setIdCard(cardNoAES);
+ comPensionAuthPensionerDO.setAddress(vo.getNowAddress());
+ comPensionAuthPensionerDAO.updateById(comPensionAuthPensionerDO);
+ } else {
+ comPensionAuthPensionerDO = new ComPensionAuthPensionerDO();
+ BeanUtils.copyProperties(vo, comPensionAuthPensionerDO);
+ comPensionAuthPensionerDO.setId(Snowflake.getId());
+ comPensionAuthPensionerDO.setPopulationId(populationDO.getId());
+ comPensionAuthPensionerDO.setCommunityId(populationDO.getActId());
+ comPensionAuthPensionerDO.setStreetId(populationDO.getStreetId());
+ comPensionAuthPensionerDO.setIdCard(cardNoAES);
+ comPensionAuthPensionerDO.setAddress(vo.getNowAddress());
+ comPensionAuthPensionerDAO.insert(comPensionAuthPensionerDO);
}
return populationDO;
}
@@ -4769,6 +5506,122 @@
return populationDO;
}
+ private ComMngPopulationDO saveElderPopulationDO(ComMngPopulationElderExcelVO vo,
+ ComPopulationActVO comActDO, ComMngVillageDO comMngVillageDO, Long userId) {
+ ComMngPopulationDO populationDO = new ComMngPopulationDO();
+ ComElderAuthElderliesDO comElderAuthElderliesDO = new ComElderAuthElderliesDO();
+ BeanUtils.copyProperties(vo, populationDO);
+ BeanUtils.copyProperties(vo, comElderAuthElderliesDO);
+ Long populationId = Snowflake.getId();
+ populationDO.setId(populationId);
+ comElderAuthElderliesDO.setPopulationId(populationId);
+ // List<String> userTag = vo.getUserTagStr().stream().map(userTagStr ->
+ // userTagStr.split("\\(")[0]).collect(Collectors.toList());
+ //
+ // //如果导入数据标签中有当前社区标签列表中不包含的标签,则删除
+ // Iterator<String> iterator = userTag.iterator();
+ // while (iterator.hasNext()) {
+ // String s = iterator.next();
+ // if (!labelList.contains(s))
+ // iterator.remove();
+ // }
+ populationDO.setVillageId(comMngVillageDO.getVillageId());
+ populationDO.setActId(comActDO.getCommunityId());
+ populationDO.setStreetId(comActDO.getStreetId());
+ // populationDO.setLabel(Joiner.on(",").join(userTag));
+ populationDO.setVillageName(comMngVillageDO.getGroupAt());
+ populationDO.setCardNoStr(vo.getCardNo());
+ populationDO.setUpdateAt(new Date());
+
+ String cardNoAES = populationDO.getCardNo();
+ try {
+ cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
+ } catch (Exception e) {
+ log.error("身份证加密失败");
+ }
+ populationDO.setCardNo(cardNoAES);
+ populationDO.setCreateBy(userId);
+ // 新增的时候默认绑定房屋id
+ // if ((vo.getIsRent() != null && vo.getIsRent().equals(PopulHouseUseEnum.SELF.getCode())) ||
+ // (vo.getIsResidence() != null && vo.getIsResidence().intValue() == 1)) {
+ // populationDO.setHouseId(vo.getHouseId());
+ // }else{
+ // populationDO.setHouseId(null);
+ // }
+
+ // this.baseMapper.insert(populationDO);
+ comElderAuthElderliesDO.setId(Snowflake.getId());
+ comElderAuthElderliesDO.setCommunityId(comActDO.getCommunityId());
+ comElderAuthElderliesDO.setStreetId(comActDO.getStreetId());
+ comElderAuthElderliesDO.setIdCard(cardNoAES);
+ comElderAuthElderliesDO.setAddress(vo.getNowAddress());
+ if (StringUtils.isNotEmpty(vo.getBirthday())) {
+ int age = AgeUtils.getAgeFromBirthTimes(vo.getBirthday());
+ if (age >= 80 && age < 90) {
+ comElderAuthElderliesDO.setPersonnelCategory(ComElderAuthElderliesDO.personnelCategory.under90);
+ }else if (age >= 90 && age < 100){
+ comElderAuthElderliesDO.setPersonnelCategory(ComElderAuthElderliesDO.personnelCategory.under100);
+ }else if (age >= 100){
+ comElderAuthElderliesDO.setPersonnelCategory(ComElderAuthElderliesDO.personnelCategory.above100);
+ }
+ }
+ comElderAuthElderliesDAO.insert(comElderAuthElderliesDO);
+ return populationDO;
+ }
+
+ private ComMngPopulationDO savePensionPopulationDO(ComMngPopulationPensionExcelVO vo,
+ ComPopulationActVO comActDO, ComMngVillageDO comMngVillageDO, Long userId) {
+ ComMngPopulationDO populationDO = new ComMngPopulationDO();
+ ComPensionAuthPensionerDO comPensionAuthPensionerDO = new ComPensionAuthPensionerDO();
+ BeanUtils.copyProperties(vo, populationDO);
+ BeanUtils.copyProperties(vo, comPensionAuthPensionerDO);
+ Long populationId = Snowflake.getId();
+ populationDO.setId(populationId);
+ comPensionAuthPensionerDO.setPopulationId(populationId);
+ // List<String> userTag = vo.getUserTagStr().stream().map(userTagStr ->
+ // userTagStr.split("\\(")[0]).collect(Collectors.toList());
+ //
+ // //如果导入数据标签中有当前社区标签列表中不包含的标签,则删除
+ // Iterator<String> iterator = userTag.iterator();
+ // while (iterator.hasNext()) {
+ // String s = iterator.next();
+ // if (!labelList.contains(s))
+ // iterator.remove();
+ // }
+ populationDO.setVillageId(comMngVillageDO.getVillageId());
+ populationDO.setActId(comActDO.getCommunityId());
+ populationDO.setStreetId(comActDO.getStreetId());
+ // populationDO.setLabel(Joiner.on(",").join(userTag));
+ populationDO.setVillageName(comMngVillageDO.getGroupAt());
+ populationDO.setCardNoStr(vo.getCardNo());
+ populationDO.setUpdateAt(new Date());
+
+ String cardNoAES = populationDO.getCardNo();
+ try {
+ cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
+ } catch (Exception e) {
+ log.error("身份证加密失败");
+ }
+ populationDO.setCardNo(cardNoAES);
+ populationDO.setCreateBy(userId);
+ // 新增的时候默认绑定房屋id
+ // if ((vo.getIsRent() != null && vo.getIsRent().equals(PopulHouseUseEnum.SELF.getCode())) ||
+ // (vo.getIsResidence() != null && vo.getIsResidence().intValue() == 1)) {
+ // populationDO.setHouseId(vo.getHouseId());
+ // }else{
+ // populationDO.setHouseId(null);
+ // }
+
+ // this.baseMapper.insert(populationDO);
+ comPensionAuthPensionerDO.setId(Snowflake.getId());
+ comPensionAuthPensionerDO.setCommunityId(comActDO.getCommunityId());
+ comPensionAuthPensionerDO.setStreetId(comActDO.getStreetId());
+ comPensionAuthPensionerDO.setIdCard(cardNoAES);
+ comPensionAuthPensionerDO.setAddress(vo.getNowAddress());
+ comPensionAuthPensionerDAO.insert(comPensionAuthPensionerDO);
+ return populationDO;
+ }
+
private ComMngPopulationHouseDO savePopulationHouse(ComMngPopulationServeExcelVO vo,
ComMngVillageDO comMngVillageDO, Long communityId, StringBuilder areaPath, String actName) {
// 查询该房屋未建立,执行建立房屋信息
@@ -5242,6 +6095,92 @@
return populationHouseDO;
}
+ private ComMngPopulationHouseDO saveElderPopulationHouse(ComMngPopulationElderExcelVO vo,
+ ComMngVillageDO comMngVillageDO, Long communityId, StringBuilder areaPath, String actName) {
+ // 查询该房屋未建立,执行建立房屋信息
+ ComMngPopulationHouseDO populationHouseDO = new ComMngPopulationHouseDO();
+ populationHouseDO.setId(Snowflake.getId());
+ populationHouseDO.setStreetId(comMngVillageDO.getStreetId());
+ populationHouseDO.setVillageId(comMngVillageDO.getVillageId());
+ populationHouseDO.setAlley(vo.getRoad());
+ populationHouseDO.setHouseNum(vo.getDoorNo());
+ populationHouseDO.setStatus(vo.getIsRent());
+ populationHouseDO.setCommunityId(communityId);
+ populationHouseDO.setFloor(vo.getFloor());
+ populationHouseDO.setUnitNo(vo.getUnitNo());
+ populationHouseDO.setHouseNo(vo.getHouseNo());
+ populationHouseDO.setCode(vo.getHouseNo());
+ populationHouseDO.setAddress(vo.getAddress());
+ populationHouseDO.setUpdateAt(new Date());
+// populationHouseDO.setConstructPurpose(vo.getHousePurpose());
+ StringBuilder housePath = new StringBuilder();
+ housePath.append(populationHouseDO.getAlley()).append(">").append(actName).append(">")
+ .append(comMngVillageDO.getName()).append(">").append(vo.getAddress());
+ populationHouseDO.setPath(areaPath.toString() + housePath.toString());
+ // try {
+ // populationHouseDO.setConstructArea(new BigDecimal(vo.getBuildArea()));
+ // } catch (Exception e) {
+ // }
+
+ if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
+ populationHouseDO.setIsEmpty(PopulIsOksEnum.YES.getCode());
+ }
+ if (vo.getHouseStatus() != null) {
+ populationHouseDO.setStatus(vo.getHouseStatus());
+ }
+ if (vo.getHousePurpose() != null) {
+ populationHouseDO.setPurpose(vo.getHousePurpose());
+ }
+ if (vo.getControlStatus() != null) {
+ populationHouseDO.setControlStatus(vo.getControlStatus());
+ }
+ // comMngPopulationHouseDAO.insert(populationHouseDO);
+ return populationHouseDO;
+ }
+
+ private ComMngPopulationHouseDO savePensionPopulationHouse(ComMngPopulationPensionExcelVO vo,
+ ComMngVillageDO comMngVillageDO, Long communityId, StringBuilder areaPath, String actName) {
+ // 查询该房屋未建立,执行建立房屋信息
+ ComMngPopulationHouseDO populationHouseDO = new ComMngPopulationHouseDO();
+ populationHouseDO.setId(Snowflake.getId());
+ populationHouseDO.setStreetId(comMngVillageDO.getStreetId());
+ populationHouseDO.setVillageId(comMngVillageDO.getVillageId());
+ populationHouseDO.setAlley(vo.getRoad());
+ populationHouseDO.setHouseNum(vo.getDoorNo());
+ populationHouseDO.setStatus(vo.getIsRent());
+ populationHouseDO.setCommunityId(communityId);
+ populationHouseDO.setFloor(vo.getFloor());
+ populationHouseDO.setUnitNo(vo.getUnitNo());
+ populationHouseDO.setHouseNo(vo.getHouseNo());
+ populationHouseDO.setCode(vo.getHouseNo());
+ populationHouseDO.setAddress(vo.getAddress());
+ populationHouseDO.setUpdateAt(new Date());
+// populationHouseDO.setConstructPurpose(vo.getHousePurpose());
+ StringBuilder housePath = new StringBuilder();
+ housePath.append(populationHouseDO.getAlley()).append(">").append(actName).append(">")
+ .append(comMngVillageDO.getName()).append(">").append(vo.getAddress());
+ populationHouseDO.setPath(areaPath.toString() + housePath.toString());
+ // try {
+ // populationHouseDO.setConstructArea(new BigDecimal(vo.getBuildArea()));
+ // } catch (Exception e) {
+ // }
+
+ if (StringUtils.isEmpty(vo.getName()) && StringUtils.isEmpty(vo.getCardNo())) {
+ populationHouseDO.setIsEmpty(PopulIsOksEnum.YES.getCode());
+ }
+ if (vo.getHouseStatus() != null) {
+ populationHouseDO.setStatus(vo.getHouseStatus());
+ }
+ if (vo.getHousePurpose() != null) {
+ populationHouseDO.setPurpose(vo.getHousePurpose());
+ }
+ if (vo.getControlStatus() != null) {
+ populationHouseDO.setControlStatus(vo.getControlStatus());
+ }
+ // comMngPopulationHouseDAO.insert(populationHouseDO);
+ return populationHouseDO;
+ }
+
private ComMngPopulationHouseUserDO savePopulationHouseUser(ComMngPopulationServeExcelVO vo,
ComMngPopulationDO comMngPopulationDO, ComMngPopulationHouseDO comMngPopulationHouseDO) {
// 查询该房屋未建立,执行建立房屋信息
@@ -5586,7 +6525,7 @@
}
ComMngUserTagDO checkCreditCode = comMngUserTagDAO.selectOne(
new QueryWrapper<ComMngUserTagDO>().lambda().eq(ComMngUserTagDO::getTagName, comMngTagVO.getTagName()));
- if (null != checkCreditCode && comMngUserTagDO.getId() != checkCreditCode.getId()) {
+ if (null != checkCreditCode && !comMngUserTagDO.getId().equals(checkCreditCode.getId())) {
return R.fail("该标签已存在,标签名称重复");
}
@@ -5598,8 +6537,7 @@
} else {
// 新增
Integer count = comMngUserTagDAO.selectCount(
- new QueryWrapper<ComMngUserTagDO>().lambda().eq(ComMngUserTagDO::getTagName, comMngTagVO.getTagName())
- .eq(ComMngUserTagDO::getCommunityId, comMngTagVO.getCommunityId()));
+ new QueryWrapper<ComMngUserTagDO>().lambda().eq(ComMngUserTagDO::getTagName, comMngTagVO.getTagName()));
if (count > 0) {
return R.fail("该标签已存在,标签名称重复");
}
@@ -6662,7 +7600,7 @@
mvo.setHouseStatus(PopulHouseStatusEnum.getCnDescByName(vo.getHouseStatus()));
mvo.setHousePurpose(PopulHousePurposeEnum.getCnDescByName(vo.getHousePurpose()));
mvo.setControlStatus(PopulHouseControlStatusEnum.getCnDescByName(vo.getControlStatus()));
- mvo.setCultureLevel(PopulCultureLevelEnum.getCnDescByName(vo.getCultureLevel()));
+// mvo.setCultureLevel(PopulCultureLevelEnum.getCnDescByName(vo.getCultureLevel()));
// mvo.setMarriage(PopulMarriageEnum.getCnDescByName(vo.getMarriage()));
mvo.setOutOrLocal(PopulOutOrLocalEnum.getCnDescByName(vo.getOutOrLocal()));
mvo.setIsCorrectGroup(PopulHouseUseEnum.getCnDescByName(vo.getIsCorrectGroup()));
@@ -6678,7 +7616,7 @@
private void setMajorMistake(ComMngPopulationMajorMistakeExcelVO mvo, ComMngPopulationMajorExcelVO vo) {
// mvo.setPoliticalOutlook(PopulPoliticalOutlookEnum.getCnDescByName(vo.getPoliticalOutlook()));
mvo.setIsRent(PopulHouseUseEnum.getCnDescByName(vo.getIsRent()));
- mvo.setCustodyRelation(PopulRelationEnum.getCnDescByName(vo.getCustodyRelation()));
+// mvo.setCustodyRelation(PopulRelationEnum.getCnDescByName(vo.getCustodyRelation()));
// mvo.setRelation(PopulRelationEnum.getCnDescByName(vo.getRelation()));
mvo.setHouseStatus(PopulHouseStatusEnum.getCnDescByName(vo.getHouseStatus()));
mvo.setHousePurpose(PopulHousePurposeEnum.getCnDescByName(vo.getHousePurpose()));
@@ -6712,7 +7650,7 @@
ComMngPopulationRehabilitationExcelVO vo) {
// mvo.setPoliticalOutlook(PopulPoliticalOutlookEnum.getCnDescByName(vo.getPoliticalOutlook()));
mvo.setIsRent(PopulHouseUseEnum.getCnDescByName(vo.getIsRent()));
- mvo.setPatientRelation(PopulRelationEnum.getCnDescByName(vo.getPatientRelation()));
+// mvo.setPatientRelation(PopulRelationEnum.getCnDescByName(vo.getPatientRelation()));
mvo.setHouseStatus(PopulHouseStatusEnum.getCnDescByName(vo.getHouseStatus()));
mvo.setHousePurpose(PopulHousePurposeEnum.getCnDescByName(vo.getHousePurpose()));
mvo.setControlStatus(PopulHouseControlStatusEnum.getCnDescByName(vo.getControlStatus()));
@@ -6760,7 +7698,7 @@
}
private void setVeteransMistake(ComMngPopulationVeteransMistakeExcelVO mvo, ComMngPopulationVeteransExcelVO vo) {
- mvo.setRegiterNature(PopulRegiterNatureEnum.getCnDescByName(vo.getRegiterNature()));
+// mvo.setRegiterNature(PopulRegiterNatureEnum.getCnDescByName(vo.getRegiterNature()));
mvo.setPoliticalOutlook(PopulPoliticalOutlookEnum.getCnDescByName(vo.getPoliticalOutlook()));
mvo.setIsRent(PopulHouseUseEnum.getCnDescByName(vo.getIsRent()));
// mvo.setPatientRelation(PopulRelationEnum.getCnDescByName(vo.getPatientRelation()));
@@ -6818,6 +7756,40 @@
// mvo.setDeath(PopulOutOrLocalEnum.getCnDescByName(vo.getDeath()));
}
+ private void setElderMistake(ComMngPopulationElderMistakeExcelVO mvo,
+ ComMngPopulationElderExcelVO vo) {
+ mvo.setPoliticalOutlook(PopulPoliticalOutlookEnum.getCnDescByName(vo.getPoliticalOutlook()));
+ mvo.setIsRent(PopulHouseUseEnum.getCnDescByName(vo.getIsRent()));
+ mvo.setHouseStatus(PopulHouseStatusEnum.getCnDescByName(vo.getHouseStatus()));
+ mvo.setHousePurpose(PopulHousePurposeEnum.getCnDescByName(vo.getHousePurpose()));
+ mvo.setControlStatus(PopulHouseControlStatusEnum.getCnDescByName(vo.getControlStatus()));
+ mvo.setCultureLevel(PopulCultureLevelEnum.getCnDescByName(vo.getCultureLevel()));
+ mvo.setMarriage(PopulMarriageEnum.getCnDescByName(vo.getMarriage()));
+ mvo.setOutOrLocal(PopulOutOrLocalEnum.getCnDescByName(vo.getOutOrLocal()));
+ mvo.setIsRegister(PopulHouseUseEnum.getCnDescByName(vo.getIsRegister()));
+ mvo.setIsAlive(PopulHouseUseEnum.getCnDescByName(vo.getIsAlive()));
+ // mvo.setResidence(PopulRelationEnum.getCnDescByName(vo.getResidence()));
+ // mvo.setPersonType(PopulPersonTypeEnum.getCnDescByName(vo.getPersonType()));
+ // mvo.setDeath(PopulOutOrLocalEnum.getCnDescByName(vo.getDeath()));
+ }
+
+ private void setPensionMistake(ComMngPopulationPensionMistakeExcelVO mvo,
+ ComMngPopulationPensionExcelVO vo) {
+ mvo.setPoliticalOutlook(PopulPoliticalOutlookEnum.getCnDescByName(vo.getPoliticalOutlook()));
+ mvo.setIsRent(PopulHouseUseEnum.getCnDescByName(vo.getIsRent()));
+ mvo.setHouseStatus(PopulHouseStatusEnum.getCnDescByName(vo.getHouseStatus()));
+ mvo.setHousePurpose(PopulHousePurposeEnum.getCnDescByName(vo.getHousePurpose()));
+ mvo.setControlStatus(PopulHouseControlStatusEnum.getCnDescByName(vo.getControlStatus()));
+ mvo.setCultureLevel(PopulCultureLevelEnum.getCnDescByName(vo.getCultureLevel()));
+ mvo.setMarriage(PopulMarriageEnum.getCnDescByName(vo.getMarriage()));
+ mvo.setOutOrLocal(PopulOutOrLocalEnum.getCnDescByName(vo.getOutOrLocal()));
+ mvo.setIsRegister(PopulHouseUseEnum.getCnDescByName(vo.getIsRegister()));
+ mvo.setIsAlive(PopulHouseUseEnum.getCnDescByName(vo.getIsAlive()));
+ // mvo.setResidence(PopulRelationEnum.getCnDescByName(vo.getResidence()));
+ // mvo.setPersonType(PopulPersonTypeEnum.getCnDescByName(vo.getPersonType()));
+ // mvo.setDeath(PopulOutOrLocalEnum.getCnDescByName(vo.getDeath()));
+ }
+
/**
* 判重方法
*
--
Gitblit v1.7.1