Kaynağa Gözat

Dev SysUserRole

tsurumure 7 ay önce
ebeveyn
işleme
07ba0c0225

+ 6 - 1
db/sys_user_role_permission.sql

@@ -75,7 +75,12 @@ INSERT INTO sys_user_role_permission(id, parent_id, permission_name, sort) VALUE
             ('4.1.3', '4.1', '系统角色-编辑', null),
             ('4.1.4', '4.1', '系统角色-删除', null),
             ('4.1.5', '4.1', '系统角色-权限列表', null),
-            ('4.1.6', '4.1', '系统角色-菜单列表', null),
+        ('4.3', '4', '系统菜单-列表', null),
+            ('4.3.1', '4.3', '系统菜单-详情', null),
+            ('4.3.2', '4.3', '系统菜单-创建', null),
+            ('4.3.3', '4.3', '系统菜单-编辑', null),
+            ('4.3.4', '4.3', '系统菜单-删除', null),
+
     ('5', -1, '系统日志管理', 901),
         ('5.1', '5', '系统日志-列表', null),
 

+ 8 - 2
db/sys_user_role_permission_relation.sql

@@ -19,7 +19,11 @@ INSERT INTO sys_user_role_permission_relation(role_id, permission_id) VALUES
 #         (1, '1.2'),
 #         (1, '1.3'),
 #             (1, '1.3.1'), (1, '1.3.2'), (1, '1.3.3'),
-    (1, '2'),
+
+
+#     (1, '2'),
+
+
     (1, '3'),
         (1, '3.1'),
         (1, '3.2'),
@@ -36,7 +40,9 @@ INSERT INTO sys_user_role_permission_relation(role_id, permission_id) VALUES
             (1, '3.5.1'), (1, '3.5.1.2'),
     (1, '4'),
         (1, '4.1'),
-            (1, '4.1.1'), (1, '4.1.2'), (1, '4.1.3'), (1, '4.1.4'), (1, '4.1.5'), (1, '4.1.6'),
+            (1, '4.1.1'), (1, '4.1.2'), (1, '4.1.3'), (1, '4.1.4'), (1, '4.1.5'),
+        (1, '4.3'),
+            (1, '4.3.1'), (1, '4.3.2'), (1, '4.3.3'), (1, '4.3.4'),
     (1, '5'),
         (1, '5.1'),
     (1, '10'),

+ 2 - 2
src/main/java/com/backendsys/modules/system/controller/SysUserRoleController.java

@@ -24,14 +24,14 @@ public class SysUserRoleController {
     @PreAuthorize("@ss.hasPermi('4.1')")
     @GetMapping("/api/system/user/getUserRoleList")
     public Result getUserRoleList(@Validated SysUserRole sysUserRole) {
-        return Result.success().put("data", sysUserRoleV2Service.getUserRoleList(sysUserRole));
+        return Result.success().put("data", sysUserRoleV2Service.selectUserRoleList(sysUserRole));
     }
 
     @Operation(summary = "获取系统用户角色详情")
     @PreAuthorize("@ss.hasPermi('4.1.1')")
     @GetMapping("/api/system/user/getUserRoleDetail")
     public Result getUserRoleDetail(@Validated(SysUserRole.Detail.class) SysUserRole sysUserRole) {
-        return Result.success().put("data", sysUserRoleV2Service.getUserRoleDetail(sysUserRole));
+        return Result.success().put("data", sysUserRoleV2Service.selectUserRoleDetail(sysUserRole));
     }
 
     @Operation(summary = "创建系统用户角色")

+ 13 - 2
src/main/java/com/backendsys/modules/system/controller/SysUserRoleMenuController.java

@@ -1,6 +1,8 @@
 package com.backendsys.modules.system.controller;
 
 import com.backendsys.modules.common.utils.Result;
+import com.backendsys.modules.system.entity.SysUserRole;
+import com.backendsys.modules.system.entity.SysUserRoleMenu;
 import com.backendsys.modules.system.service.SysUserRoleMenuService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
@@ -10,6 +12,8 @@ import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.Map;
+
 @Validated
 @RestController
 @Tag(name = "系统用户角色菜单")
@@ -19,10 +23,17 @@ public class SysUserRoleMenuController {
     private SysUserRoleMenuService sysUserRoleMenuService;
 
     @Operation(summary = "获取系统用户角色菜单列表")
-    @PreAuthorize("@ss.hasPermi('4.1.6')")
+    @PreAuthorize("@ss.hasPermi('4.3')")
     @GetMapping("/api/system/user/getUserRoleMenu")
     public Result getUserRoleMenu() {
-        return Result.success().put("data", sysUserRoleMenuService.getUserRoleMenu());
+        return Result.success().put("data", Map.of("list", sysUserRoleMenuService.selectUserRoleMenuList(null)));
+    }
+
+    @Operation(summary = "获取系统用户菜单详情")
+    @PreAuthorize("@ss.hasPermi('4.3.1')")
+    @GetMapping("/api/system/user/getUserRoleMenuDetail")
+    public Result getUserRoleDetail(@Validated(SysUserRoleMenu.Detail.class) SysUserRoleMenu sysUserRoleMenu) {
+        return Result.success().put("data", sysUserRoleMenuService.getUserRoleMenuDetail(sysUserRoleMenu));
     }
 
 }

+ 1 - 1
src/main/java/com/backendsys/modules/system/dao/SysUserRoleMenuDao.java

@@ -10,6 +10,6 @@ import java.util.Map;
 @Mapper
 public interface SysUserRoleMenuDao extends BaseMapper<SysUserRoleMenu> {
 
-    List<Map<String, Object>> selectMenuListSimple(List<String> permission_ids);
+    List<Map<String, Object>> selectUserRoleMenuList(List<String> permission_ids);
 
 }

+ 4 - 3
src/main/java/com/backendsys/modules/system/entity/SysUserRoleMenu.java

@@ -23,11 +23,12 @@ public class SysUserRoleMenu {
     public static interface Delete{}
 
     @TableId(type = IdType.AUTO)
+    @NotNull(message="id 不能为空", groups = { Detail.class, Update.class, Delete.class })
     private Long id;
 
-    @NotNull(message="role_id 不能为空", groups = { Detail.class, Update.class, Delete.class })
-    @TableField("id")
-    private Long sys_user_role_menu;
+//    @NotNull(message="sys_user_role_menu_id 不能为空", groups = { Detail.class, Update.class, Delete.class })
+//    @TableField("id")
+//    private Long sys_user_role_menu_id;
 
     private Long parent_id;
 

+ 4 - 4
src/main/java/com/backendsys/modules/system/service/SysUserRoleMenuService.java

@@ -7,10 +7,10 @@ import java.util.Map;
 
 public interface SysUserRoleMenuService {
 
-    // 获取系统用户角色菜单列表 (简约)(树型)
-    List<Map<String, Object>> selectMenuListSimple(List<String> permission_ids);
+    // 获取系统用户角色菜单列表
+    List<Map<String, Object>> selectUserRoleMenuList(List<String> permission_ids);
 
-    // 获取系统用户角色菜单列表 (全部)(树型)
-    List<SysUserRoleMenu> getUserRoleMenu();
+    // 获取系统用户角色菜单详情
+    SysUserRoleMenu getUserRoleMenuDetail(SysUserRoleMenu sysUserRoleMenu);
 
 }

+ 2 - 2
src/main/java/com/backendsys/modules/system/service/SysUserRoleV2Service.java

@@ -9,8 +9,8 @@ import java.util.Map;
 
 public interface SysUserRoleV2Service extends IService<SysUserRole> {
 
-    PageEntity getUserRoleList(SysUserRole sysUserRole);
-    SysUserRole getUserRoleDetail(SysUserRole sysUserRole);
+    PageEntity selectUserRoleList(SysUserRole sysUserRole);
+    SysUserRole selectUserRoleDetail(SysUserRole sysUserRole);
     Map<String, Object> insertUserRole(SysUserRole sysUserRole);
     Map<String, Object> updateUserRole(SysUserRole sysUserRole);
     Map<String, Object> deleteUserRole(SysUserRole sysUserRole);

+ 61 - 51
src/main/java/com/backendsys/modules/system/service/impl/SysUserRoleMenuServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.convert.Convert;
 import com.backendsys.modules.system.dao.SysUserRoleMenuDao;
 import com.backendsys.modules.system.entity.SysUserRoleMenu;
 import com.backendsys.modules.system.service.SysUserRoleMenuService;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -20,46 +21,57 @@ public class SysUserRoleMenuServiceImpl implements SysUserRoleMenuService {
     @Autowired
     private SysUserRoleMenuDao sysUserRoleMenuDao;
 
-    // 转为树型结构 (SysUserRoleMenu)
-    public static List<SysUserRoleMenu> buildTree(List<SysUserRoleMenu> sysUserRoleMenuList) {
-        // 创建一个Map来存储id和SysUserRoleMenu对象的映射关系
-        Map<Long, SysUserRoleMenu> map = new HashMap<>();
-        // 遍历sysUserRoleMenuList,将每个SysUserRoleMenu对象放入map中
-        for (SysUserRoleMenu menu : sysUserRoleMenuList) {
-            map.put(menu.getId(), menu);
-        }
-
-        // 创建一个List来存储最父级的SysUserRoleMenu对象
-        List<SysUserRoleMenu> rootMenus = new ArrayList<>();
-
-        // 创建一个List来存储需要删除的SysUserRoleMenu对象
-        List<SysUserRoleMenu> toRemove = new ArrayList<>();
+//    // 转为树型结构 (SysUserRoleMenu)
+//    public static List<SysUserRoleMenu> buildTree(List<SysUserRoleMenu> sysUserRoleMenuList) {
+//        // 创建一个Map来存储id和SysUserRoleMenu对象的映射关系
+//        Map<Long, SysUserRoleMenu> map = new HashMap<>();
+//        // 遍历sysUserRoleMenuList,将每个SysUserRoleMenu对象放入map中
+//        for (SysUserRoleMenu menu : sysUserRoleMenuList) {
+//            map.put(menu.getId(), menu);
+//        }
+//
+//        // 创建一个List来存储最父级的SysUserRoleMenu对象
+//        List<SysUserRoleMenu> rootMenus = new ArrayList<>();
+//
+//        // 创建一个List来存储需要删除的SysUserRoleMenu对象
+//        List<SysUserRoleMenu> toRemove = new ArrayList<>();
+//
+//        // 遍历sysUserRoleMenuList,构建树型结构
+//        for (SysUserRoleMenu menu : sysUserRoleMenuList) {
+//            // 如果parent_id不等于-1,说明该SysUserRoleMenu对象有父节点
+//            if (menu.getParent_id().equals(-1)) {
+//                // 如果parent_id等于-1,说明该SysUserRoleMenu对象是最父级节点,直接放入rootMenus中
+//                rootMenus.add(menu);
+//            } else {
+//                // 获取其父节点
+//                SysUserRoleMenu parentMenu = map.get(menu.getParent_id());
+//                // 如果父节点存在,则将该SysUserRoleMenu对象放入父节点的children列表中
+//                if (parentMenu != null) {
+//                    if (parentMenu.getChildren() == null) {
+//                        parentMenu.setChildren(new ArrayList<>());
+//                    }
+//                    parentMenu.getChildren().add(menu);
+//                    // 将该SysUserRoleMenu对象添加到toRemove列表中
+//                    toRemove.add(menu);
+//                }
+//            }
+//        }
+//
+//        // 删除已经被放入children列表中的SysUserRoleMenu对象
+//        sysUserRoleMenuList.removeAll(toRemove);
+//        return rootMenus;
+//    }
 
-        // 遍历sysUserRoleMenuList,构建树型结构
-        for (SysUserRoleMenu menu : sysUserRoleMenuList) {
-            // 如果parent_id不等于-1,说明该SysUserRoleMenu对象有父节点
-            if (menu.getParent_id().equals(-1)) {
-                // 如果parent_id等于-1,说明该SysUserRoleMenu对象是最父级节点,直接放入rootMenus中
-                rootMenus.add(menu);
-            } else {
-                // 获取其父节点
-                SysUserRoleMenu parentMenu = map.get(menu.getParent_id());
-                // 如果父节点存在,则将该SysUserRoleMenu对象放入父节点的children列表中
-                if (parentMenu != null) {
-                    if (parentMenu.getChildren() == null) {
-                        parentMenu.setChildren(new ArrayList<>());
-                    }
-                    parentMenu.getChildren().add(menu);
-                    // 将该SysUserRoleMenu对象添加到toRemove列表中
-                    toRemove.add(menu);
-                }
-            }
-        }
+//    // 获取系统用户角色菜单列表 (简约)(树型)
+//    @Override
+//    public List<Map<String, Object>> selectMenuListSimple(List<String> permission_ids) {
+//        List<Map<String, Object>> menuList = sysUserRoleMenuDao.selectMenuListSimple(permission_ids);
+//        if (menuList.size() > 0) {
+//            buildTreeToMap(menuList);
+//        }
+//        return menuList;
+//    }
 
-        // 删除已经被放入children列表中的SysUserRoleMenu对象
-        sysUserRoleMenuList.removeAll(toRemove);
-        return rootMenus;
-    }
 
     // 转为树型结构 (Map)
     public static List<Map<String, Object>> buildTreeToMap(List<Map<String, Object>> menuList) {
@@ -89,24 +101,22 @@ public class SysUserRoleMenuServiceImpl implements SysUserRoleMenuService {
     }
 
 
-    // 获取系统用户角色菜单列表 (简约)(树型)
+    // 获取系统用户角色菜单列表
     @Override
-    public List<Map<String, Object>> selectMenuListSimple(List<String> permission_ids) {
-        List<Map<String, Object>> menuList = sysUserRoleMenuDao.selectMenuListSimple(permission_ids);
-        if (menuList.size() > 0) {
-            buildTreeToMap(menuList);
+    public List<Map<String, Object>> selectUserRoleMenuList(List<String> permission_ids) {
+        List<Map<String, Object>> sysUserRoleMenuList = sysUserRoleMenuDao.selectUserRoleMenuList(permission_ids);
+        if (sysUserRoleMenuList.size() > 0) {
+            buildTreeToMap(sysUserRoleMenuList);
         }
-        return menuList;
+        return sysUserRoleMenuList;
     }
 
-    // 获取系统用户角色菜单列表 (全部)(树型)
+    // 获取系统用户角色菜单详情
     @Override
-    public List<SysUserRoleMenu> getUserRoleMenu() {
-        List<SysUserRoleMenu> sysUserRoleMenuList = sysUserRoleMenuDao.selectList(new QueryWrapper<>());
-        if (sysUserRoleMenuList.size() > 0) {
-            buildTree(sysUserRoleMenuList);
-        }
-        return sysUserRoleMenuList;
+    public SysUserRoleMenu getUserRoleMenuDetail(SysUserRoleMenu sysUserRoleMenu) {
+        LambdaQueryWrapper<SysUserRoleMenu> queryWrapper = new LambdaQueryWrapper<SysUserRoleMenu>().eq(SysUserRoleMenu::getId, sysUserRoleMenu.getId());
+        SysUserRoleMenu detail = sysUserRoleMenuDao.selectOne(queryWrapper);
+        return detail;
     }
 
 }

+ 3 - 3
src/main/java/com/backendsys/modules/system/service/impl/SysUserRoleV2ServiceImpl.java

@@ -34,14 +34,14 @@ public class SysUserRoleV2ServiceImpl extends ServiceImpl<SysUserRoleDao, SysUse
     private SysUserRolePermissionRelationDao sysUserRolePermissionRelationDao;
 
     @Override
-    public PageEntity getUserRoleList(SysUserRole sysUserRole) {
+    public PageEntity selectUserRoleList(SysUserRole sysUserRole) {
         PageUtils.startPage();  // 分页
         List<SysUserRole> list = sysUserRoleDao.selectUserRoleList(sysUserRole);
         return new PageInfoResult(list).toEntity();
     }
 
     @Override
-    public SysUserRole getUserRoleDetail(SysUserRole sysUserRole) {
+    public SysUserRole selectUserRoleDetail(SysUserRole sysUserRole) {
 
         Long role_id = sysUserRole.getRole_id();
         SysUserRole roleDetail = sysUserRoleDao.selectById(role_id);
@@ -107,7 +107,7 @@ public class SysUserRoleV2ServiceImpl extends ServiceImpl<SysUserRoleDao, SysUse
 
         Long role_id = sysUserRole.getRole_id();
 
-        SysUserRole roleDetail = getUserRoleDetail(sysUserRole);
+        SysUserRole roleDetail = selectUserRoleDetail(sysUserRole);
         if (roleDetail == null) throw new CustException("系统用户角色不存在");
 
         Integer user_count = roleDetail.getUser_count();

+ 3 - 2
src/main/java/com/backendsys/modules/system/service/impl/SysUserV2ServiceImpl.java

@@ -107,7 +107,8 @@ public class SysUserV2ServiceImpl extends ServiceImpl<SysUserDao, SysUser> imple
         sysUserInfo.setPermission_ids(permission_ids);
 
         // 获得用户角色菜单 (根据权限)
-        List<Map<String, Object>> sysUserRoleMenuList = sysUserRoleMenuService.selectMenuListSimple(permission_ids);
+//        List<Map<String, Object>> sysUserRoleMenuList = sysUserRoleMenuService.selectMenuListSimple(permission_ids);
+        List<Map<String, Object>> sysUserRoleMenuList = sysUserRoleMenuService.selectUserRoleMenuList(permission_ids);
         sysUserInfo.setMenus(sysUserRoleMenuList);
 
         return sysUserInfo;
@@ -178,7 +179,7 @@ public class SysUserV2ServiceImpl extends ServiceImpl<SysUserDao, SysUser> imple
         List<String> permission_ids = (List<String>) permissionResp.get("permission_ids");
 
         // 获取系统用户菜单 (根据权限)
-        List<Map<String, Object>> menuList = sysUserRoleMenuService.selectMenuListSimple(permission_ids);
+        List<Map<String, Object>> menuList = sysUserRoleMenuService.selectUserRoleMenuList(permission_ids);
 
         Map<String, Object> resp = new LinkedHashMap<>();
         resp.put("user_id", user_id);

+ 1 - 1
src/main/resources/mapper/system/SysUserRoleMenu.xml

@@ -30,7 +30,7 @@
         <result property="status" column="status" javaType="java.lang.Integer" />
     </resultMap>
 
-    <select id="selectMenuListSimple" resultMap="resultMapUserRoleMenuSimple">
+    <select id="selectUserRoleMenuList" resultMap="resultMapUserRoleMenuSimple">
         SELECT <include refid="includeUserRoleMenuSimple" />
         FROM sys_user_role_menu
         <where>