From b200b681bc401bb11c133a79273ba78cb6ebedf8 Mon Sep 17 00:00:00 2001
From: huanghongfa <huanghongfa123456>
Date: 星期五, 30 七月 2021 18:16:37 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java | 110 +++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 91 insertions(+), 19 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 f41c96d..a2ea07c 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
@@ -55,6 +55,7 @@
import com.panzhihua.service_community.service.ComMngPopulationService;
import com.panzhihua.service_community.service.ComMngVillageService;
import com.panzhihua.service_community.service.EventResourceService;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
@@ -64,12 +65,14 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
+import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
/**
* 实有人口Service实现类
*/
+@Slf4j
@Service
public class ComMngPopulationServiceImpl extends ServiceImpl<ComMngPopulationDAO, ComMngPopulationDO> implements ComMngPopulationService {
@Resource
@@ -297,7 +300,21 @@
comMngPopulationVO.setAgeEndTime(ageEndTime);
}
}
-
+ if (comMngPopulationVO.getAgeStartTime() !=null && !"".equals(comMngPopulationVO.getAgeStartTime()) && comMngPopulationVO.getAgeEndTime() !=null && !"".equals(comMngPopulationVO.getAgeEndTime())){
+ if (comMngPopulationVO.getAgeStartTime().equals(comMngPopulationVO.getAgeEndTime())) {
+ Date endAge = DateUtils.stringToDate(comMngPopulationVO.getAgeEndTime(), new SimpleDateFormat("yyyy-MM-dd"));
+ String ageStartTime = DateUtils.getDateFormatString(DateUtils.yearAddNum(endAge, -1), "yyyy-MM-dd");
+ if (StringUtils.isNotEmpty(ageStartTime)) {
+ comMngPopulationVO.setAgeStartTimeEnd(ageStartTime);
+ }
+ } else {
+ Date endAge = DateUtils.stringToDate(comMngPopulationVO.getAgeEndTime(), new SimpleDateFormat("yyyy-MM-dd"));
+ String ageStartTime = DateUtils.getDateFormatString(DateUtils.yearAddNum(endAge, -1), "yyyy-MM-dd");
+ if (StringUtils.isNotEmpty(ageStartTime)) {
+ comMngPopulationVO.setAgeEndTimeEnd(ageStartTime);
+ }
+ }
+ }
IPage<ComMngPopulationVO> iPage = populationDAO.pagePopulation(page, comMngPopulationVO);
if (!iPage.getRecords().isEmpty()) {
iPage.getRecords().forEach(populDO -> {
@@ -346,6 +363,7 @@
@Override
@Transactional(rollbackFor = Exception.class)
public R listSavePopulation(List<ComMngPopulationServeExcelVO> list, Long communityId) throws Exception {
+ List<ComMngPopulationMistakeExcelVO> mistakes = new ArrayList<>();
List<ComMngPopulationImportErrorVO> populationImportErrorVOList = new ArrayList<>();
//查询该社区
ComActDO comActDO = comActDAO.selectById(communityId);
@@ -379,10 +397,15 @@
ComMngVillageDO comMngVillageDO = comActVillageDAO.selectOne(new QueryWrapper<ComMngVillageDO>().eq("alley", vo.getRoad()).eq("house_num", vo.getDoorNo()).eq("community_id", communityId));
if (comMngVillageDO == null) {
ComMngPopulationImportErrorVO importErrorVO = new ComMngPopulationImportErrorVO();
- importErrorVO.setErrorMsg("街路巷或小区号不存在");
+ importErrorVO.setErrorMsg("街路巷或小区号不存在,请先在“小区管理”中添加该小区");
importErrorVO.setErrorPosition("街路巷:" + vo.getRoad() + ",小区号:" + vo.getDoorNo());
populationImportErrorVOList.add(importErrorVO);
// index++;
+ ComMngPopulationMistakeExcelVO mistake = new ComMngPopulationMistakeExcelVO();
+ BeanUtils.copyProperties(vo,mistake);
+ setMistake(mistake, vo);
+ mistake.setMistake("街路巷或小区号不存在,请先在“小区管理”中添加该小区:街路巷:"+ vo.getRoad() +",小区号:" + vo.getDoorNo());
+ mistakes.add(mistake);
continue;
}
@@ -422,7 +445,7 @@
// if (vo.getIsRent() != null && vo.getIsRent().equals(PopulHouseUseEnum.SELF.getCode())) {
// populationDO = updatePopulationDO(vo, populationDO);
// }
- populationDO = updatePopulationDO(vo, populationDO);
+ populationDO = updatePopulationDO(vo, comActDO, populationDO);
}
//处理实有人口房屋居住信息
@@ -437,6 +460,7 @@
populationHouseUserDO.setPopulId(populationDO.getId());
populationHouseUserDO.setRelation(vo.getRelation());
populationHouseUserDO.setRelationId(vo.getIsRent());
+ populationHouseUserDO.setResidence(vo.getResidence());
comMngPopulationHouseUserDAO.insert(populationHouseUserDO);
}
}
@@ -449,12 +473,12 @@
this.saveBatch(populationDOList);*/
if (!populationImportErrorVOList.isEmpty()) {
- return R.fail(JSON.toJSONString(populationImportErrorVOList));
+ return R.fail(mistakes,JSON.toJSONString(populationImportErrorVOList));
}
return R.ok();
}
- private ComMngPopulationDO updatePopulationDO(ComMngPopulationServeExcelVO vo, ComMngPopulationDO populationDO) throws Exception {
+ private ComMngPopulationDO updatePopulationDO(ComMngPopulationServeExcelVO vo, ComActDO comActDO, ComMngPopulationDO populationDO) throws Exception {
UpdateWrapper<ComMngPopulationDO> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("id",populationDO.getId());
ComMngPopulationDO update = new ComMngPopulationDO();
@@ -467,7 +491,24 @@
// if (StringUtils.isNotEmpty(populationDO.getPhone())) {
// update.setPhone(populationDO.getPhone());
// }
+ String cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
BeanUtils.copyProperties(vo, update);
+ List<String> userTag = vo.getUserTagStr().stream().map(userTagStr -> userTagStr.split("\\(")[0]).collect(Collectors.toList());
+ //查询当前社区标签列表
+ List<String> list = new ArrayList<>();
+ List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO.selectList(new QueryWrapper<ComMngUserTagDO>().eq("sys_flag", 1).or().eq("community_id", comActDO.getCommunityId()));
+ if (!ObjectUtils.isEmpty(comMngUserTagDOS)) {
+ list = comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName()).collect(Collectors.toList());
+ }
+ //如果导入数据标签中有当前社区标签列表中不包含的标签,则删除
+ Iterator<String> iterator = userTag.iterator();
+ while (iterator.hasNext()) {
+ String s = iterator.next();
+ if (!list.contains(s))
+ iterator.remove();
+ }
+ update.setLabel(Joiner.on(",").join(userTag));
+ update.setCardNo(cardNoAES);
this.baseMapper.update(update,updateWrapper);
return populationDO;
}
@@ -777,8 +818,12 @@
populationHouseUserDO.setId(Snowflake.getId());
populationHouseUserDO.setPopulId(populationDO.getId());
populationHouseUserDO.setHouseId(houseEditDto.getId());
+ populationHouseUserDO.setRelation(houseEditDto.getRelation());
if (houseEditDto.getIsResidence().equals(ComMngPopulationHouseEditDTO.isResidence.yes)) {
houseId = houseEditDto.getId();//居住地
+ populationHouseUserDO.setResidence(ComMngPopulationHouseEditDTO.isResidence.yes);
+ }else {
+ populationHouseUserDO.setResidence(ComMngPopulationHouseEditDTO.isResidence.no);
}
populationHouseUserDOList.add(populationHouseUserDO);
@@ -808,19 +853,19 @@
}
}
- ComMngPopulationHouseUserDO comMngPopulationHouseUserDO = comMngPopulationHouseUserDAO.selectOne(new QueryWrapper<ComMngPopulationHouseUserDO>().lambda()
- .eq(ComMngPopulationHouseUserDO::getPopulId, vo.getId()));
- if (comMngPopulationHouseUserDO != null) {
- comMngPopulationHouseUserDO.setRelation(vo.getRelation());
- comMngPopulationHouseUserDAO.updateById(comMngPopulationHouseUserDO);
- }else {
- comMngPopulationHouseUserDO = new ComMngPopulationHouseUserDO();
- comMngPopulationHouseUserDO.setId(Snowflake.getId());
- comMngPopulationHouseUserDO.setPopulId(vo.getId());
- comMngPopulationHouseUserDO.setRelation(vo.getRelation());
- comMngPopulationHouseUserDO.setCreateAt(new Date());
- comMngPopulationHouseUserDAO.insert(comMngPopulationHouseUserDO);
- }
+// ComMngPopulationHouseUserDO comMngPopulationHouseUserDO = comMngPopulationHouseUserDAO.selectOne(new QueryWrapper<ComMngPopulationHouseUserDO>().lambda()
+// .eq(ComMngPopulationHouseUserDO::getPopulId, vo.getId()));
+// if (comMngPopulationHouseUserDO != null) {
+// comMngPopulationHouseUserDO.setRelation(vo.getRelation());
+// comMngPopulationHouseUserDAO.updateById(comMngPopulationHouseUserDO);
+// }else {
+// comMngPopulationHouseUserDO = new ComMngPopulationHouseUserDO();
+// comMngPopulationHouseUserDO.setId(Snowflake.getId());
+// comMngPopulationHouseUserDO.setPopulId(vo.getId());
+// comMngPopulationHouseUserDO.setRelation(vo.getRelation());
+// comMngPopulationHouseUserDO.setCreateAt(new Date());
+// comMngPopulationHouseUserDAO.insert(comMngPopulationHouseUserDO);
+// }
if (populationDAO.updateById(populationDO) > 0) {
return R.ok();
} else {
@@ -1233,7 +1278,11 @@
villageStatisticsList.forEach(village -> {
CivilVillageStatisticsVO villageStatisticsVO = this.baseMapper.getCivilScreenVillageStatistics(village.getVillageId());
if(villageStatisticsVO != null){
- BeanUtils.copyProperties(villageStatisticsVO,village);
+ village.setPeopleNum(villageStatisticsVO.getPeopleNum());
+ village.setHouseNum(villageStatisticsVO.getHouseNum());
+ village.setRegisterNum(villageStatisticsVO.getRegisterNum());
+ village.setFlowNum(villageStatisticsVO.getFlowNum());
+// BeanUtils.copyProperties(villageStatisticsVO,village);
}
});
}
@@ -1694,6 +1743,14 @@
*/
@Override
public R getGridPopulationAdminList(ComMngPopulationListDTO populationListDTO){
+ if(StringUtils.isNotEmpty(populationListDTO.getKeyWord())){
+ try {
+ populationListDTO.setCardNo(AESUtil.encrypt128(populationListDTO.getKeyWord(),aesKey));
+ }catch (Exception e){
+ log.error("转换身份证号码失败");
+ }
+ }
+
IPage<ComMngPopulationListVO> populationListIPage = this.baseMapper.getGridPopulationAdminList(new Page(populationListDTO.getPageNum(),populationListDTO.getPageSize()),populationListDTO);
if(!populationListIPage.getRecords().isEmpty()){
populationListIPage.getRecords().forEach(population -> {
@@ -1857,4 +1914,19 @@
return R.ok(this.baseMapper.getVillagePopulationAdmin(new Page(villagePopulationDTO.getPageNum(),villagePopulationDTO.getPageSize()),villagePopulationDTO));
}
+ private void setMistake(ComMngPopulationMistakeExcelVO mvo, ComMngPopulationServeExcelVO vo){
+ mvo.setPoliticalOutlook(PopulPoliticalOutlookEnum.getCnDescByName(vo.getPoliticalOutlook()));
+ mvo.setIsRent(PopulHouseUseEnum.getCnDescByName(vo.getIsRent()));
+ mvo.setRelation(PopulRelationEnum.getCnDescByName(vo.getRelation()));
+ 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.setResidence(PopulRelationEnum.getCnDescByName(vo.getResidence()));
+ mvo.setPersonType(PopulPersonTypeEnum.getCnDescByName(vo.getPersonType()));
+ mvo.setDeath(PopulOutOrLocalEnum.getCnDescByName(vo.getDeath()));
+ }
+
}
\ No newline at end of file
--
Gitblit v1.7.1