ludc
2024-01-17 2ff8dd1f7d2f71944c25c9e116d12d9fb418ac0a
Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml
@@ -103,11 +103,17 @@
    </select>
    <select id="tree" resultMap="treeNodeResultMap">
        select id, parent_id, name as title, id as "value", id as "key" from pl_sys_menu where is_deleted = 0 and category = 1
        select id, parent_id, name as title, id as "value", id as "key"
        from pl_sys_menu
        where is_deleted = 0
          and category = 1
    </select>
    <select id="allMenu" resultMap="menuResultMap">
        select * from pl_sys_menu where is_deleted = 0 and category = 1
        select *
        from pl_sys_menu
        where is_deleted = 0
          and category = 1
    </select>
    <select id="roleMenu" resultMap="menuResultMap">
@@ -135,9 +141,14 @@
    </select>
    <select id="roleMenuByTopMenuId" resultMap="menuResultMap">
        select * from pl_sys_menu where is_deleted = 0 and id IN
        select *
        from pl_sys_menu
        where is_deleted = 0
          and id IN
              (
                  SELECT menu_id FROM pl_sys_top_menu_setting WHERE top_menu_id = #{param1}
                  SELECT menu_id
                  FROM pl_sys_top_menu_setting
                  WHERE top_menu_id = #{param1}
              )
    </select>
@@ -151,12 +162,12 @@
            and id IN ( SELECT menu_id FROM pl_org_role_menu WHERE role_id IN
                        <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
                            #{item}
                        </foreach> )
        </foreach>
        )
    </select>
    <select id="allButtons" resultMap="menuResultMap">
        SELECT
            id,
        SELECT id,
            parent_id,
            CODE,
            NAME,
@@ -169,7 +180,9 @@
            pl_sys_menu
        WHERE
            (
                category = 2 OR id IN ( SELECT parent_id FROM pl_sys_menu WHERE is_deleted = 0 AND category = 2 )
            category = 2
           OR id IN ( SELECT parent_id FROM pl_sys_menu WHERE is_deleted = 0
          AND category = 2 )
            )
          AND is_deleted = 0
        ORDER BY sort
@@ -222,13 +235,16 @@
    <select id="getButtonsByRoleIdAndCode" resultMap="menuResultMap">
        SELECT pm.*
        FROM PL_SYS_MENU ps,
             PL_SYS_MENU pm,
             PL_ORG_ROLE_MENU prom
        WHERE ps.ID = prom.MENU_ID
        PL_SYS_MENU pm
          <if test="roleId != null and roleId != ''">
            ,PL_ORG_ROLE_MENU prom
        </if>
        WHERE
        ps."CATEGORY" = 1
        <if test="roleId != null and roleId != ''">
            AND ps.ID = prom.MENU_ID
              AND prom.ROLE_ID = #{roleId}
          </if>
            AND ps."CATEGORY" = 1
            AND pm.IS_DELETED = 0
          <if test="code != null and code != ''">
            AND ps.ID = pm.PARENT_ID
@@ -238,13 +254,14 @@
    </select>
    <select id="grantTree" resultMap="treeNodeResultMap">
        select
               id,
        select id,
               parent_id,
               name as title,
               id as "value",
               id as "key"
        from pl_sys_menu where is_deleted = 0 order by sort
        from pl_sys_menu
        where is_deleted = 0
        order by sort
    </select>
    <select id="grantTreeByRole" resultMap="treeNodeResultMap">
@@ -252,102 +269,95 @@
        and id in ( select menu_id from pl_org_role_menu where role_id in
        <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
            #{item}
        </foreach> )
        </foreach>
        )
        or id in (
            select parent_id from pl_sys_menu where is_deleted = 0
            and id in ( select menu_id from pl_org_role_menu where role_id in
            <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
                #{item}
            </foreach> )
        </foreach>
        )
          )
        order by sort
    </select>
    <select id="grantTopTree" resultMap="treeNodeResultMap">
        select id, parent_id, name as title, id as "value", id as "key" from pl_sys_menu where category = 1 and is_deleted = 0 order by sort
        select id, parent_id, name as title, id as "value", id as "key"
        from pl_sys_menu
        where category = 1
          and is_deleted = 0
        order by sort
    </select>
    <select id="grantTopTreeByRole" resultMap="treeNodeResultMap">
        select id, parent_id, name as title, id as "value", id as "key" from pl_sys_menu where category = 1 and is_deleted = 0
        select id, parent_id, name as title, id as "value", id as "key" from pl_sys_menu where category = 1 and
        is_deleted = 0
        and id in ( select menu_id from pl_org_role_menu where role_id in
        <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
            #{item}
        </foreach> )
        </foreach>
        )
        or id in (
        select parent_id from pl_sys_menu where is_deleted = 0
        and id in ( select menu_id from pl_org_role_menu where role_id in
        <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
            #{item}
        </foreach> )
        </foreach>
        )
        )
        order by sort
    </select>
    <select id="grantDataScopeTree" resultMap="treeNodeResultMap">
        SELECT
            *
        FROM
            (
                SELECT
                    id,
        SELECT *
        FROM (
                 SELECT id,
                    parent_id,
                    NAME AS title,
                    id AS "value",
                    id AS "key"
                FROM
                    pl_sys_menu
                WHERE
                    category = 1
                 FROM pl_sys_menu
                 WHERE category = 1
                  AND is_deleted = 0
                  AND id IN ( SELECT menu_id FROM pl_auth_scope_data WHERE is_deleted = 0 AND menu_id IS NOT NULL )
            ) menu
        UNION ALL
        SELECT
            id,
        SELECT id,
            menu_id AS parent_id,
            scope_name AS title,
            id AS "value",
            id AS "key"
        FROM
            pl_auth_scope_data
        WHERE
            is_deleted = 0
        FROM pl_auth_scope_data
        WHERE is_deleted = 0
          AND menu_id IS NOT NULL
    </select>
    <select id="grantApiScopeTree" resultMap="treeNodeResultMap">
        SELECT
            *
        FROM
            (
                SELECT
                    id,
        SELECT *
        FROM (
                 SELECT id,
                    parent_id,
                    NAME AS title,
                    id AS "value",
                    id AS "key"
                FROM
                    pl_sys_menu
                WHERE
                    category = 1
                 FROM pl_sys_menu
                 WHERE category = 1
                  AND is_deleted = 0
                  AND id IN ( SELECT menu_id FROM pl_auth_scope_api WHERE is_deleted = 0 AND menu_id IS NOT NULL )
            ) menu
        UNION ALL
        SELECT
            id,
        SELECT id,
            menu_id AS parent_id,
            scope_name AS title,
            id AS "value",
            id AS "key"
        FROM
            pl_auth_scope_api
        WHERE
            is_deleted = 0
        FROM pl_auth_scope_api
        WHERE is_deleted = 0
          AND menu_id IS NOT NULL
    </select>
@@ -380,7 +390,8 @@
                    and id in ( select menu_id from pl_org_role_menu where role_id in
                    <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
                        #{item}
                    </foreach> )
        </foreach>
        )
                )
            )
        ) menu
@@ -409,7 +420,8 @@
                and id in ( select menu_id from pl_org_role_menu where role_id in
                <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
                    #{item}
                </foreach> )
        </foreach>
        )
            )
        )
        AND menu_id IS NOT NULL
@@ -445,7 +457,8 @@
                        select menu_id from pl_org_role_menu where role_id in
                    <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
                        #{item}
                    </foreach> )
        </foreach>
        )
                )
            )
        ) menu
@@ -475,7 +488,8 @@
                    and id in ( select menu_id from pl_org_role_menu where role_id in
                    <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
                        #{item}
                    </foreach> )
        </foreach>
        )
                )
        )
        AND menu_id IS NOT NULL
@@ -506,39 +520,45 @@
          and ps.CODE = #{btmType}
          and ps.ID = pm.PARENT_ID
          <if test="roleIds != null and roleIds != ''">
            and ps.ID in (
            and ps.ID in
                SELECT menu_id FROM pl_org_role_menu WHERE role_id IN
                <foreach collection="roleIds" index="index" item="item" open="(" separator="," close=")">
                    #{item}
                </foreach>
            )
          </if>
        order by pm.sort asc
    </select>
    <select id="getButtonByIdsOrByParentCode" resultMap="menuResultMap">
        SELECT pm.*
        FROM PL_SYS_MENU ps,
        PL_SYS_MENU pm,
        PL_ORG_ROLE_MENU prom
        WHERE ps.ID = prom.MENU_ID
        <if test="roleIds != null and roleIds != ''">
            AND prom.ROLE_ID in (#{roleIds})
        </if>
          AND ps."CATEGORY" = 1
          AND pm.IS_DELETED = 0
        SELECT
            pm.*
        FROM
            PL_SYS_MENU pm
        <if test="code != null and code != ''">
                ,PL_SYS_MENU ps
            </if>
            <if test="roleIds != null and roleIds != ''">
                ,PL_ORG_ROLE_MENU prom
            </if>
        WHERE
            pm.IS_DELETED = 0
            AND pm."CATEGORY" = 2
            <if test="code != null and code != ''">
                AND ps."CATEGORY" = 1
            AND ps.ID = pm.PARENT_ID
            AND ps.CODE = #{code}
        </if>
            <if test="roleIds != null and roleIds != ''">
                AND pm.ID = prom.MENU_ID
                AND prom.ROLE_ID in (#{roleIds})
            </if>
        <if test="ids != null and ids != ''">
            AND ps.ID IN (
                AND pm.ID IN
                <foreach collection="ids" index="index" item="item" open="(" separator="," close=")">
                    #{item}
                </foreach>
            )
        </if>
        ORDER BY pm.SORT ASC
        ORDER BY SORT ASC
    </select>
</mapper>