| | |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public boolean saveOrUpdateGrid(GridEntity grid) { |
| | | boolean flag = false; |
| | | // 先查询当前网格社区对应的机构id |
| | | QueryWrapper<Region> regionWrapper = new QueryWrapper<>(); |
| | | regionWrapper.eq("code",grid.getCommunityCode()); |
| | | Region region = regionService.getOne(regionWrapper); |
| | | // 查询父机构(社区机构) |
| | | System.out.println("社区名称 = " + region.getName()); |
| | | QueryWrapper<Dept> wrapper = new QueryWrapper<>(); |
| | | wrapper.eq("dept_name",region.getName()) |
| | | .eq("is_deleted",0); |
| | | Dept dept = deptService.getOne(wrapper); |
| | | // 查询当前网格在机构中是否存在,存在不做操作,否则则新增 |
| | | QueryWrapper<Dept> wrapperChild = new QueryWrapper<>(); |
| | | wrapperChild.eq("dept_name",grid.getGridName()) |
| | | .eq("is_deleted",0) |
| | | .eq("parent_id",dept.getId()); |
| | | List<Dept> deptChild = deptService.list(wrapperChild); |
| | | if (deptChild.size()==0){ |
| | | Dept deptInfo = new Dept(); |
| | | deptInfo.setParentId(dept.getId()); |
| | | deptInfo.setFullName(grid.getGridName()); |
| | | deptInfo.setDeptName(grid.getGridName()); |
| | | deptInfo.setDeptCategory(1); |
| | | deptInfo.setTenantId("000000"); |
| | | deptInfo.setRegionCode(grid.getGridCode()); |
| | | deptInfo.setAncestors(dept.getAncestors() + "," +dept.getId()); |
| | | // 新增 |
| | | deptService.save(deptInfo); |
| | | // 查询网格是否已存在(社区编号-网格名称),已存在更新,不存在插入新的 |
| | | QueryWrapper<GridEntity> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("grid_code",grid.getGridCode()) |
| | | .eq("is_deleted",0); |
| | | System.out.println("网格编号 = " + grid.getGridCode()); |
| | | GridEntity one = getOne(queryWrapper); |
| | | if (null!=one){ |
| | | grid.setId(one.getId()); |
| | | grid.setDeptId(deptInfo.getId()); |
| | | if (null!= grid.getGeom() && grid.getGeom().equals("")){ |
| | | if (null!=grid.getId()) { |
| | | // 更新 |
| | | flag = updateById(grid); |
| | | }else { |
| | | // 先查询当前网格社区对应的机构id |
| | | QueryWrapper<Region> regionWrapper = new QueryWrapper<>(); |
| | | regionWrapper.eq("code", grid.getCommunityCode()); |
| | | Region region = regionService.getOne(regionWrapper); |
| | | // 查询父机构(社区机构) |
| | | System.out.println("社区名称 = " + region.getName()); |
| | | QueryWrapper<Dept> wrapper = new QueryWrapper<>(); |
| | | wrapper.eq("dept_name", region.getName()) |
| | | .eq("dept_nature", 2) |
| | | .eq("is_deleted", 0); |
| | | Dept dept = deptService.getOne(wrapper); |
| | | // 查询当前网格在机构中是否存在,存在不做操作,否则则新增 |
| | | QueryWrapper<Dept> wrapperChild = new QueryWrapper<>(); |
| | | wrapperChild.eq("dept_name", grid.getGridName()) |
| | | .eq("is_deleted", 0) |
| | | .eq("dept_nature", 2) |
| | | .eq("parent_id", dept.getId()); |
| | | List<Dept> deptChild = deptService.list(wrapperChild); |
| | | if (deptChild.size() == 0) { |
| | | Dept deptInfo = new Dept(); |
| | | deptInfo.setParentId(dept.getId()); |
| | | deptInfo.setFullName(grid.getGridName()); |
| | | deptInfo.setDeptName(grid.getGridName()); |
| | | deptInfo.setDeptCategory(1); |
| | | // 综治 |
| | | deptInfo.setDeptNature(2); |
| | | deptInfo.setTenantId("000000"); |
| | | deptInfo.setRegionCode(grid.getGridCode()); |
| | | deptInfo.setAncestors(dept.getAncestors() + "," + dept.getId()); |
| | | // 新增 |
| | | deptService.save(deptInfo); |
| | | // 查询网格是否已存在(社区编号-网格名称),已存在更新,不存在插入新的 |
| | | QueryWrapper<GridEntity> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("grid_code", grid.getGridCode()) |
| | | .eq("is_deleted", 0); |
| | | System.out.println("网格编号 = " + grid.getGridCode()); |
| | | GridEntity one = getOne(queryWrapper); |
| | | if (null != one) { |
| | | grid.setId(one.getId()); |
| | | grid.setDeptId(deptInfo.getId()); |
| | | if (null != grid.getGeom() && grid.getGeom().equals("")) { |
| | | grid.setGeom(null); |
| | | } |
| | | // 更新 |
| | | flag = updateById(grid); |
| | | } else { |
| | | grid.setDeptId(deptInfo.getId()); |
| | | grid.setGeom(null); |
| | | // 插入 |
| | | flag = save(grid); |
| | | } |
| | | // 更新 |
| | | flag = updateById(grid); |
| | | }else { |
| | | grid.setDeptId(deptInfo.getId()); |
| | | grid.setGeom(null); |
| | | // 插入 |
| | | flag = save(grid); |
| | | } |
| | | } |
| | | return flag; |