Преглед изворни кода

修复切换租户后分配角色后菜单接口数据异常问题

fuyuchuan пре 5 дана
родитељ
комит
3874765a81

+ 3 - 1
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysMenuMapper.java

@@ -86,7 +86,9 @@ public interface SysMenuMapper extends CrudMapper<SysMenu> {
      * @param platformId 应用ID
      * @return 应用级菜单列表
      */
-    public List<SysMenu> selectMenuTreeByUserId1(@Param("userId") Long userId,@Param("platformId") Long platformId);
+    public List<SysMenu> selectMenuTreeByUserId1(@Param("userId") Long userId,
+                                                 @Param("platformId") Long platformId,
+                                                 @Param("tenantId") Integer tenantId);
 
     public List<SysMenu> selectMenuTreeByUserIdOne(@Param("tenantId") Integer tenantId);
 

+ 1 - 1
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/ISysMenuService.java

@@ -71,7 +71,7 @@ public interface ISysMenuService extends CrudService<SysMenu>
      * @param userId 用户ID
      * @return 菜单列表
      */
-    public List<SysMenu> selectMenuTreeByUserId1(Long userId,Long platformId);
+    public List<SysMenu> selectMenuTreeByUserId1(Long userId,Long platformId, Integer tenantId);
 
     List<SysMenu> selectMenuTreeByUserIdOne(Integer tenantId);
 

+ 3 - 3
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysMenuServiceImpl.java

@@ -172,12 +172,12 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
      * @return 菜单列表
      */
     @Override
-    public List<SysMenu> selectMenuTreeByUserId1(Long userId, Long platformId) {
+    public List<SysMenu> selectMenuTreeByUserId1(Long userId, Long platformId, Integer tenantId) {
         List<SysMenu> menus = null;
         if (1L == userId) {
             menus = menuMapper.selectMenuTreeAll();
         } else {
-            menus = menuMapper.selectMenuTreeByUserId1(userId, platformId);
+            menus = menuMapper.selectMenuTreeByUserId1(userId, platformId, tenantId);
         }
         return getChildPerms(menus, 0);
     }
@@ -340,7 +340,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
                         platformRouterVo.setPlatformName(platformVo.getPlatformName());
                         platformRouterVo.setIcon(platformVo.getIcon());
                         List<SysMenu> menus1 = this.selectMenuTreeByUserId1(userId,
-                                platformVo.getId().longValue());
+                                platformVo.getId().longValue(), tenantId);
                         List<RouterVo> routers = new LinkedList<RouterVo>();
                         for (SysMenu menu : menus1) {
                             RouterVo router = new RouterVo();

+ 2 - 1
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysMenuMapper.xml

@@ -204,7 +204,7 @@
         order by m.parent_id, m.order_num
     </select>
 
-    <select id="selectMenuTreeByUserId1" parameterType="Long" resultMap="SysMenuResult">
+    <select id="selectMenuTreeByUserId1" parameterType="map" resultMap="SysMenuResult">
         select distinct m.menu_id,
                         m.parent_id,
                         m.menu_name,
@@ -230,6 +230,7 @@
                  left join sys_user u on u.user_id = ur.user_id
                  left join sys_tenant_menu t on u.tenant_id = t.tenant_id
         where u.user_id = #{userId}
+          and ur.tenant_id = #{tenantId}
           and m.menu_type in ('M', 'C')
           and m.status = 0
           AND ro.status = 0