13693261870
2024-09-05 3d879a1df4c1c9c389e43f5dd5c249ed35d7e607
修改菜单功能
已修改7个文件
65 ■■■■■ 文件已修改
docker-compose/docker-compose.yml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docker-compose/mysql/initdb/se_cloud_20240629.sql 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
se-modules/se-system/src/main/java/com/se/system/controller/SysMenuController.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
se-modules/se-system/src/main/java/com/se/system/mapper/SysMenuMapper.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
se-modules/se-system/src/main/java/com/se/system/service/ISysMenuService.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
se-modules/se-system/src/main/java/com/se/system/service/impl/SysMenuServiceImpl.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
se-modules/se-system/src/main/resources/mapper/system/SysMenuMapper.xml 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docker-compose/docker-compose.yml
@@ -35,8 +35,9 @@
      - ./nacos/logs/:/home/nacos/logs
      - ./nacos/conf/application.properties:/home/nacos/conf/application.properties
    ports:
#      - 7848:7848
      - 8848:8848
#      - 9848:9848
      - 9848:9848
#      - 9849:9849
    depends_on:
      - se-mysql
docker-compose/mysql/initdb/se_cloud_20240629.sql
@@ -390,6 +390,9 @@
-- insert into sys_role_menu values ('2', '1059');
-- insert into sys_role_menu values ('2', '1060');
update sys_role_menu set role_id = 1;
-- select * from sys_role_menu;
-- ----------------------------
-- 8、角色和部门关联表  角色1-N部门
-- ----------------------------
se-modules/se-system/src/main/java/com/se/system/controller/SysMenuController.java
@@ -157,4 +157,18 @@
        List<SysMenu> menus = menuService.selectMenuTreeByUserId(userId);
        return success(menuService.buildMenus(menus));
    }
    /**
     * 根据标识获取菜单
     *
     * @return 菜单
     */
    @GetMapping("getMenusByMark")
    public AjaxResult getMenusByMark(String mark)
    {
        Long userId = SecurityUtils.getUserId();
        List<SysMenu> menus = menuService.selectMenusByUserIdAndMark(userId, mark);
        return success(menus);
    }
}
se-modules/se-system/src/main/java/com/se/system/mapper/SysMenuMapper.java
@@ -10,8 +10,7 @@
 * 
 * @author admin
 */
public interface SysMenuMapper
{
public interface SysMenuMapper {
    /**
     * 查询系统菜单列表
     * 
@@ -123,4 +122,13 @@
     * @return 结果
     */
    public SysMenu checkMenuNameUnique(@Param("menuName") String menuName, @Param("parentId") Long parentId);
    /**
     * 根据用户ID和标识查询菜单
     *
     * @param userId 用户ID
     * @param mark   标识
     * @return 菜单集合
     */
    List<SysMenu> selectMenusByUserIdAndMark(@Param("userId") Long userId, @Param("mark") String mark);
}
se-modules/se-system/src/main/java/com/se/system/service/ISysMenuService.java
@@ -11,8 +11,7 @@
 * 
 * @author admin
 */
public interface ISysMenuService
{
public interface ISysMenuService {
    /**
     * 根据用户查询系统菜单列表
     * 
@@ -141,4 +140,13 @@
     * @return 结果
     */
    public boolean checkMenuNameUnique(SysMenu menu);
    /**
     * 根据用户ID和标识查询菜单
     *
     * @param userId 用户ID
     * @param mark   标识
     * @return 菜单集合
     */
    List<SysMenu> selectMenusByUserIdAndMark(Long userId, String mark);
}
se-modules/se-system/src/main/java/com/se/system/service/impl/SysMenuServiceImpl.java
@@ -143,6 +143,13 @@
        return getChildPerms(menus, 0);
    }
    @Override
    public List<SysMenu> selectMenusByUserIdAndMark(Long userId, String mark) {
        List<SysMenu> menus = menuMapper.selectMenusByUserIdAndMark(userId, mark);
        return getChildPerms(menus, 0);
    }
    /**
     * 根据角色ID查询菜单树信息
     * 
se-modules/se-system/src/main/resources/mapper/system/SysMenuMapper.xml
@@ -86,6 +86,20 @@
        order by m.parent_id, m.order_num
    </select>
    
    <select id="selectMenusByUserIdAndMark" resultMap="SysMenuResult">
        select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.route_name, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
        from sys_menu m
            left join sys_role_menu rm on m.menu_id = rm.menu_id
            left join sys_user_role ur on rm.role_id = ur.role_id
            left join sys_role ro on ur.role_id = ro.role_id
            left join sys_user u on ur.user_id = u.user_id
        where u.user_id = #{userId} and m.menu_type in ('M', 'C', 'F') and m.status = 0  AND ro.status = 0
            <if test="mark != null and mark != ''">
                AND m.mark = #{mark}
            </if>
        order by m.parent_id, m.order_num
    </select>
    <select id="selectMenuListByRoleId" resultType="Long">
        select m.menu_id
        from sys_menu m