From 4c359ddf1ee2a9594ff80ee40fa4543be08b8836 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Fri, 30 Jul 2021 15:35:16 +0800
Subject: [PATCH] 新增app查询工作汇报接收人接口
---
src/main/java/org/springblade/modules/system/mapper/DeptMapper.java | 8 ++++
src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml | 56 ++++++++++++++++++++++++++++
src/main/java/org/springblade/modules/system/controller/DeptController.java | 11 +++++
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java | 10 +++++
src/main/java/org/springblade/modules/system/vo/DeptAndUserVO.java | 24 ++++++++++++
src/main/java/org/springblade/modules/system/service/IDeptService.java | 7 +++
src/main/resources/application.yml | 2 +
7 files changed, 118 insertions(+), 0 deletions(-)
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 8cbc014..d8645c9 100644
--- a/src/main/java/org/springblade/modules/system/controller/DeptController.java
+++ b/src/main/java/org/springblade/modules/system/controller/DeptController.java
@@ -135,6 +135,17 @@
return R.data(tree);
}
+
+ /**
+ * 懒加载获取部门树形结构(包含用户数据)app
+ * @param type 1:保安对保安 2:保安向民警 3:民警向民警
+ * @return
+ */
+ @GetMapping("/lazy-tree-user-app")
+ public List<DeptVO> lazyTreeUser(Integer type) {
+ return deptService.lazyTreeUserApp(type);
+ }
+
/**
* 懒加载获取部门树形结构,不包含顶级管理员公安局
*/
diff --git a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java
index aee8a53..ac3458a 100644
--- a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java
+++ b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java
@@ -100,4 +100,12 @@
* 懒加载获取部门树形结构(按分类查询)
*/
List<DeptVO> lazyTreeType(String tenantId, String deptCategory, Long parentId);
+
+ /**
+ * 懒加载获取部门树形结构(包含用户数据)app
+ * @param type 1:保安对保安 2:保安向民警 3:民警向民警
+ * @return
+ */
+ @SqlParser(filter=true)
+ List<DeptVO> lazyTreeUserApp(Integer type);
}
diff --git a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
index 006f798..68defdc 100644
--- a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
@@ -157,6 +157,62 @@
ORDER BY dept.sort
</select>
+ <!--懒加载获取部门树形结构(包含用户数据)app-->
+ <select id="lazyTreeUserApp" resultType="org.springblade.modules.system.vo.DeptAndUserVO" >
+ select DISTINCT * from (
+ (SELECT
+ dept.id,
+ dept.parent_id,
+ dept.dept_name AS label,
+ dept.id AS "key",
+ dept.id AS "value",
+ (
+ SELECT
+ CASE WHEN count(1) > 0 THEN 1 ELSE 0 END
+ FROM
+ blade_dept
+ WHERE
+ parent_id = dept.id and is_deleted = 0
+ ) AS "has_children"
+ FROM
+ blade_dept dept
+ WHERE
+ dept.is_deleted = 0
+ <if test="type==1">
+ and dept_category=1
+ AND dept.parent_id = "1413470343230877697"
+ </if>
+ <if test="type==2 or type==3">
+ and dept_category=2
+ AND dept.parent_id = "1123598813738675201"
+ </if>
+ )
+
+ union all
+
+ (select
+ bu.id,
+ bu.dept_id parent_id,
+ bu.real_name AS label,
+ bu.id AS "key",
+ bu.id AS "value",
+ 0 as "has_children"
+ from blade_user bu
+ left join
+ blade_dept bd
+ on
+ bd.id = bu.dept_id
+ where 1=1
+ <if test="type==1">
+ and dept_category=1
+ </if>
+ <if test="type==2 or type==3">
+ and dept_category=2
+ </if>
+ )
+ )c
+ </select>
+
<!--懒加载获取部门树形结构(包含用户数据)-->
<select id="lazyTreeUser" resultMap="treeNodeResultMap" >
select DISTINCT * from (
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 99d5895..9434092 100644
--- a/src/main/java/org/springblade/modules/system/service/IDeptService.java
+++ b/src/main/java/org/springblade/modules/system/service/IDeptService.java
@@ -143,4 +143,11 @@
* 懒加载获取部门树形结构(按分类查询)
*/
List<DeptVO> lazyTreeType(String deptCategory, Long parentId);
+
+ /**
+ * 懒加载获取部门树形结构(包含用户数据)app
+ * @param type 1:保安对保安 2:保安向民警 3:民警向民警
+ * @return
+ */
+ List<DeptVO> lazyTreeUserApp(Integer type);
}
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 bb8eaf4..291ab11 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
@@ -224,4 +224,14 @@
public List<DeptVO> lazyTreeType(String deptCategory, Long parentId) {
return ForestNodeMerger.merge(baseMapper.lazyTreeType("000000",deptCategory,parentId));
}
+
+ /**
+ * 懒加载获取部门树形结构(包含用户数据)app
+ * @param type 1:保安对保安 2:保安向民警 3:民警向民警
+ * @return
+ */
+ @Override
+ public List<DeptVO> lazyTreeUserApp(Integer type) {
+ return ForestNodeMerger.merge(baseMapper.lazyTreeUserApp(type));
+ }
}
diff --git a/src/main/java/org/springblade/modules/system/vo/DeptAndUserVO.java b/src/main/java/org/springblade/modules/system/vo/DeptAndUserVO.java
new file mode 100644
index 0000000..f175d9e
--- /dev/null
+++ b/src/main/java/org/springblade/modules/system/vo/DeptAndUserVO.java
@@ -0,0 +1,24 @@
+package org.springblade.modules.system.vo;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import lombok.Data;
+import org.springblade.core.tool.node.BaseNode;
+
+/**
+ * @author zhongrj
+ */
+@Data
+public class DeptAndUserVO extends BaseNode<DeptAndUserVO> {
+ private static final long serialVersionUID = 1L;
+ private String label;
+ @JsonSerialize(
+ using = ToStringSerializer.class
+ )
+ private Long key;
+ @JsonSerialize(
+ using = ToStringSerializer.class
+ )
+ private Long value;
+
+}
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index ac95556..c6d4f8d 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -209,6 +209,8 @@
- /trainExam/**
- /blade-desk/**
- /directive/**
+ - /blade-system/**
+ - /blade-resource/**
#授权认证配置
auth:
- method: ALL
--
Gitblit v1.9.3