src/main/java/org/springblade/common/utils/NodeTreeUtil.java
@@ -63,13 +63,19 @@ public static List<TreeStringNode> getStringNodeTree(Map<String, TreeStringNode> treeMap){ List<TreeStringNode> tree = new ArrayList<>(); if (treeMap.size() > 0) { treeMap.forEach((id, treeNode) -> { if (treeMap.containsKey(treeNode.getParentId())) { treeMap.get(treeNode.getParentId()).getChildren().add(treeNode); } else { if (treeMap.size()==1){ treeMap.forEach((id, treeNode) -> { tree.add(treeNode); } }); }); }else { treeMap.forEach((id, treeNode) -> { if (treeMap.containsKey(treeNode.getParentId())) { treeMap.get(treeNode.getParentId()).getChildren().add(treeNode); } else { tree.add(treeNode); } }); } } return tree; } src/main/java/org/springblade/modules/grid/controller/GridRangeController.java
@@ -120,5 +120,13 @@ return R.status(gridRangeService.removeByIds(Func.toLongList(ids))); } /** * 网格范围表数据处理 */ @GetMapping("/dataHandle") public R dataHandle() { return R.data(gridRangeService.dataHandle()); } } src/main/java/org/springblade/modules/grid/mapper/GridRangeMapper.java
@@ -21,6 +21,8 @@ import org.springblade.modules.grid.vo.GridRangeVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.modules.grid.vo.GridVO; import java.util.List; /** @@ -40,5 +42,9 @@ */ List<GridRangeVO> selectGridRangePage(IPage page,@Param("gridRange") GridRangeVO gridRange); /** * 查询test 数据表数据 * @return */ List<GridVO> getTestGridData(); } src/main/java/org/springblade/modules/grid/mapper/GridRangeMapper.xml
@@ -7,5 +7,10 @@ select * from jczz_grid_range where 1=1 </select> <!--查询test 数据表数据--> <select id="getTestGridData" resultType="org.springblade.modules.grid.vo.GridVO"> select grid as gridName,SUBSTRING_INDEX(area, "-", -1) as communityName,std_id as principal from jczz_test </select> </mapper> src/main/java/org/springblade/modules/grid/service/IGridRangeService.java
@@ -39,5 +39,8 @@ */ IPage<GridRangeVO> selectGridRangePage(IPage<GridRangeVO> page, GridRangeVO gridRange); /** * 网格范围表数据处理 */ Object dataHandle(); } src/main/java/org/springblade/modules/grid/service/impl/GridRangeServiceImpl.java
@@ -16,14 +16,22 @@ */ package org.springblade.modules.grid.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springblade.modules.grid.entity.GridEntity; import org.springblade.modules.grid.entity.GridRangeEntity; import org.springblade.modules.grid.service.IGridService; import org.springblade.modules.grid.vo.GridRangeVO; import org.springblade.modules.grid.mapper.GridRangeMapper; import org.springblade.modules.grid.service.IGridRangeService; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.modules.grid.vo.GridVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springframework.transaction.annotation.Transactional; import java.util.List; /** * 网格范围表 服务实现类 @@ -34,10 +42,43 @@ @Service public class GridRangeServiceImpl extends ServiceImpl<GridRangeMapper, GridRangeEntity> implements IGridRangeService { @Autowired private IGridService gridService; @Override public IPage<GridRangeVO> selectGridRangePage(IPage<GridRangeVO> page, GridRangeVO gridRange) { return page.setRecords(baseMapper.selectGridRangePage(page, gridRange)); } /** * 网格范围表数据处理 */ @Override @Transactional(rollbackFor = Exception.class) public Object dataHandle() { // 查询test 数据表数据 List<GridVO> list = baseMapper.getTestGridData(); // 匹配 for (GridVO gridVO : list) { QueryWrapper<GridEntity> wrapper = new QueryWrapper<>(); wrapper.eq("grid_name",gridVO.getGridName()) .eq("community_name",gridVO.getCommunityName()) .eq("is_deleted",0); GridEntity one = gridService.getOne(wrapper); if (null!=one){ // 查询是否已存在绑定关系,已有则不新增 QueryWrapper<GridRangeEntity> queryWrapper = new QueryWrapper<>(); queryWrapper.eq("grid_id",one.getId()).eq("house_code",gridVO.getPrincipal()); GridRangeEntity gridRangeEntity = getOne(queryWrapper); if (null== gridRangeEntity) { GridRangeEntity rangeEntity = new GridRangeEntity(); rangeEntity.setGridId(one.getId()); rangeEntity.setHouseCode(gridVO.getPrincipal()); // 新增 save(rangeEntity); } } } return null; } } src/main/java/org/springblade/modules/house/service/impl/HouseServiceImpl.java
@@ -20,6 +20,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.logging.log4j.util.Strings; import org.springblade.common.utils.IdUtils; import org.springblade.common.utils.NodeTreeUtil; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.utils.BeanUtil; @@ -162,7 +163,7 @@ * @param houseAndHoldExcel */ @Transactional(rollbackFor = Exception.class) public void saveHouseholdData(HouseAndHoldExcel houseAndHoldExcel) { public void saveHouseData(HouseAndHoldExcel houseAndHoldExcel) { // 查询库中是否已存在 QueryWrapper<HouseEntity> wrapper = new QueryWrapper<>(); wrapper.eq("house_code",houseAndHoldExcel.getHouseCode()) @@ -188,6 +189,12 @@ houseEntity.setCreateUser(AuthUtil.getUserId().toString()); houseEntity.setUpdateTime(new Date()); houseEntity.setUpdateUser(AuthUtil.getUserId().toString()); if (!Strings.isBlank(houseAndHoldExcel.getHouseCode())) { houseEntity.setSource(1); }else { houseEntity.setHouseCode(IdUtils.getIdBy36()); houseEntity.setSource(2); } // 新增 save(houseEntity); } @@ -198,7 +205,7 @@ * @param houseAndHoldExcel */ @Transactional(rollbackFor = Exception.class) public void saveHouseData(HouseAndHoldExcel houseAndHoldExcel) { public void saveHouseholdData(HouseAndHoldExcel houseAndHoldExcel) { // 查询库中是否已存在 QueryWrapper<HouseholdEntity> wrapper = new QueryWrapper<>(); wrapper.eq("house_code",houseAndHoldExcel.getHouseCode()) src/main/java/org/springblade/modules/system/controller/DeptController.java
@@ -190,5 +190,15 @@ return R.data(list); } /** * 数据处理(社区绑定) */ @GetMapping("/dataHandle") public R dataHandle() { return R.data(deptService.dataHandle()); } } src/main/java/org/springblade/modules/system/service/IDeptService.java
@@ -122,4 +122,9 @@ * @return */ boolean saveOrUpdateDeptInfo(Dept dept); /** * 数据处理(社区绑定) */ Object dataHandle(); } src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
@@ -21,6 +21,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springblade.common.cache.SysCache; import org.springblade.common.node.TreeStringNode; import org.springblade.core.log.exception.ServiceException; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.constant.BladeConstant; @@ -33,6 +34,7 @@ import org.springblade.modules.system.entity.UserDept; import org.springblade.modules.system.mapper.DeptMapper; import org.springblade.modules.system.service.IDeptService; import org.springblade.modules.system.service.IRegionService; import org.springblade.modules.system.vo.DeptVO; import org.springblade.modules.system.wrapper.DeptWrapper; import org.springframework.beans.factory.annotation.Autowired; @@ -55,6 +57,9 @@ @Autowired private IPropertyCompanyService propertyCompanyService; @Autowired private IRegionService regionService; @Override public List<DeptVO> lazyList(String tenantId, Long parentId, Map<String, Object> param) { @@ -262,4 +267,32 @@ return DeptWrapper.build().listNodeVO(deptList); } /** * 数据处理(社区绑定) */ @Override @Transactional(rollbackFor = Exception.class) public Object dataHandle() { // 查询未绑定的网格 List<TreeStringNode> list = regionService.getTree("361102005"); // 遍历 for (TreeStringNode treeStringNode : list) { // 查询是否已创建 QueryWrapper<Dept> wrapper = new QueryWrapper<>(); wrapper.eq("is_deleted",0).eq("dept_name",treeStringNode.getName()); Dept one = getOne(wrapper); if (null==one){ // 新增 Dept dept = new Dept(); dept.setParentId(1733066387113734145L); dept.setFullName(treeStringNode.getName()); dept.setDeptName(treeStringNode.getName()); dept.setDeptCategory(1); dept.setTenantId("000000"); // 新增 save(dept); } } return null; } }