From a957c1c914f6890c8a6a8c477495809b065fcbcf Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期五, 18 四月 2025 16:59:35 +0800
Subject: [PATCH] #
---
zy-acs-manager/src/main/resources/mapper/system/RoleMenuMapper.xml | 26 +++++++++++---------------
1 files changed, 11 insertions(+), 15 deletions(-)
diff --git a/zy-acs-manager/src/main/resources/mapper/system/RoleMenuMapper.xml b/zy-acs-manager/src/main/resources/mapper/system/RoleMenuMapper.xml
index 2e9e637..bde61c5 100644
--- a/zy-acs-manager/src/main/resources/mapper/system/RoleMenuMapper.xml
+++ b/zy-acs-manager/src/main/resources/mapper/system/RoleMenuMapper.xml
@@ -3,23 +3,19 @@
<mapper namespace="com.zy.acs.manager.system.mapper.RoleMenuMapper">
<select id="listMenuByUserId" resultType="com.zy.acs.manager.system.entity.Menu">
- select * from sys_menu
- where 1=1
+ SELECT DISTINCT sm.*
+ FROM sys_menu sm
+ JOIN sys_role_menu srm ON sm.id = srm.menu_id
+ JOIN sys_user_role sur ON srm.role_id = sur.role_id
+ JOIN sys_role sr ON sur.role_id = sr.id
+ WHERE 1=1
<if test="type != null">
- AND type = #{type}
+ AND sm.type = #{type}
</if>
- and deleted = 0
- and id in (
- select menu_id from sys_role_menu
- where role_id in (
- select sur.role_id from sys_user_role sur
- left join sys_role sr on sur.role_id = sr.id
- where 1=1
- and sur.user_id = #{userId}
- and sr.deleted = 0
- )
- )
- order by sort
+ AND sur.user_id = #{userId}
+ AND sr.deleted = 0
+ AND sm.deleted = 0
+ ORDER BY sm.sort
</select>
<select id="listStrictlyMenuByRoleId" resultType="java.lang.Long">
--
Gitblit v1.9.1