| | |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import liquibase.pro.packaged.P; |
| | | import liquibase.pro.packaged.W; |
| | | import liquibase.repackaged.org.apache.commons.lang3.StringUtils; |
| | | import org.apache.logging.log4j.util.Strings; |
| | |
| | | import org.springblade.modules.house.service.IHouseholdService; |
| | | import org.springblade.modules.house.vo.HouseholdVO; |
| | | import org.springblade.modules.label.entity.LabelEntity; |
| | | import org.springblade.modules.partyOrganization.vo.PartyOrganizationVO; |
| | | import org.springblade.modules.place.entity.*; |
| | | import org.springblade.modules.place.excel.NinePlaceExcel; |
| | | import org.springblade.modules.place.excel.PlaceAndRelExcel; |
| | |
| | | placeVO.setPrincipal(placeVO.getPrincipal()); |
| | | placeVO.setPrincipalPhone(placeVO.getPrincipalPhone()); |
| | | //根据手机号查询库里的数据 |
| | | User userParams = new User(); |
| | | userParams.setPhone(placeVO.getPrincipalPhone()); |
| | | userParams.setIsDeleted(0); |
| | | User user = userService.getOne(Condition.getQueryWrapper(userParams)); |
| | | if (null == user) { |
| | | User userParams1 = new User(); |
| | | userParams1.setAccount(placeVO.getPrincipalPhone()); |
| | | userParams1.setIsDeleted(0); |
| | | user = userService.getOne(Condition.getQueryWrapper(userParams1)); |
| | | } |
| | | |
| | | if (null != user) { |
| | | List<User> list = userService.getUserListByPhoneOrAccount(placeVO.getPrincipalPhone()); |
| | | if (list.size()>0) { |
| | | User user = list.get(0); |
| | | //如果用户存在,则该用户id绑定场所 |
| | | placeVO.setPrincipalUserId(user.getId()); |
| | | newUser = user; |
| | |
| | | if (null == one) { |
| | | Long userId = updateUser(placeExcel); |
| | | // 插入场所 |
| | | PlaceEntity placeEntity = new PlaceEntity(); |
| | | placeEntity.setHouseCode(placeExcel.getHouseCode()); |
| | | PlaceVO placeEntity = new PlaceVO(); |
| | | String[] split = placeExcel.getHouseCode().split(","); |
| | | placeEntity.setHouseCode(split[0]); |
| | | placeEntity.setHouseCodeBinds(placeExcel.getHouseCode()); |
| | | placeEntity.setPrincipalUserId(userId); |
| | | placeEntity.setPrincipal(placeExcel.getName()); |
| | | placeEntity.setPrincipalPhone(placeExcel.getPhoneNumber()); |
| | |
| | | placeEntity.setCreateUser(AuthUtil.getUserId()); |
| | | placeEntity.setUpdateTime(new Date()); |
| | | placeEntity.setUpdateUser(AuthUtil.getUserId()); |
| | | //一个一个插入,防止同一个表中有相同的数据 |
| | | // 默认为未完善 |
| | | placeEntity.setStatus(1); |
| | | // 是否现场采集 1:是 2:否 |
| | | placeEntity.setIsScene(1); |
| | | // 来源 1:地址总表 2:国控采集 3:商超 |
| | | if (!Strings.isBlank(placeExcel.getHouseCode())) { |
| | | placeEntity.setSource(1); |
| | | }else { |
| | | placeEntity.setSource(2); |
| | | // 并生成36位的houseCode |
| | | placeEntity.setHouseCode(IdUtils.getIdBy36()); |
| | | } |
| | | // 九小场所类型处理 |
| | | if (!Strings.isBlank(placeExcel.getNineType())) { |
| | | placeEntity.setIsNine(1); |
| | | placeEntity.setNineType(Integer.parseInt(placeExcel.getNineType())); |
| | | } |
| | | // 网格绑定处理 |
| | | importGridHandle(placeExcel,placeEntity); |
| | | // 新增 |
| | | save(placeEntity); |
| | | // 保存详情 |
| | | savePlaceExtAndTaskInfo(placeEntity); |
| | | // 场所标签信息处理 |
| | | if (!Strings.isBlank(placeExcel.getLabelCode())) { |
| | | PlaceVO placeVO = new PlaceVO(); |
| | | placeVO.setId(placeEntity.getId()); |
| | | placeVO.setLabel(placeExcel.getLabelCode()); |
| | | // 处理 |
| | | placeLabelBind(placeVO); |
| | | } |
| | | // 房屋编号绑定处理 |
| | | houseCodeBindHandle(placeEntity); |
| | | }else { |
| | | // 更新 |
| | | Long userId = updateUser(placeExcel); |
| | | // 插入场所 |
| | | PlaceVO placeEntity = new PlaceVO(); |
| | | placeEntity.setId(one.getId()); |
| | | placeEntity.setHouseCode(placeExcel.getHouseCode()); |
| | | placeEntity.setHouseCodeBinds(placeExcel.getHouseCode()); |
| | | placeEntity.setPrincipalUserId(userId); |
| | | placeEntity.setPrincipal(placeExcel.getName()); |
| | | placeEntity.setPrincipalPhone(placeExcel.getPhoneNumber()); |
| | | placeEntity.setCreateTime(new Date()); |
| | | placeEntity.setCreateUser(AuthUtil.getUserId()); |
| | | placeEntity.setUpdateTime(new Date()); |
| | | placeEntity.setUpdateUser(AuthUtil.getUserId()); |
| | | // 默认为未完善 |
| | | placeEntity.setStatus(1); |
| | | // 是否现场采集 1:是 2:否 |
| | | placeEntity.setIsScene(1); |
| | | // 来源 1:地址总表 2:国控采集 3:商超 |
| | | placeEntity.setSource(1); |
| | | // 九小场所类型处理 |
| | | if (!Strings.isBlank(placeExcel.getNineType())) { |
| | | placeEntity.setIsNine(1); |
| | | placeEntity.setNineType(Integer.parseInt(placeExcel.getNineType())); |
| | | } |
| | | // 网格绑定处理 |
| | | importGridHandle(placeExcel,placeEntity); |
| | | // 更新 |
| | | updateById(placeEntity); |
| | | // 场所标签信息处理 |
| | | if (!Strings.isBlank(placeExcel.getLabelCode())) { |
| | | PlaceVO placeVO = new PlaceVO(); |
| | | placeVO.setId(placeEntity.getId()); |
| | | placeVO.setLabel(placeExcel.getLabelCode()); |
| | | // 处理 |
| | | placeLabelBind(placeVO); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 导入是网格数据绑定处理 |
| | | * @param placeExcel |
| | | * @param placeEntity |
| | | */ |
| | | private void importGridHandle(PlaceExcel placeExcel, PlaceVO placeEntity) { |
| | | if (!Strings.isBlank(placeExcel.getCommunityName()) && |
| | | !Strings.isBlank(placeExcel.getGridName())){ |
| | | // 查询对应的网格信息 |
| | | GridEntity gridEntity = gridService.getGridInfoByParam(placeExcel.getCommunityName(),placeExcel.getGridName()); |
| | | if (null!=gridEntity){ |
| | | // 设置场所范围 |
| | | placeEntity.setGridId(gridEntity.getId()); |
| | | placeEntity.setGridCode(gridEntity.getGridCode()); |
| | | // 更新网格范围绑定 |
| | | GridRangeEntity gridRangeEntity = new GridRangeEntity(); |
| | | gridRangeEntity.setGridId(gridEntity.getId()); |
| | | gridRangeEntity.setGridCode(gridEntity.getGridCode()); |
| | | gridRangeEntity.setHouseCode(placeEntity.getHouseCode()); |
| | | UpdateWrapper<GridRangeEntity> updateWrapper = new UpdateWrapper<>(); |
| | | updateWrapper.eq("house_code",placeEntity.getHouseCode()); |
| | | gridRangeService.update(gridRangeEntity,updateWrapper); |
| | | } |
| | | } |
| | | } |
| | |
| | | if (!Strings.isBlank(placeExcel.getPhoneNumber()) && |
| | | !Strings.isBlank(placeExcel.getName())) { |
| | | PlaceVO placeVO = new PlaceVO(); |
| | | placeVO.setPhone(placeExcel.getPhoneNumber()); |
| | | placeVO.setUsername(placeExcel.getName()); |
| | | placeVO.setPrincipal(placeExcel.getPhoneNumber()); |
| | | placeVO.setPrincipalPhone(placeExcel.getName()); |
| | | // 更新场所负责人 |
| | | User user = bindUserHandle(placeVO); |
| | | // 返回 |
| | |
| | | |
| | | @Override |
| | | public List<NinePlaceExcel> export(PlaceVO place) { |
| | | String roleName = SpringUtils.getRequestParam("roleName"); |
| | | String communityCode = SpringUtils.getRequestParam("communityCode"); |
| | | if (!Strings.isBlank(communityCode)) { |
| | | // 校验社区编号是否合规 |
| | | if (null != SpringUtils.getBean(IRegionService.class).getById(communityCode)) { |
| | | place.setCommunityCode(communityCode); |
| | | } |
| | | } |
| | | List<String> regionChildCodesList = SysCache.getRegionChildCodesByDeptId(AuthUtil.getDeptId()); |
| | | Integer isAdministrator = AuthUtil.isAdministrator() == true ? 1 : 2; |
| | | // 网格编号集合 |
| | | List<String> gridCodeList = new ArrayList<>(); |
| | | // 民警角色 |
| | | if (!Strings.isBlank(roleName)) { |
| | | place.setRoleName(roleName); |
| | | if (roleName.equals("mj")) { |
| | | regionChildCodesList = SpringUtil.getBean(IPoliceAffairsGridService.class).getCommunityCodeListByUserId(AuthUtil.getUserId()); |
| | | } |
| | | if (roleName.equals("wgy")) { |
| | | gridCodeList = SpringUtil.getBean(IGridService.class).getGridListByUserId(AuthUtil.getUserId()); |
| | | } |
| | | } |
| | | CommonParamSet commonParamSet = new CommonParamSet<>().invoke(PlaceVO.class, place); |
| | | List<String> strings = new ArrayList<>(); |
| | | if (null != place.getNineType()) { |
| | | QueryWrapper<DictBiz> queryWrapper = new QueryWrapper<>(); |
| | |
| | | strings = list.stream().map(DictBiz::getDictKey).collect(Collectors.toList()); |
| | | } |
| | | } |
| | | List<NinePlaceExcel> aa = baseMapper.export(place, gridCodeList, regionChildCodesList, isAdministrator, strings); |
| | | List<NinePlaceExcel> aa = baseMapper.export(place, |
| | | commonParamSet.getGridCodeList(), |
| | | commonParamSet.getRegionChildCodesList(), |
| | | commonParamSet.getIsAdministrator(), |
| | | strings); |
| | | IDictBizService bean = SpringUtils.getBean(IDictBizService.class); |
| | | List<DictBiz> nineType = bean.list(Wrappers.<DictBiz>lambdaQuery().eq(DictBiz::getCode, "nineType").eq(DictBiz::getIsDeleted, 0)); |
| | | for (NinePlaceExcel ninePlaceExcel : aa) { |
| | |
| | | // 返回 |
| | | return page.setRecords(placeVOS); |
| | | } |
| | | |
| | | /** |
| | | * 查询所有场所数据 |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<PlaceVO> getAllList(int i,int size) { |
| | | return baseMapper.getAllList(i,size); |
| | | } |
| | | |
| | | /** |
| | | * 查询所有场所数据总数 |
| | | * @return |
| | | */ |
| | | @Override |
| | | public int getAllListTotal() { |
| | | return baseMapper.getAllListTotal(); |
| | | } |
| | | |
| | | /** |
| | | * 查询对应的社区编号 |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @Override |
| | | public String getCommunityCode(Long id) { |
| | | return baseMapper.getCommunityCode(id); |
| | | } |
| | | } |