From f0e2074cb81056813fe8b34aa6b7d8a2419e1bdf Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Thu, 11 Nov 2021 20:49:06 +0800
Subject: [PATCH] 新增制证审核

---
 src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java |   52 ++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 44 insertions(+), 8 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 96b432a..d5ab8c6 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
@@ -34,12 +34,16 @@
 import org.springblade.modules.jurisdiction.entity.Jurisdiction;
 import org.springblade.modules.jurisdiction.service.JurisdictionService;
 import org.springblade.modules.system.entity.Dept;
+import org.springblade.modules.system.entity.User;
 import org.springblade.modules.system.mapper.DeptMapper;
 import org.springblade.modules.system.node.TreeNode;
 import org.springblade.modules.system.node.TreeNodes;
 import org.springblade.modules.system.service.IDeptService;
+import org.springblade.modules.system.service.IUserService;
 import org.springblade.modules.system.vo.DeptVO;
+import org.springblade.modules.system.vo.UserVO;
 import org.springblade.modules.system.wrapper.DeptWrapper;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
@@ -54,14 +58,15 @@
  * @author Chill
  */
 @Service
-@AllArgsConstructor
 public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements IDeptService {
 	private static final String TENANT_ID = "tenantId";
 	private static final String PARENT_ID = "parentId";
 
-	private final IInformationService iInformationService;
+	@Autowired
+	private IInformationService iInformationService;
 
-	private final JurisdictionService jurisdictionService;
+	@Autowired
+	private JurisdictionService jurisdictionService;
 
 	@Override
 	public List<DeptVO> lazyList(String tenantId, Long parentId, Map<String, Object> param) {
@@ -98,10 +103,32 @@
 	}
 
 	@Override
-	public List<DeptVO> lazyTree(String tenantId, Long parentId) {
-		if (AuthUtil.isAdministrator()) {
-			tenantId = StringPool.EMPTY;
+	public List<DeptVO> lazyTree(String tenantId, Long parentId,String userId) {
+//		if (AuthUtil.isAdministrator()) {
+//			tenantId = StringPool.EMPTY;
+//		}
+		//获取用户信息,保安,民警
+		if (null!=userId && !userId.equals("")) {
+			UserVO user = baseMapper.getUserInfoById(userId);
+			if (user.getRoleAlias().equals("公安管理员")){
+				//公安管理员又分,如果是派出所,只返回当前值
+				if (user.getDeptName().contains("派出所")){
+					return ForestNodeMerger.merge(baseMapper.lazyTreeCityOne(tenantId, parentId));
+				}else {
+					//市局,区级
+					Dept dept = this.getById(parentId);
+					if (null != dept) {
+						if (dept.getParentId().equals(1123598813738675201L)) {
+							return ForestNodeMerger.merge(baseMapper.lazyTreeCity(tenantId, parentId));
+						}
+					}
+				}
+			}else {
+				//保安公司
+				return ForestNodeMerger.merge(baseMapper.securityLazyTree(null, parentId));
+			}
 		}
+		//admin
 		return ForestNodeMerger.merge(baseMapper.lazyTree(tenantId, parentId));
 	}
 
@@ -270,14 +297,14 @@
 					Dept dept = new Dept();
 					dept.setDeptName(jurisdiction.getDeptName());
 					Dept dept1 = this.getOne(Condition.getQueryWrapper(dept));
-					map = baseMapper.lazyTreeUsersPublicSecurity(type, dept1.getId(), one.getJurisdiction());
+					map = baseMapper.lazyTreeUsersPublicSecurity(null, dept1.getId(), one.getJurisdiction());
 				}
 			}
 		}
 		//民警向民警汇报,需要南昌市及当前民警所在辖区的部门数据
 		if(type==3){
 			//当前取所有的民警数据
-			map = baseMapper.lazyTreeUsersPublicSecuritys(type,null,null);
+			map = baseMapper.lazyTreeUsersPublicSecuritys(null,deptId,null);
 		}
 		List<TreeNodes> tree = new ArrayList<>();
 		Map<Long, TreeNodes> finalMap = map;
@@ -300,4 +327,13 @@
 	public List<DeptVo> selDeptList() {
 		return baseMapper.selDeptList();
 	}
+
+
+	/**
+	 * 懒加载获取部门树形结构,根据辖区查询
+	 */
+	@Override
+	public List<DeptVO> lazyTreeJurisdiction(String jurisdiction, Long parentId) {
+		return ForestNodeMerger.merge(baseMapper.lazyTreeJurisdiction(jurisdiction,parentId));
+	}
 }

--
Gitblit v1.9.3