From 70a6a075feccef889868161d709497edb77f8371 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Sat, 09 Dec 2023 10:39:30 +0800
Subject: [PATCH] 新增网格机构,范围处理
---
src/main/java/org/springblade/modules/grid/mapper/GridRangeMapper.java | 8 ++
src/main/java/org/springblade/common/utils/NodeTreeUtil.java | 18 ++++--
src/main/java/org/springblade/modules/grid/service/IGridRangeService.java | 5 +
src/main/java/org/springblade/modules/grid/mapper/GridRangeMapper.xml | 5 +
src/main/java/org/springblade/modules/system/controller/DeptController.java | 10 +++
src/main/java/org/springblade/modules/grid/controller/GridRangeController.java | 8 ++
src/main/java/org/springblade/modules/house/service/impl/HouseServiceImpl.java | 11 +++
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java | 33 +++++++++++
src/main/java/org/springblade/modules/system/service/IDeptService.java | 5 +
src/main/java/org/springblade/modules/grid/service/impl/GridRangeServiceImpl.java | 43 ++++++++++++++
10 files changed, 135 insertions(+), 11 deletions(-)
diff --git a/src/main/java/org/springblade/common/utils/NodeTreeUtil.java b/src/main/java/org/springblade/common/utils/NodeTreeUtil.java
index a81edf8..7568fd1 100644
--- a/src/main/java/org/springblade/common/utils/NodeTreeUtil.java
+++ b/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;
}
diff --git a/src/main/java/org/springblade/modules/grid/controller/GridRangeController.java b/src/main/java/org/springblade/modules/grid/controller/GridRangeController.java
index aacad44..555af96 100644
--- a/src/main/java/org/springblade/modules/grid/controller/GridRangeController.java
+++ b/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());
+ }
+
}
diff --git a/src/main/java/org/springblade/modules/grid/mapper/GridRangeMapper.java b/src/main/java/org/springblade/modules/grid/mapper/GridRangeMapper.java
index 6100cac..962f6e8 100644
--- a/src/main/java/org/springblade/modules/grid/mapper/GridRangeMapper.java
+++ b/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();
}
diff --git a/src/main/java/org/springblade/modules/grid/mapper/GridRangeMapper.xml b/src/main/java/org/springblade/modules/grid/mapper/GridRangeMapper.xml
index 06361ec..f44122a 100644
--- a/src/main/java/org/springblade/modules/grid/mapper/GridRangeMapper.xml
+++ b/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>
diff --git a/src/main/java/org/springblade/modules/grid/service/IGridRangeService.java b/src/main/java/org/springblade/modules/grid/service/IGridRangeService.java
index 738c00e..4242998 100644
--- a/src/main/java/org/springblade/modules/grid/service/IGridRangeService.java
+++ b/src/main/java/org/springblade/modules/grid/service/IGridRangeService.java
@@ -39,5 +39,8 @@
*/
IPage<GridRangeVO> selectGridRangePage(IPage<GridRangeVO> page, GridRangeVO gridRange);
-
+ /**
+ * 网格范围表数据处理
+ */
+ Object dataHandle();
}
diff --git a/src/main/java/org/springblade/modules/grid/service/impl/GridRangeServiceImpl.java b/src/main/java/org/springblade/modules/grid/service/impl/GridRangeServiceImpl.java
index e0bdfed..2586506 100644
--- a/src/main/java/org/springblade/modules/grid/service/impl/GridRangeServiceImpl.java
+++ b/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;
+ }
}
diff --git a/src/main/java/org/springblade/modules/house/service/impl/HouseServiceImpl.java b/src/main/java/org/springblade/modules/house/service/impl/HouseServiceImpl.java
index e6bca35..f3ee606 100644
--- a/src/main/java/org/springblade/modules/house/service/impl/HouseServiceImpl.java
+++ b/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())
diff --git a/src/main/java/org/springblade/modules/system/controller/DeptController.java b/src/main/java/org/springblade/modules/system/controller/DeptController.java
index 99c2ba4..b67d1cb 100644
--- a/src/main/java/org/springblade/modules/system/controller/DeptController.java
+++ b/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());
+ }
+
+
+
}
diff --git a/src/main/java/org/springblade/modules/system/service/IDeptService.java b/src/main/java/org/springblade/modules/system/service/IDeptService.java
index e14b643..b996997 100644
--- a/src/main/java/org/springblade/modules/system/service/IDeptService.java
+++ b/src/main/java/org/springblade/modules/system/service/IDeptService.java
@@ -122,4 +122,9 @@
* @return
*/
boolean saveOrUpdateDeptInfo(Dept dept);
+
+ /**
+ * 数据处理(社区绑定)
+ */
+ Object dataHandle();
}
diff --git a/src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java b/src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
index c59e71d..070d0b2 100644
--- a/src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
+++ b/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;
+ }
}
--
Gitblit v1.9.3