From 9610d41c8e60965d7f444a6204a1f0b149a77e64 Mon Sep 17 00:00:00 2001 From: xyh <18782104331@139.com> Date: 星期三, 30 六月 2021 16:45:00 +0800 Subject: [PATCH] 实有人口导入模板增加是否为居住地字段 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java | 71 +++++++++++++++++++++-------------- 1 files changed, 42 insertions(+), 29 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 e61689a..1d19ba7 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 @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -337,8 +338,19 @@ areaPath.append(areaAddressVO.getProvince()).append(">").append(areaAddressVO.getCity()).append(">").append(areaAddressVO.getDistrict()).append(">"); //处理实有人口信息 for (ComMngPopulationServeExcelVO vo : list) { - String address = ""; - //查询街路巷是否存在 + if (vo.getDoorNo().contains("号")) { + vo.setDoorNo(vo.getDoorNo().replace("号","")); + } + if(vo.getFloor().contains("栋")){ + vo.setFloor(vo.getFloor().replace("栋","")); + } + if(vo.getUnitNo().contains("单元")){ + vo.setUnitNo(vo.getUnitNo().replace("单元","")); + } + if(vo.getHouseNo().contains("号")){ + vo.setHouseNo(vo.getHouseNo().replace("号","")); + } + //查询小区街路巷是否存在 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(); @@ -349,14 +361,12 @@ continue; } - if (!comMngVillageDO.getHouseNum().contains("号")) { - comMngVillageDO.setHouseNum(comMngVillageDO.getHouseNum() + "号"); - } + StringBuilder address = new StringBuilder(); + address.append(areaAddressVO.getProvince()).append(areaAddressVO.getCity()).append(areaAddressVO.getDistrict()) + .append(streetName).append(comMngVillageDO.getAlley()).append(vo.getDoorNo()).append("号").append(vo.getFloor()).append("栋") + .append(vo.getUnitNo()).append("单元").append(vo.getHouseNo()).append("号"); - address = areaAddressVO.getProvince() + areaAddressVO.getCity() - + areaAddressVO.getDistrict() + streetName + comMngVillageDO.getAlley() + comMngVillageDO.getHouseNum() - + vo.getFloor() + vo.getUnitNo() + vo.getHouseNo(); - vo.setAddress(address); + vo.setAddress(address.toString()); //todo 后期优化改为批量 //先判断房屋是否存在 @@ -366,7 +376,7 @@ .eq(ComMngPopulationHouseDO::getHouseNo, vo.getHouseNo())); if (populationHouseDO == null) { //房屋信息不存在建立房屋信息 - populationHouseDO = savePopulationHouse(vo, comMngVillageDO, communityId, address, areaPath, comActDO.getName()); + populationHouseDO = savePopulationHouse(vo, comMngVillageDO, communityId, areaPath, comActDO.getName()); vo.setHouseId(populationHouseDO.getId()); } @@ -382,8 +392,9 @@ //不存在实有人口,则新增 populationDO = savePopulationDO(vo, comActDO, comMngVillageDO); } else { - //如果存在人口信息,且是自用房,则更新人口默认的房屋信息 - if (vo.getIsRent() != null && vo.getIsRent().equals(PopulHouseUseEnum.SELF.getCode())) { + //如果存在人口信息,且是自用房或是居住地,则更新人口默认的房屋信息 + if ((vo.getIsRent() != null && vo.getIsRent().equals(PopulHouseUseEnum.SELF.getCode())) || + (vo.getIsResidence() != null && vo.getIsResidence().intValue() == 1)) { populationDO = updatePopulationDO(vo, populationDO); } } @@ -418,20 +429,19 @@ } private ComMngPopulationDO updatePopulationDO(ComMngPopulationServeExcelVO vo, ComMngPopulationDO populationDO) throws Exception { - populationDO.setRoad(vo.getRoad()); - populationDO.setDoorNo(vo.getDoorNo()); - populationDO.setFloor(vo.getFloor()); - populationDO.setUnitNo(vo.getUnitNo()); - populationDO.setHouseNo(vo.getHouseNo()); - populationDO.setCardNo(vo.getCardNo()); - populationDO.setCardNoStr(vo.getCardNo()); - if(vo.getIsResidence().intValue() == 1){ - populationDO.setHouseId(vo.getHouseId()); - } + 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())) { - populationDO.setPhone(populationDO.getPhone()); + update.setPhone(populationDO.getPhone()); } - this.baseMapper.updateById(populationDO); + this.baseMapper.update(update,updateWrapper); return populationDO; } @@ -445,17 +455,20 @@ populationDO.setStreetId(comActDO.getStreetId()); populationDO.setLabel(Joiner.on(",").join(userTag)); populationDO.setVillageName(comMngVillageDO.getGroupAt()); - populationDO.setCardNo(vo.getCardNo()); populationDO.setCardNoStr(vo.getCardNo()); populationDO.setUpdateAt(new Date()); - if(vo.getIsResidence().intValue() == 1){ + 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); return populationDO; } - private ComMngPopulationHouseDO savePopulationHouse(ComMngPopulationServeExcelVO vo, ComMngVillageDO comMngVillageDO, Long communityId, String address, StringBuilder areaPath, String actName) { + private ComMngPopulationHouseDO savePopulationHouse(ComMngPopulationServeExcelVO vo, ComMngVillageDO comMngVillageDO, Long communityId,StringBuilder areaPath, String actName) { //查询该房屋未建立,执行建立房屋信息 ComMngPopulationHouseDO populationHouseDO = new ComMngPopulationHouseDO(); populationHouseDO.setId(Snowflake.getId()); @@ -469,11 +482,11 @@ populationHouseDO.setUnitNo(vo.getUnitNo()); populationHouseDO.setHouseNo(vo.getHouseNo()); populationHouseDO.setCode(vo.getHouseNo()); - populationHouseDO.setAddress(address); + populationHouseDO.setAddress(vo.getAddress()); populationHouseDO.setUpdateAt(new Date()); populationHouseDO.setConstructPurpose(vo.getBuildPurpose()); StringBuilder housePath = new StringBuilder(); - housePath.append(populationHouseDO.getAlley()).append(">").append(actName).append(">").append(comMngVillageDO.getName()).append(">").append(address); + 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())); -- Gitblit v1.7.1