huanghongfa
2021-07-22 02f18587bd8860b305e2c688e20465be166bb48c
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
@@ -64,6 +64,7 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@@ -297,20 +298,22 @@
                comMngPopulationVO.setAgeEndTime(ageEndTime);
            }
        }
        List<ComMngPopulationVO> news = new ArrayList<>();
        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);
                }
            }
        }
        IPage<ComMngPopulationVO> iPage = populationDAO.pagePopulation(page, comMngPopulationVO);
        if (!iPage.getRecords().isEmpty()) {
            List<String> collect = iPage.getRecords().stream().map(ComMngPopulationVO::getCardNo).collect(Collectors.toList());
            iPage.getRecords().forEach(populDO -> {
                if (StringUtils.isNotEmpty(populDO.getBirthday())) {
                    populDO.setAge(AgeUtils.getAgeFromBirthTimes(populDO.getBirthday()));
                }
                if (!collect.contains(populDO.getCardNo())) {
                    news.add(populDO);
                }
            });
            iPage.setRecords(news);
        }
        return R.ok(iPage);
    }
@@ -425,9 +428,10 @@
//                ComMngPopulationHouseUserDO comMngPopulationHouseUserDO = savePopulationHouseUser(vo, populationDO, populationHouseDO);
            } else {
                //如果存在人口信息,且是自用房,则更新人口默认的房屋信息
                if (vo.getIsRent() != null && vo.getIsRent().equals(PopulHouseUseEnum.SELF.getCode())) {
                    populationDO = updatePopulationDO(vo, populationDO);
                }
//                if (vo.getIsRent() != null && vo.getIsRent().equals(PopulHouseUseEnum.SELF.getCode())) {
//                    populationDO = updatePopulationDO(vo, populationDO);
//                }
                populationDO = updatePopulationDO(vo, populationDO);
            }
            //处理实有人口房屋居住信息
@@ -463,15 +467,16 @@
        UpdateWrapper<ComMngPopulationDO> updateWrapper = new UpdateWrapper<>();
        updateWrapper.eq("id",populationDO.getId());
        ComMngPopulationDO update = new ComMngPopulationDO();
        update.setRoad(vo.getRoad());
        update.setDoorNo(vo.getDoorNo());
        update.setFloor(vo.getFloor());
        update.setUnitNo(vo.getUnitNo());
        update.setHouseNo(vo.getHouseNo());
        update.setHouseId(vo.getHouseId());
        if (StringUtils.isNotEmpty(populationDO.getPhone())) {
            update.setPhone(populationDO.getPhone());
        }
//        update.setRoad(vo.getRoad());
//        update.setDoorNo(vo.getDoorNo());
//        update.setFloor(vo.getFloor());
//        update.setUnitNo(vo.getUnitNo());
//        update.setHouseNo(vo.getHouseNo());
//        update.setHouseId(vo.getHouseId());
//        if (StringUtils.isNotEmpty(populationDO.getPhone())) {
//            update.setPhone(populationDO.getPhone());
//        }
        BeanUtils.copyProperties(vo, update);
        this.baseMapper.update(update,updateWrapper);
        return populationDO;
    }
@@ -721,6 +726,20 @@
    }
    @Override
    public R getPopulationListByVillageId(Long villageId) {
        List<ComMngPopulationDO> list = populationDAO.selectList(new QueryWrapper<ComMngPopulationDO>().eq("village_id", villageId));
        List<ComMngPopulationVO> resultList = new ArrayList<>();
        if (list.size() > 0) {
            list.forEach(populationDO -> {
                ComMngPopulationVO populationVO = new ComMngPopulationVO();
                BeanUtils.copyProperties(populationDO, populationVO);
                resultList.add(populationVO);
            });
        }
        return R.ok(resultList);
    }
    @Override
    public R editPopulation(ComMngPopulationEditDTO vo, Long communityId) throws Exception {
        ComMngPopulationDO populationDO = populationDAO.selectById(vo.getId());
        if (populationDO == null) {