From 8853292babb2ad94de4a3207966f1e83b767cd2d Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Sun, 17 Sep 2023 16:38:34 +0800
Subject: [PATCH] 新增流程节点进程查询接口

---
 src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml | 1125 ++++++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 687 insertions(+), 438 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 0278850..40f24f0 100644
--- a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
@@ -40,17 +40,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}
@@ -75,36 +75,155 @@
         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
-            dept.is_deleted = 0
+        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">
             and dept.parent_id = #{param2}
         </if>
         <if test="param1!=null and param1!=''">
             and dept.tenant_id = #{param1}
         </if>
+        <if test="param3!=null">
+            and dept.dept_category = #{param3}
+        </if>
         ORDER BY dept.sort
     </select>
 
     <!--查询保安公司列表,保安员管理-->
-    <select id="securityLazyTree" resultMap="treeNodeResultMap" >
+<!--    <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 = 1420222768149966850-->
+<!--        or id = 1426354978959691778)-->
+<!--        )-->
+<!--        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-->
+<!--        left join-->
+<!--        sys_jurisdiction sj-->
+<!--        on-->
+<!--        sj.id = si.jurisdiction-->
+<!--        WHERE-->
+<!--        1=1-->
+<!--        and si.stats != 3 AND si.stats!=1-->
+<!--        AND dept.is_deleted = 0-->
+<!--        <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">-->
+<!--            and (sj.id = #{jurisdiction} or sj.parent_id = #{jurisdiction})-->
+<!--        </if>-->
+<!--        )-->
+<!--    </select>-->
+
+
+    <!--查询保安公司列表,保安员管理-->
+    <select id="securityLazyTree" 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
+        left join
+        sys_jurisdiction sj
+        on
+        sj.id = si.jurisdiction
+        where
+        dept.dept_category != 0
+        AND dept.is_deleted = 0
+        and dept.id!= 1420222961377357825
+        and dept.parent_id!= 1420222961377357825
+        and dept.id!= 1418458374477549569
+        and dept.parent_id!= 1418458374477549569
+        and dept.id!= 1426355050199945218
+        <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
+            and (sj.id = #{jurisdiction} or sj.parent_id = #{jurisdiction})
+            union
+                    (
+                    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 = 1420222768149966850
+                    or id = 1426354978959691778)
+                    )
+        </if>
+    </select>
+
+
+    <!--查询所有的保安公司机构及子级信息-->
+    <select id="securityDeptUnitList" resultMap="treeNodeResultMap">
         (
             SELECT
             id,
@@ -115,50 +234,48 @@
             0 AS "has_children"
             FROM
             blade_dept
-            where is_deleted = 0
-            and
-            (id = 1413470343230877697 or id = 1425366663452196865 or id = 1418458374477549569 or id = 1420222768149966850)
+            where id = #{deptId}
         )
-           union
+        union
+        (
+        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
+        ) AS "has_children"
+        FROM
+        (
+        SELECT
+        id,parent_id,dept_name
+        FROM
         (
             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
+            t1.id,t1.parent_id,t1.dept_name,
+            IF
+            ( find_in_set( parent_id, @pids ) > 0, @pids := concat( @pids, ',', id ), 0 ) AS ischild
             FROM
-            blade_dept
+            ( SELECT id, parent_id,dept_name FROM blade_dept t ORDER BY parent_id, id ) t1,
+            ( SELECT @pids := #{deptId} ) t2
+            ) t3
             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>
+            ischild != 0
+        )
+        dept
+        where 1=1
         )
     </select>
 
     <!--懒加载获取部门树形结构(按分类查询)-->
-    <select id="lazyTreeType" resultMap="treeNodeResultMap" >
+    <select id="lazyTreeType" resultMap="treeNodeResultMap">
         SELECT
         dept.id,
         dept.parent_id,
@@ -187,356 +304,350 @@
     </select>
 
     <!--懒加载获取部门树形结构(包含用户数据)app-->
-    <select id="lazyTreeUserApp" resultType="org.springblade.modules.system.vo.DeptAndUserVO" >
+    <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>
-            )
+        (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
+        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>
-            )
+        (
+        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 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"
+        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="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="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
+        (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
+        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
+        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="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="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
@@ -552,75 +663,83 @@
     </select>
 
     <select id="selectIn" resultType="java.util.HashMap">
-        SELECT
-            id as deptid,
-            dept_name as deptname
-        FROM
-            blade_dept where is_deleted = 0
+        SELECT id        as deptid,
+               dept_name as deptname
+        FROM blade_dept
+        where is_deleted = 0
     </select>
 
     <!--统计单位类型数量-->
     <select id="selectCount" resultType="java.util.HashMap">
-        SELECT dept.id as jurisdiction,dept.dept_name AS title FROM blade_dept dept WHERE  dept.dept_name  like concat(concat('%', #{name}),'%')
+        SELECT dept.id as jurisdiction, dept.dept_name AS title
+        FROM blade_dept dept
+        WHERE dept.dept_name like concat(concat('%', #{name}), '%')
     </select>
 
     <select id="selectHold" resultType="java.util.HashMap">
-        SELECT
-            ISNULL(B.cz,0) as cz,
-            ISNULL(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
-        WHERE A.jurisdiction=#{deptid} GROUP BY cz,wcz
+        SELECT ISNULL(B.cz, 0)  as cz,
+               ISNULL(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
+        WHERE A.jurisdiction = #{deptid}
+        GROUP BY cz, wcz
     </select>
 
     <!--查询部门下面的所有单位-->
     <select id="selectId" resultType="java.util.HashMap">
-        SELECT id FROM blade_dept WHERE parent_id =#{id} and is_deleted = 0
+        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 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
+        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 !=1420222961377357825
           and dept.id !=1432625856013971457
         and dept.parent_id!=1420222961377357825
-        and dept.parent_id!=1432625856013971457
+        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 id, dept_name deptName
+        from blade_dept
+        where is_deleted = 0
     </select>
 
     <!--懒加载获取部门树形结构,根据辖区查询-->
-    <select id="lazyTreeJurisdiction" resultMap="treeNodeResultMap" >
+    <select id="lazyTreeJurisdiction" resultMap="treeNodeResultMap">
         SELECT
         DISTINCT
         dept.id,
@@ -655,4 +774,134 @@
             and (sj.id = #{param1} or sj.parent_id = #{param1})
         </if>
     </select>
+
+    <!--查询树菜单,区以下-->
+    <select id="lazyTreeCity" resultMap="treeNodeResultMap">
+        (SELECT
+        id,
+        parent_id,
+        dept_name AS title,
+        id AS "value",
+        id AS "key",
+        1 AS "has_children"
+        from blade_dept
+        where id = #{param2})
+
+        union
+        (
+        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="param2!=null and param2!=0">
+            and dept.parent_id = #{param2}
+        </if>
+        <if test="param1!=null and param1!=''">
+            and dept.tenant_id = #{param1}
+        </if>
+        )
+    </select>
+
+    <!--查询树菜单,区以下-->
+    <select id="lazyTreeCityOne" resultMap="treeNodeResultMap">
+        SELECT id,
+               parent_id,
+               dept_name AS title,
+               id        AS "value",
+               id        AS "key",
+               0         AS "has_children"
+        from blade_dept
+        where id = #{param2}
+    </select>
+
+    <!--查询用户信息-->
+    <select id="getUserInfoById" resultType="org.springblade.modules.system.vo.UserVO">
+        select bu.*, bd.dept_name deptName, br.role_alias roleAlias
+        from blade_user bu
+                 left join
+             blade_dept bd
+             on
+                 bu.dept_id = bd.id
+                 left join
+             blade_role br
+             on
+                 br.id = bu.role_id
+        where bu.id = #{param1}
+    </select>
+
+    <!--查所有公安局数据 tree -->
+    <select id="lazyTreeByJurisdiction" 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 sys_jurisdiction
+                   WHERE parent_id = sj.id
+                     and is_deleted = 0
+               )              AS "has_children"
+        FROM sys_jurisdiction sj
+                 left join
+             blade_dept dept
+             on
+                 sj.dept_name = dept.dept_name
+    </select>
+
+    <select id="selectInfos" 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 parent_id NOT IN
+              ('1123598813738675201', '1415619841521414145', '1415619917295710209', '1415619986417840129',
+               '1415620058526314497', '1415620118307729409', '1415620188289691649', '1415620235718881282',
+               '1415620288487419906', '1415620344112279553', '1415620404103409666', '1415620472965492738',
+               '1415620707473223681')
+    </select>
+
+
+    <!--查询当前保安单位下的派遣单位信息-->
+    <select id="getDispatchUnitList" resultMap="treeNodeResultMap">
+        SELECT
+        id,
+        0 as parent_id,
+        name AS title,
+        id AS "value",
+        id AS "key",
+        0 AS "has_children"
+        FROM
+        sys_dispatcher_unit
+        where dept_id = #{deptId}
+    </select>
+
 </mapper>

--
Gitblit v1.9.3