From 02b3d584d201ca7cb8a024fd151fe6eddbf43def Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期五, 01 三月 2024 16:31:10 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml | 643 +++++++++++++++++++++++++++++++---------------------------
1 files changed, 342 insertions(+), 301 deletions(-)
diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml b/Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml
index a1bb3af..0ec2a53 100644
--- a/Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml
@@ -44,19 +44,19 @@
<result column="key" property="key"/>
</resultMap>
- <select id="lazyList" resultMap="menuVOResultMap">
+ <select id="lazyList" resultMap="menuVOResultMap">
SELECT
- menu.*,
- (
- SELECT
- CASE WHEN count( 1 ) > 0 THEN 1 ELSE 0 END
- FROM
- pl_sys_menu
- WHERE
- parent_id = menu.id AND is_deleted = 0
+ menu.*,
+ (
+ SELECT
+ CASE WHEN count( 1 ) > 0 THEN 1 ELSE 0 END
+ FROM
+ pl_sys_menu
+ WHERE
+ parent_id = menu.id AND is_deleted = 0
) AS "has_children"
FROM
- pl_sys_menu menu
+ pl_sys_menu menu
WHERE menu.is_deleted = 0
<if test="param1!=null">
and menu.parent_id = #{param1}
@@ -75,17 +75,17 @@
<select id="lazyMenuPage" resultMap="menuVOResultMap">
SELECT
- menu.*,
- (
- SELECT
- CASE WHEN count( 1 ) > 0 THEN 1 ELSE 0 END
+ menu.*,
+ (
+ SELECT
+ CASE WHEN count( 1 ) > 0 THEN 1 ELSE 0 END
FROM
- pl_sys_menu
+ pl_sys_menu
WHERE
- parent_id = menu.id AND is_deleted = 0 AND category = 1
+ parent_id = menu.id AND is_deleted = 0 AND category = 1
) AS "has_children"
FROM
- pl_sys_menu menu
+ pl_sys_menu menu
WHERE menu.is_deleted = 0 AND menu.category = 1
<if test="param1!=null">
and menu.parent_id = #{param1}
@@ -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">
@@ -127,49 +133,56 @@
<select id="roleMenuByRoleId" resultMap="menuResultMap">
select * 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>
- )
+ ( SELECT menu_id FROM pl_org_role_menu WHERE role_id IN
+ <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ )
</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>
<select id="routes" resultMap="menuResultMap">
SELECT
- *
+ *
FROM
- pl_sys_menu
+ pl_sys_menu
WHERE
- is_deleted = 0 and category = 1
- 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> )
+ is_deleted = 0 and category = 1
+ 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>
+ )
</select>
<select id="allButtons" resultMap="menuResultMap">
- SELECT
- id,
- parent_id,
- CODE,
- NAME,
- alias,
- path,
- source,
+ SELECT id,
+ parent_id,
+ CODE,
+ NAME,
+ alias,
+ path,
+ source,
action,
sort
FROM
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
@@ -177,81 +190,78 @@
<select id="buttons" resultMap="menuResultMap">
SELECT * FROM (
- SELECT
- id,
- parent_id,
- code,
- name,
- alias,
- path,
- source,
- action,
- sort
- FROM
- pl_sys_menu
- WHERE
- is_deleted = 0 and id IN (
- SELECT parent_id FROM pl_sys_menu
- WHERE ( category = 2 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>
- ) ) )
- UNION ALL
+ SELECT
+ id,
+ parent_id,
+ code,
+ name,
+ alias,
+ path,
+ source,
+ action,
+ sort
+ FROM
+ pl_sys_menu
+ WHERE
+ is_deleted = 0 and id IN (
+ SELECT parent_id FROM pl_sys_menu
+ WHERE ( category = 2 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>
+ ) ) )
+ UNION ALL
- SELECT
- id,
- parent_id,
- code,
- name,
- alias,
- path,
- source,
- action,
- sort
- FROM
- pl_sys_menu
- WHERE
- is_deleted = 0 and category = 2 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>)
+ SELECT
+ id,
+ parent_id,
+ code,
+ name,
+ alias,
+ path,
+ source,
+ action,
+ sort
+ FROM
+ pl_sys_menu
+ WHERE
+ is_deleted = 0 and category = 2 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>)
) menu ORDER BY sort
</select>
- <select id="getButtonByParentCode" resultMap="menuResultMap">
- SELECT
- id,
- parent_id,
- code,
- name,
- alias,
- PATH,
- SOURCE,
- ACTION,
- sort
- FROM
- PL_SYS_MENU
+ <select id="getButtonsByRoleIdAndCode" resultMap="menuResultMap">
+ SELECT pm.*
+ FROM PL_SYS_MENU ps,
+ PL_SYS_MENU pm
+ <if test="roleId != null and roleId != ''">
+ ,PL_ORG_ROLE_MENU prom
+ </if>
WHERE
- "CATEGORY" = '2'
- AND IS_DELETED = 0
- AND PARENT_ID IN (
- SELECT
- ID
- FROM
- PL_SYS_MENU
- WHERE
- CODE = #{code})
+ ps."CATEGORY" = 1
+ <if test="roleId != null and roleId != ''">
+ AND pm.ID = prom.MENU_ID
+ AND prom.ROLE_ID = #{roleId}
+ </if>
+ AND pm.IS_DELETED = 0
+ <if test="code != null and code != ''">
+ AND ps.ID = pm.PARENT_ID
+ AND ps.CODE = #{code}
+ </if>
+ ORDER BY pm.SORT ASC
</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
+ id as "value",
+ id as "key"
+ from pl_sys_menu
+ where is_deleted = 0
+ order by sort
</select>
<select id="grantTreeByRole" resultMap="treeNodeResultMap">
@@ -259,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> )
- 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> )
- )
- 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>
-
- <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
- 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>
+
+ <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
+ 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>
+ )
+ 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>
+ )
)
order by sort
</select>
<select id="grantDataScopeTree" resultMap="treeNodeResultMap">
- SELECT
- *
- FROM
- (
- 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_auth_scope_data WHERE is_deleted = 0 AND menu_id IS NOT NULL )
- ) menu
+ SELECT *
+ FROM (
+ 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_auth_scope_data WHERE is_deleted = 0 AND menu_id IS NOT NULL)
+ ) menu
UNION ALL
- 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
+ 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
AND menu_id IS NOT NULL
</select>
<select id="grantApiScopeTree" resultMap="treeNodeResultMap">
- SELECT
- *
- FROM
- (
- 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_auth_scope_api WHERE is_deleted = 0 AND menu_id IS NOT NULL )
- ) menu
+ SELECT *
+ FROM (
+ 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_auth_scope_api WHERE is_deleted = 0 AND menu_id IS NOT NULL)
+ ) menu
UNION ALL
- 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
+ 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
AND menu_id IS NOT NULL
</select>
@@ -363,61 +366,63 @@
*
FROM
(
- 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_auth_scope_data WHERE is_deleted = 0 AND menu_id IS NOT NULL )
- 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>
- )
- 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> )
- )
- )
+ 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_auth_scope_data WHERE is_deleted = 0 AND menu_id IS NOT NULL )
+ 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>
+ )
+ 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>
+ )
+ )
+ )
) menu
UNION ALL
SELECT
- id,
- menu_id AS parent_id,
- scope_name AS title,
- id AS "value",
- id AS "key"
+ id,
+ menu_id AS parent_id,
+ scope_name AS title,
+ id AS "value",
+ id AS "key"
FROM
- pl_auth_scope_data
+ pl_auth_scope_data
WHERE
- is_deleted = 0
+ is_deleted = 0
AND (
- menu_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>
- )
- OR menu_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> )
- )
+ menu_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>
+ )
+ OR menu_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>
+ )
+ )
)
AND menu_id IS NOT NULL
</select>
@@ -427,100 +432,136 @@
*
FROM
(
- 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_auth_scope_api WHERE is_deleted = 0 AND menu_id IS NOT NULL )
- 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>
- )
- 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> )
- )
- )
+ 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_auth_scope_api WHERE is_deleted = 0 AND menu_id IS NOT NULL )
+ 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>
+ )
+ 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>
+ )
+ )
+ )
) menu
UNION ALL
SELECT
- id,
- menu_id AS parent_id,
- scope_name AS title,
- id AS "value",
- id AS "key"
+ id,
+ menu_id AS parent_id,
+ scope_name AS title,
+ id AS "value",
+ id AS "key"
FROM
- pl_auth_scope_api
+ pl_auth_scope_api
WHERE
- is_deleted = 0
+ is_deleted = 0
AND
- (
- menu_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>
- )
- OR menu_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> )
- )
+ (
+ menu_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>
+ )
+ OR menu_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>
+ )
+ )
)
AND menu_id IS NOT NULL
</select>
<select id="authRoutes" resultType="com.vci.ubcs.system.dto.MenuDTO">
SELECT
- GROUP_CONCAT(r.role_alias) as alias,
- m.path
+ GROUP_CONCAT(r.role_alias) as alias,
+ m.path
FROM
- pl_org_role_menu rm
- LEFT JOIN pl_sys_menu m ON rm.menu_id = m.id
- LEFT JOIN pl_org_role r ON rm.role_id = r.id
+ pl_org_role_menu rm
+ LEFT JOIN pl_sys_menu m ON rm.menu_id = m.id
+ LEFT JOIN pl_org_role r ON rm.role_id = r.id
WHERE
- rm.role_id IN
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- AND m.path IS NOT NULL and m.is_deleted = 0
+ rm.role_id IN
+ <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ AND m.path IS NOT NULL and m.is_deleted = 0
GROUP BY m.path
</select>
<select id="selectMenuChildByBtnType" resultMap="menuResultMap">
select pm.*
- from pl_sys_menu ps, pl_sys_menu pm
+ from pl_sys_menu ps, pl_sys_menu pm
where pm.is_deleted = 0
- and ps.category = 1
- and ps.CODE = #{btmType}
- and ps.ID = pm.PARENT_ID
- <if test="roleIds != null and roleIds != ''">
- 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>
+ and ps.category = 1
+ and ps.CODE = #{btmType}
+ and ps.ID = pm.PARENT_ID
+ <if test="roleIds != null and roleIds != ''">
+ 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
+ DISTINCT 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
+ <foreach collection="roleIds" index="index" item="item" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ </if>
+ <if test="ids != null and ids != ''">
+ AND pm.ID IN
+ <foreach collection="ids" index="index" item="item" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ </if>
+ ORDER BY SORT ASC
+ </select>
+
</mapper>
--
Gitblit v1.9.3