智慧保安后台管理项目备份
tangzy
2021-09-17 edfba0ab647b6fc0b9e4b4057a7a090f9bd82423
src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
@@ -104,31 +104,26 @@
    <!--懒加载获取部门树形结构(包含用户数据)-->
    <select id="lazyTreeUser" resultMap="treeNodeResultMap">
        select DISTINCT  * from (
            (SELECT
              dept.id,
        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
                             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
                  FROM blade_dept dept
                  WHERE dept.is_deleted = 0
            )
            union
            (select
                id,
                 (select id,
                dept_id  parent_id,
                real_name AS title,
                id AS "value",
@@ -324,28 +319,23 @@
    <select id="lazyTrees" resultMap="treeNodeResultMap">
    SELECT
        dept.id,
        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 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
        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>
@@ -363,37 +353,48 @@
    </select>
    <select id="selectIn" resultType="java.util.HashMap">
        SELECT
            id as deptid,
        SELECT id        as deptid,
            dept_name as deptname
        FROM
            blade_dept where is_deleted = 0
        FROM blade_dept
        where is_deleted = 0
    </select>
    <!--统计单位类型数量-->
    <select id="selectCount" resultType="java.util.HashMap">
        SELECT
            id as jurisdiction,
        SELECT id        as jurisdiction,
            dept_name AS title
        FROM
            sys_jurisdiction
        WHERE
            is_deleted = 0 AND  parent_id!=0
        FROM sys_jurisdiction
        WHERE is_deleted = 0
          AND parent_id!=0
    </select>
    <select id="selectHold" resultType="java.util.HashMap">
        SELECT
            IFNULL(B.cz,0) as cz,
            IFNULL(C.wcz,0) as wcz
        SELECT IFNULL(B.cz, 0)  as cz,
               IFNULL(C.wcz, 0) as wcz,
               A.jurisdiction
        FROM (SELECT jurisdiction FROM blade_user ) A
            LEFT JOIN (SELECT COUNT(hold) as cz,jurisdiction FROM blade_user WHERE hold=0 and status=1 GROUP BY jurisdiction ) B ON A.jurisdiction=B.jurisdiction
            LEFT JOIN (SELECT COUNT(hold) as wcz,jurisdiction FROM blade_user WHERE hold=1 and status=1 GROUP BY jurisdiction ) C ON A.jurisdiction=C.jurisdiction
        WHERE A.jurisdiction in(${deptid}) GROUP BY cz,wcz
                 LEFT JOIN (SELECT COUNT(hold) as cz, jurisdiction
                            FROM blade_user
                            WHERE hold = 1
                              AND role_id = '1412226235153731586'
                              and status = 1
                            GROUP BY jurisdiction) B ON A.jurisdiction = B.jurisdiction
                 LEFT JOIN (SELECT COUNT(hold) as wcz, jurisdiction
                            FROM blade_user
                            WHERE hold = 2
                              AND role_id = '1412226235153731586'
                              and status = 1
                            GROUP BY jurisdiction) C ON A.jurisdiction = C.jurisdiction
        WHERE A.jurisdiction in (${deptid})
        GROUP BY cz, wcz, jurisdiction
    </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>
    <select id="securityLazyTree" resultMap="treeNodeResultMap">
        SELECT