From 4ecf2dbe2c255c3b556ff4bfb49b4e2e8285bd17 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Tue, 31 Aug 2021 11:24:45 +0800
Subject: [PATCH] 1.ftp
---
src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml | 301 +++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 272 insertions(+), 29 deletions(-)
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 d1b1420..56918a8 100644
--- a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
@@ -39,17 +39,17 @@
<select id="lazyList" resultMap="deptVOResultMap">
SELECT
- dept.* ,
- (
- 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"
+ dept.* ,
+ (
+ SELECT
+ CASE WHEN count(1) > 0 THEN 1 ELSE 0 END
FROM
- blade_dept dept
+ 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="param1!=null and param1!=''">
and dept.tenant_id = #{param1}
@@ -74,23 +74,23 @@
ORDER BY sort
</select>
- <select id="lazyTree" resultMap="treeNodeResultMap" >
+ <select id="lazyTree" resultMap="treeNodeResultMap">
SELECT
- dept.id,
- dept.parent_id,
- dept.dept_name AS title,
- dept.id AS "value",
- dept.id AS "key",
- (
- 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"
+ dept.id,
+ dept.parent_id,
+ dept.dept_name AS title,
+ dept.id AS "value",
+ dept.id AS "key",
+ (
+ SELECT
+ CASE WHEN count(1) > 0 THEN 1 ELSE 0 END
FROM
- blade_dept dept
+ 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="param2!=null and param2!=0">
@@ -102,9 +102,228 @@
ORDER BY dept.sort
</select>
+ <!--懒加载获取部门树形结构(包含用户数据)-->
+ <select id="lazyTreeUser" resultMap="treeNodeResultMap">
+ select DISTINCT * from (
+ (SELECT
+ dept.id,
+ dept.parent_id,
+ dept.dept_name AS title,
+ dept.id AS "value",
+ dept.id AS "key",
+ (
+ 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
+ )
+
+ union
+
+ (select
+ id,
+ dept_id parent_id,
+ real_name AS title,
+ id AS "value",
+ id AS "key",
+ 0 as "has_children"
+ from blade_user
+ )
+ )c
+ </select>
+
+ <!--懒加载获取部门树形结构(包含用户数据)-->
+ <select id="lazyTreeUsers" resultType="org.springblade.modules.system.node.TreeNodes" >
+ select DISTINCT
+ *
+ from (
+ (SELECT
+ dept.id,
+ dept.parent_id parentId,
+ dept.dept_name AS title,
+ dept.id AS "value",
+ dept.id AS "key",
+ (
+ 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
+ left join
+ sys_information si
+ on
+ si.departmentid = dept.id
+ WHERE
+ dept.is_deleted = 0
+ <if test="type==1">
+ and dept_category=1
+ </if>
+ <if test="deptId!=null and deptId!=''">
+ and dept.id = #{deptId}
+ </if>
+ )
+
+ union
+
+ (select
+ bu.id,
+ bu.dept_id parentId,
+ bu.real_name AS title,
+ bu.id AS "value",
+ bu.id AS "key",
+ 0 as "has_children"
+ from blade_user bu
+ left join
+ blade_dept bd
+ on
+ bd.id = bu.dept_id
+ where 1=1
+ and bu.is_deleted = 0
+ <if test="type==1">
+ and dept_category=1
+ </if>
+ <if test="type==2 or type==3">
+ and dept_category=2
+ </if>
+ <if test="deptId!=null and deptId!=''">
+ and bu.dept_id = #{deptId}
+ </if>
+ <if test="jurisdiction!=null and jurisdiction!=''">
+ and bu.jurisdiction = #{jurisdiction}
+ </if>
+ )
+ )c
+ </select>
+
+ <!--懒加载获取部门树形结构(包含用户数据)-->
+ <select id="lazyTreeUsersPublicSecurity" resultType="org.springblade.modules.system.node.TreeNodes" >
+ select DISTINCT
+ *
+ from (
+ (SELECT
+ dept.id,
+ dept.parent_id parentId,
+ dept.dept_name AS title,
+ dept.id AS "value",
+ dept.id AS "key",
+ (
+ 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
+ left join
+ sys_information si
+ on
+ si.departmentid = dept.id
+ WHERE
+ dept.is_deleted = 0
+ <if test="type==2 or type==3">
+ and dept_category=2
+ </if>
+ <if test="deptId!=null and deptId!=''">
+ and (dept.parent_id = #{deptId} or dept.id = #{deptId})
+ </if>
+ )
+
+ union
+
+ (select
+ bu.id,
+ bu.dept_id parentId,
+ bu.real_name AS title,
+ bu.id AS "value",
+ bu.id AS "key",
+ 0 as "has_children"
+ from blade_user bu
+ left join
+ blade_dept bd
+ on
+ bd.id = bu.dept_id
+ where 1=1
+ and bu.is_deleted = 0
+ <if test="type==2 or type==3">
+ and dept_category=2
+ </if>
+ <if test="deptId!=null and deptId!=''">
+ and (bd.parent_id = #{deptId} or bd.id = #{deptId})
+ </if>
+ )
+ )c
+ </select>
+
+ <!--懒加载获取部门树形结构(包含用户数据)-->
+ <select id="lazyTreeUsersPublicSecuritys" resultType="org.springblade.modules.system.node.TreeNodes" >
+ select DISTINCT
+ *
+ from (
+ (SELECT
+ dept.id,
+ dept.parent_id parentId,
+ dept.dept_name AS title,
+ dept.id AS "value",
+ dept.id AS "key",
+ (
+ 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
+ left join
+ sys_information si
+ on
+ si.departmentid = dept.id
+ WHERE
+ dept.is_deleted = 0
+ <if test="type==2 or type==3">
+ and dept_category=2
+ </if>
+ )
+
+ union
+
+ (select
+ bu.id,
+ bu.dept_id parentId,
+ bu.real_name AS title,
+ bu.id AS "value",
+ bu.id AS "key",
+ 0 as "has_children"
+ from blade_user bu
+ left join
+ blade_dept bd
+ on
+ bd.id = bu.dept_id
+ where 1=1
+ and bu.is_deleted = 0
+ <if test="type==2 or type==3">
+ and dept_category=2
+ </if>
+ )
+ )c
+ </select>
- <select id="lazyTrees" resultMap="treeNodeResultMap" >
+ <select id="lazyTrees" resultMap="treeNodeResultMap">
SELECT
dept.id,
dept.parent_id,
@@ -164,8 +383,8 @@
<select id="selectHold" resultType="java.util.HashMap">
SELECT
- ISNULL(B.cz,0) as cz,
- ISNULL(C.wcz,0) as wcz
+ IFNULL(B.cz,0) as cz,
+ IFNULL(C.wcz,0) as wcz
FROM (SELECT jurisdiction FROM blade_user ) A
LEFT JOIN (SELECT COUNT(hold) as cz,jurisdiction FROM blade_user WHERE hold=0 GROUP BY jurisdiction ) B ON A.jurisdiction=B.jurisdiction
LEFT JOIN (SELECT COUNT(hold) as wcz,jurisdiction FROM blade_user WHERE hold=1 GROUP BY jurisdiction ) C ON A.jurisdiction=C.jurisdiction
@@ -176,5 +395,29 @@
<select id="selectId" resultType="java.util.HashMap">
SELECT id FROM blade_dept WHERE parent_id =#{id} and is_deleted = 0
</select>
-
+ <select id="securityLazyTree" resultMap="treeNodeResultMap">
+ SELECT
+ dept.id,
+ dept.parent_id,
+ dept.dept_name AS title,
+ dept.id AS "value",
+ dept.id AS "key",
+ (
+ 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.parent_id = #{param2} AND dept.is_deleted = 0
+ and dept_category = 1
+ <if test="param1!=null and param1!=''">
+ and dept.tenant_id = #{param1}
+ </if>
+ ORDER BY dept.sort
+ </select>
</mapper>
--
Gitblit v1.9.3