From cc057177b2fb17aee9a173a6adbabdc578fd74c7 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Mon, 06 Dec 2021 10:30:44 +0800
Subject: [PATCH] 1.许可
---
src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml | 470 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 446 insertions(+), 24 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 e56bb32..e4e6fd3 100644
--- a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
@@ -37,6 +37,7 @@
<result column="has_children" property="hasChildren"/>
</resultMap>
+
<select id="lazyList" resultMap="deptVOResultMap">
SELECT
dept.* ,
@@ -102,7 +103,62 @@
ORDER BY dept.sort
</select>
+ <!--查询保安公司列表,保安员管理-->
<select id="securityLazyTree" resultMap="treeNodeResultMap" >
+ (
+ SELECT
+ id,
+ parent_id,
+ dept_name AS title,
+ id AS "value",
+ id AS "key",
+ 0 AS "has_children"
+ FROM
+ blade_dept
+ where is_deleted = 0
+ and
+ (id = 1413470343230877697 or id = 1425366663452196865 or id = 1418458374477549569 or id = 1420222768149966850)
+ )
+ union
+ (
+ SELECT
+ DISTINCT
+ 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
+ left join
+ sys_information si
+ on
+ si.departmentid = dept.id
+ WHERE
+ 1=1
+ and si.stats != 4
+ AND dept.is_deleted = 0
+ and dept.id !=1420222961377357825
+ and dept.parent_id!=1420222961377357825
+ and dept.parent_id!=1425365577303621633
+ and dept.id != 1425365577303621633
+ and dept.id != 1432625856013971457
+ <if test="param1!=null and param1!='' and param1!='1372091709474910209'">
+ and si.jurisdiction = #{param1}
+ </if>
+ )
+ </select>
+
+ <!--懒加载获取部门树形结构(按分类查询)-->
+ <select id="lazyTreeType" resultMap="treeNodeResultMap" >
SELECT
dept.id,
dept.parent_id,
@@ -120,41 +176,368 @@
FROM
blade_dept dept
WHERE
- dept.parent_id = #{param2} AND dept.is_deleted = 0
- and dept_category = 1
+ dept.parent_id = #{param3} AND dept.is_deleted = 0
+ <if test="param2!=null and param2!=''">
+ and dept.dept_category = #{param2}
+ </if>
<if test="param1!=null and param1!=''">
and dept.tenant_id = #{param1}
</if>
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",
+ 1 as idCardNo,
+ (
+ SELECT
+ CASE WHEN count(1) > 0 THEN 1 ELSE 0 END
+ FROM
+ blade_dept
+ WHERE
+ parent_id = dept.id and dept.is_deleted = 0
+ ) AS "has_children"
+ FROM
+ blade_dept dept
+ left join
+ blade_user bu
+ on
+ bu.dept_id = dept.id
+ WHERE
+ dept.is_deleted = 0
+ and bu.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>
+ <if test="type==4 and jurisdiction!=null and jurisdiction!=''">
+ and dept_category=1
+ AND dept.parent_id = "1413470343230877697"
+ and bu.jurisdiction = #{jurisdiction}
+ </if>
+ )
+
+ union all
+
+ (
+ select
+ bu.id,
+ bu.dept_id parent_id,
+ bu.real_name AS label,
+ bu.id AS "key",
+ bu.id AS "value",
+ bu.cardid as idCardNo,
+ 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
+ and bu.status = 1
+ <if test="type==1">
+ and dept_category=1
+ </if>
+ <if test="type==2 or type==3">
+ and dept_category=2
+ </if>
+ <if test="type==4 and jurisdiction!=null and jurisdiction!=''">
+ and dept_category=1
+ and bu.jurisdiction = #{jurisdiction}
+ </if>
+ )
+ )c
+ </select>
+
+ <!--懒加载获取部门树形结构(包含用户数据)-->
+ <select id="lazyTreeUser" resultMap="treeNodeResultMap" >
+ select DISTINCT
+ c.id,
+ c.parent_id,
+ c.title,
+ c.value,
+ c.key,
+ (
+ SELECT
+ CASE WHEN count(1) > 0 THEN 1 ELSE 0 END
+ FROM
+ blade_dept
+ where
+ id = c.parent_id
+ <if test="parentId!=null and parentId!=''">
+ and dept_category=1
+ AND id = #{parentId}
+ </if>
+ ) AS "has_children"
+ 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
+ <if test="parentId!=null and parentId!=''">
+ and dept_category=1
+ AND dept.parent_id = #{parentId}
+ </if>
+ )
+
+ union
+
+ (select
+ bu.id,
+ bu.dept_id parent_id,
+ 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="parentId!=null and parentId!=''">
+ and dept_category=1
+ AND bu.dept_id = #{parentId}
+ </if>
+ )
+ )c
+ </select>
- <select id="lazyTrees" resultMap="treeNodeResultMap" >
- SELECT
+ <!--懒加载获取部门树形结构(包含用户数据),未删除,在职-->
+ <select id="lazyTreeUsers" resultType="org.springblade.modules.system.node.TreeNodes" >
+ select DISTINCT
+ *
+ from (
+ (SELECT
dept.id,
- dept.parent_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 0 ELSE 1 END
- FROM
- blade_dept
- WHERE
- parent_id = dept.id and is_deleted = 0
+ 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 (
- SELECT
- CASE WHEN count(1) > 0 THEN 1 ELSE 0 END
- FROM
- blade_dept
- WHERE
- parent_id = dept.id and is_deleted = 0
- ) =1
-</select>
+ FROM
+ blade_dept dept
+ left join
+ sys_information si
+ on
+ si.departmentid = dept.id
+ WHERE
+ dept.is_deleted = 0
+ <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
+ left join
+ blade_role br
+ on
+ br.id = bu.role_id
+ where 1=1
+ and bu.is_deleted = 0
+ and bu.status = 1
+ <if test="type==1">
+ and role_alias = '保安'
+ </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="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
+ and bu.status = 1
+ <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="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
+ and bu.status = 1
+ <if test="deptId!=null and deptId!=''">
+ and bd.id = #{deptId}
+ </if>
+ )
+ )c
+ </select>
+
+
+
+ <select id="lazyTrees" 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 0 ELSE 1 END
+ FROM
+ blade_dept
+ WHERE
+ parent_id = dept.id and is_deleted = 0
+ ) AS "has_children"
+ FROM
+ blade_dept dept WHERE (
+ SELECT
+ CASE WHEN count(1) > 0 THEN 1 ELSE 0 END
+ FROM
+ blade_dept
+ WHERE
+ parent_id = dept.id and is_deleted = 0
+ ) =1
+ </select>
<select id="getDeptNames" resultType="java.lang.String">
SELECT
@@ -171,10 +554,10 @@
<select id="selectIn" resultType="java.util.HashMap">
SELECT
- id,
- dept_name
+ id as deptid,
+ dept_name as deptname
FROM
- blade_dept
+ blade_dept where is_deleted = 0
</select>
<!--统计单位类型数量-->
@@ -197,4 +580,43 @@
SELECT id FROM blade_dept WHERE parent_id =#{id} and is_deleted = 0
</select>
+
+ <insert id="add" parameterType="org.springblade.modules.system.entity.Dept" useGeneratedKeys="true" keyProperty="id">
+ insert into blade_dept(tenant_id, parent_id,ancestors,dept_category,dept_name) values(#{tenantId}, #{parentId}, #{ancestors}, #{deptCategory}, #{deptName})
+ </insert>
+ <select id="selectInfo" resultMap="treeNodeResultMap">
+ SELECT
+ DISTINCT
+ 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
+ left join
+ sys_information si
+ on
+ si.departmentid = dept.id
+ WHERE
+ 1=1
+ AND dept.is_deleted = 0
+ and dept.id !=1420222961377357825
+ and dept.id !=1432625856013971457
+ and dept.parent_id!=1420222961377357825
+ and dept.parent_id!=1432625856013971457
+ </select>
+
+ <!--查询所有的部门信息-->
+ <select id="selDeptList" resultType="org.springblade.common.vo.DeptVo">
+ select id ,dept_name deptName from blade_dept where is_deleted=0
+ </select>
</mapper>
--
Gitblit v1.9.3