From 02e7ca80d849ad8a99974bd08f9e68a78f36d601 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期二, 16 一月 2024 21:51:45 +0800
Subject: [PATCH] 分类授权数据授权界面编写与接口修改

---
 Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml |   60 +++++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 51 insertions(+), 9 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 e2cdeb6..8316436 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
@@ -197,7 +197,6 @@
                         #{item}
                     </foreach>
                   ) ) )
-
             UNION ALL
 
             SELECT
@@ -218,6 +217,24 @@
                     #{item}
                 </foreach>)
         ) menu ORDER BY sort
+    </select>
+
+    <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
+          <if test="roleId != null and roleId != ''">
+              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
+            AND ps.CODE = #{code}
+          </if>
+        ORDER BY pm.SORT ASC
     </select>
 
     <select id="grantTree" resultMap="treeNodeResultMap">
@@ -488,15 +505,40 @@
           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>
+          <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 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
+        <if test="code != null and code != ''">
+            AND ps.ID = pm.PARENT_ID
+            AND ps.CODE = #{code}
+        </if>
+        <if test="ids != null and ids != ''">
+            AND ps.ID IN (
+                <foreach collection="ids" index="index" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            )
+        </if>
+        ORDER BY pm.SORT ASC
+    </select>
+
 </mapper>

--
Gitblit v1.9.3