罗元桥
2021-07-16 151bfa7ab112a0675f4ca48cc414f4398b30cd0d
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
@@ -180,6 +180,15 @@
//        if (!comMngFamilyInfoVOS.isEmpty()) {
//            comMngPopulationVO.setComMngFamilyInfoVOS(comMngFamilyInfoVOS);
//        }
        //设置户主关系
        List<ComMngPopulationHouseUserDO> comMngPopulationHouseUserDOS = comMngPopulationHouseUserDAO.selectList((new QueryWrapper<ComMngPopulationHouseUserDO>().lambda().eq(ComMngPopulationHouseUserDO::getPopulId, populationId)));
        if (!comMngPopulationHouseUserDOS.isEmpty()) {
            comMngPopulationVO.setRelation(comMngPopulationHouseUserDOS.get(comMngPopulationHouseUserDOS.size() - 1).getRelation());
        }
        //设置年龄
        if (StringUtils.isNotEmpty(comMngPopulationVO.getBirthday())) {
            comMngPopulationVO.setAge(AgeUtils.getAgeFromBirthTimes(comMngPopulationVO.getBirthday()));
        }
        //查询当前用户电子档信息
        if (!StringUtils.isEmpty(comMngPopulationDO.getCardNo())) {
@@ -398,6 +407,7 @@
            if (populationDO == null) {
                //不存在实有人口,则新增
                populationDO = savePopulationDO(vo, comActDO, comMngVillageDO);
                ComMngPopulationHouseUserDO comMngPopulationHouseUserDO = savePopulationHouseUser(vo, populationDO, populationHouseDO);
            } else {
                //如果存在人口信息,且是自用房,则更新人口默认的房屋信息
                if (vo.getIsRent() != null && vo.getIsRent().equals(PopulHouseUseEnum.SELF.getCode())) {
@@ -514,6 +524,19 @@
        }
        comMngPopulationHouseDAO.insert(populationHouseDO);
        return populationHouseDO;
    }
    private ComMngPopulationHouseUserDO savePopulationHouseUser(ComMngPopulationServeExcelVO vo, ComMngPopulationDO comMngPopulationDO, ComMngPopulationHouseDO comMngPopulationHouseDO) {
        //查询该房屋未建立,执行建立房屋信息
        ComMngPopulationHouseUserDO populationHouseUserDO = new ComMngPopulationHouseUserDO();
        populationHouseUserDO.setId(Snowflake.getId());
        populationHouseUserDO.setPopulId(comMngPopulationDO.getId());
        populationHouseUserDO.setHouseId(comMngPopulationHouseDO.getId());
        populationHouseUserDO.setRelationId(comMngPopulationHouseDO.getStatus());
        populationHouseUserDO.setRelation(vo.getRelation());
        populationHouseUserDO.setCreateAt(new Date());
        comMngPopulationHouseUserDAO.insert(populationHouseUserDO);
        return populationHouseUserDO;
    }
    /**
@@ -713,6 +736,7 @@
        if (!vo.getHouseEditDTOList().isEmpty()) {
            for (ComMngPopulationHouseEditDTO houseEditDto : vo.getHouseEditDTOList()) {
                ComMngPopulationHouseUserDO populationHouseUserDO = new ComMngPopulationHouseUserDO();
                populationHouseUserDO.setId(Snowflake.getId());
                populationHouseUserDO.setPopulId(populationDO.getId());
                populationHouseUserDO.setHouseId(houseEditDto.getId());
                if (houseEditDto.getIsResidence().equals(ComMngPopulationHouseEditDTO.isResidence.yes)) {
@@ -745,7 +769,20 @@
                }
            }
        }
        populationDO.setUpdateAt(new Date());
        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 {