From 30df94c05573a426d030510d4dd58ae1d93bfb7a Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Mon, 06 Dec 2021 14:03:37 +0800
Subject: [PATCH] 1.资格审查排序

---
 src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml |  525 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 492 insertions(+), 33 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..f72ab34 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,404 @@
         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="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-->
+<!--										left join-->
+<!--										sys_information si-->
+<!--										on-->
+<!--										si.departmentid = dept.id-->
+<!--                    WHERE-->
+<!--                        dept.is_deleted = 0-->
+<!--						and si.stats = 2-->
+<!--                        and si.departmentid !=1432626178757275649-->
+<!--                        and si.departmentid !=1445980335107002370-->
+<!--                        and si.departmentid !=1442115701350387714-->
+<!--            )-->
+<!--            union-->
+<!--            (select-->
+<!--                bu.id,-->
+<!--                bu.dept_id  parent_id,-->
+<!--                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-->
+<!--                                sys_information si-->
+<!--                                on-->
+<!--                                si.departmentid = bd.id-->
+<!--                                where bd.is_deleted = 0-->
+<!--                                and bu.is_deleted = 0-->
+<!--                                and bu.`status` =1-->
+<!--                                and si.stats = 2-->
+<!--                                and si.departmentid !=1432626178757275649-->
+<!--                                and si.departmentid !=1445980335107002370-->
+<!--                                and si.departmentid !=1442115701350387714-->
+<!--            )-->
+<!--        )c-->
+<!--    </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
+										left join
+										sys_information si
+										on
+										si.departmentid = dept.id
+                    WHERE
+                        dept.is_deleted = 0
+						and si.stats = 2
+                        and si.departmentid !=1432626178757275649
+                        and si.departmentid !=1445980335107002370
+                        and si.departmentid !=1442115701350387714
+            )
+            union
+            (select
+                bu.id,
+                bu.dept_id  parent_id,
+                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
+                                sys_information si
+                                on
+                                si.departmentid = bd.id
+                                where bd.is_deleted = 0
+                                and bu.is_deleted = 0
+                                and bu.`status` =1
+                                and si.stats = 2
+                                and si.departmentid !=1432626178757275649
+                                and si.departmentid !=1445980335107002370
+                                and si.departmentid !=1442115701350387714
+            )
+        )c
+    </select>
+
+    <!--111-->
+
+    <!--懒加载获取部门树形结构(包含用户数据)-->
+<!--    <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-->
+<!--										left join-->
+<!--										sys_information si-->
+<!--										on-->
+<!--										si.departmentid = dept.id-->
+<!--                    WHERE-->
+<!--                        dept.is_deleted = 0-->
+<!--												and si.stats = 2-->
+<!--												and (si.departmentid = 1442114073838800898-->
+<!--												or si.departmentid = 1442115701350387714)-->
+<!--            )-->
+
+<!--            union-->
+
+<!--            (select-->
+<!--                bu.id,-->
+<!--                bu.dept_id  parent_id,-->
+<!--                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-->
+<!--								sys_information si-->
+<!--								on-->
+<!--								si.departmentid = bd.id-->
+<!--								where bd.is_deleted = 0-->
+<!--								and bu.is_deleted = 0-->
+<!--								and bu.`status` =1-->
+<!--								and si.stats = 2-->
+<!--								and (si.departmentid = 1442114073838800898-->
+<!--								or si.departmentid = 1442115701350387714)-->
+<!--            )-->
+<!--        )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,
@@ -163,13 +558,23 @@
     </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 IFNULL(B.cz, 0)  as cz,
+               IFNULL(C.wcz, 0) as wcz
+        FROM (SELECT departmentid,jurisdiction FROM sys_information) A
+                 LEFT JOIN (SELECT COUNT(hold) as cz, dept_id
+                            FROM blade_user
+                            WHERE hold = 1
+                              AND role_id = '1412226235153731586'
+                              and status = 1
+                            GROUP BY dept_id) B ON A.departmentid = B.dept_id
+                 LEFT JOIN (SELECT COUNT(hold) as wcz, dept_id
+                            FROM blade_user
+                            WHERE hold = 2
+                              AND role_id = '1412226235153731586'
+                              and status = 1
+                            GROUP BY dept_id) C ON A.departmentid = C.dept_id
+        WHERE A.jurisdiction in(${deptid})
+        GROUP BY cz, wcz
     </select>
 
     <!--查询部门下面的所有单位-->
@@ -177,4 +582,58 @@
         SELECT id FROM blade_dept WHERE parent_id =#{id} and is_deleted = 0
     </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>
 </mapper>

--
Gitblit v1.9.3