智慧保安后台管理-验收版本
tangzy
2021-12-06 30df94c05573a426d030510d4dd58ae1d93bfb7a
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>