From 016e47ea961d84a186db0bbd45cd6d7eaaa57bc3 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Fri, 26 Jan 2024 16:30:20 +0800
Subject: [PATCH] 文章添加小区id 字段

---
 src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java |   46 +++++++++++++++++++++++++++++++---------------
 1 files changed, 31 insertions(+), 15 deletions(-)

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 bfdea32..379fdf6 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
@@ -22,6 +22,7 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springblade.common.cache.SysCache;
 import org.springblade.common.node.TreeStringNode;
+import org.springblade.common.utils.SpringUtils;
 import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.constant.BladeConstant;
@@ -29,12 +30,15 @@
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.core.tool.utils.StringPool;
+import org.springblade.modules.grid.entity.GridEntity;
+import org.springblade.modules.grid.service.IGridService;
 import org.springblade.modules.property.entity.PropertyCompanyEntity;
 import org.springblade.modules.property.service.IPropertyCompanyService;
 import org.springblade.modules.system.entity.Dept;
 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.DeptDetailVO;
 import org.springblade.modules.system.vo.DeptVO;
 import org.springblade.modules.system.wrapper.DeptWrapper;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -95,21 +99,13 @@
 
 	@Override
 	public List<DeptVO> tree(String tenantId) {
-		Long parentId = null;
+		Long id = null;
 		// 判断数据权限控制,非超管角色只可看到本级及以下数据
-//		if (!AuthUtil.isAdministrator()) {
-//			Long deptId = Func.firstLong(AuthUtil.getDeptId());
-//			Dept dept = SysCache.getDept(deptId);
-//			if (dept.getParentId() != 0) {
-//				parentId = dept.getParentId();
-//			}
-//			List<DeptVO> merge = ForestNodeMerger.merge(baseMapper.tree(tenantId, parentId));
-//			List<DeptVO> copy = BeanUtil.copy(merge, DeptVO.class);
-//			copy = copy.stream().filter(item -> AuthUtil.getDeptId().contains(item.getId().toString())).collect(Collectors.toList());
-//			return copy;
-//		}
-
-		return ForestNodeMerger.merge(baseMapper.tree(tenantId, parentId));
+		if (!AuthUtil.isAdmin()) {
+			id = Func.firstLong(AuthUtil.getDeptId());
+		}
+		List<DeptVO> tree = baseMapper.tree(tenantId, id);
+		return ForestNodeMerger.merge(tree);
 	}
 
 	@Override
@@ -125,7 +121,7 @@
 //				parentId = dept.getParentId();
 //			}
 //		}
-		if (Func.toLong(parentId) == 0L && !AuthUtil.isAdministrator()) {
+		if (Func.toLong(parentId) == 0L && !AuthUtil.isAdmin()) {
 			Long deptId = Func.firstLong(AuthUtil.getDeptId());
 			Dept dept = SysCache.getDept(deptId);
 			if (dept.getParentId() != 0) {
@@ -338,4 +334,24 @@
 		}
 		return null;
 	}
+
+	/**
+	 * 数据处理(区域网格编号绑定)
+	 */
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public Object dataRegionGridCodeBindHandle() {
+		// 查询网格对应的机构信息(包含父级机构名称)
+		List<DeptVO> deptVOS = baseMapper.getGridDeptAndParentList();
+		//遍历处理
+		for (DeptVO deptVO : deptVOS) {
+			GridEntity gridEntity = SpringUtils.getBean(IGridService.class).getGridByNames(deptVO.getDeptName(), deptVO.getParentName());
+			if (null != gridEntity) {
+				deptVO.setRegionCode(gridEntity.getGridCode());
+				// 更新
+				updateById(deptVO);
+			}
+		}
+		return null;
+	}
 }

--
Gitblit v1.9.3