Commit 407b13da authored by 杨帆's avatar 杨帆

Merge branch 'dev-yf' into 'develop'

修改菜单接口

See merge request !2
parents c6343a47 b0323b7d
package com.ruoyi.web.controller.app;
import com.censoft.censoftrongtong.domain.*;
import com.censoft.censoftrongtong.domain.dto.*;
import com.censoft.censoftrongtong.enums.RiskPlanStatusType;
import com.censoft.censoftrongtong.service.*;
import com.ruoyi.common.config.RuoYiConfig;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.domain.entity.SysDictData;
import com.ruoyi.common.core.domain.entity.SysMenu;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.system.service.ISysDictDataService;
import com.ruoyi.system.service.ISysMenuService;
import com.ruoyi.system.service.ISysUploadFileService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 菜单app端接口
*
* @author censoft
* @date 2023-06-27
* @module 融通项目
*/
@RestController
@RequestMapping("/app-api/menu")
public class SysMenuAppController extends BaseController {
@Autowired
private ISysMenuService menuService;
/**
* 菜单栏
*
* @param httpServletRequest
* @return
*/
@GetMapping("/getMenu")
@ResponseBody
public AjaxResult menu(HttpServletRequest httpServletRequest) {
SysMenu menu = new SysMenu();
menu.setParentId(2055L);
menu.getParams().put("userId", getUserId());
Map menus = new HashMap<>();
if (SysUser.isAdmin(getUserId())) {
menu.getParams().put("isAdmin", true);
}
List<SysMenu> title = menuService.selectMenusApp(menu);
for (int i = 0; i < title.size(); i++) {
menu.setParentId(title.get(i).getMenuId());
List<SysMenu> menus1 = menuService.selectMenusApp(menu);
menus.put(title.get(i).getMenuName(), menus1);
}
return AjaxResult.success(menus);
}
}
...@@ -19,6 +19,13 @@ public interface SysMenuMapper ...@@ -19,6 +19,13 @@ public interface SysMenuMapper
*/ */
public List<SysMenu> selectMenuList(SysMenu menu); public List<SysMenu> selectMenuList(SysMenu menu);
/**
* 查询移动端菜单
* @param menu
* @return
*/
public List<SysMenu> selectMenusApp(SysMenu menu);
/** /**
* 根据用户所有权限 * 根据用户所有权限
* *
......
...@@ -2,6 +2,7 @@ package com.ruoyi.system.service; ...@@ -2,6 +2,7 @@ package com.ruoyi.system.service;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
import com.ruoyi.common.core.domain.TreeSelect; import com.ruoyi.common.core.domain.TreeSelect;
import com.ruoyi.common.core.domain.entity.SysMenu; import com.ruoyi.common.core.domain.entity.SysMenu;
import com.ruoyi.system.domain.vo.RouterVo; import com.ruoyi.system.domain.vo.RouterVo;
...@@ -11,8 +12,7 @@ import com.ruoyi.system.domain.vo.RouterVo; ...@@ -11,8 +12,7 @@ import com.ruoyi.system.domain.vo.RouterVo;
* *
* @author ruoyi * @author ruoyi
*/ */
public interface ISysMenuService public interface ISysMenuService {
{
/** /**
* 根据用户查询系统菜单列表 * 根据用户查询系统菜单列表
* *
...@@ -21,6 +21,13 @@ public interface ISysMenuService ...@@ -21,6 +21,13 @@ public interface ISysMenuService
*/ */
public List<SysMenu> selectMenuList(Long userId); public List<SysMenu> selectMenuList(Long userId);
/**
* 根据用户查询移动端菜单列表
*
* @return 菜单列表
*/
public List<SysMenu> selectMenusApp(SysMenu menu);
/** /**
* 根据用户查询系统菜单列表 * 根据用户查询系统菜单列表
* *
......
...@@ -5,26 +5,26 @@ ...@@ -5,26 +5,26 @@
<mapper namespace="com.ruoyi.system.mapper.SysMenuMapper"> <mapper namespace="com.ruoyi.system.mapper.SysMenuMapper">
<resultMap type="SysMenu" id="SysMenuResult"> <resultMap type="SysMenu" id="SysMenuResult">
<id property="menuId" column="menu_id" /> <id property="menuId" column="menu_id"/>
<result property="menuName" column="menu_name" /> <result property="menuName" column="menu_name"/>
<result property="parentName" column="parent_name" /> <result property="parentName" column="parent_name"/>
<result property="parentId" column="parent_id" /> <result property="parentId" column="parent_id"/>
<result property="orderNum" column="order_num" /> <result property="orderNum" column="order_num"/>
<result property="path" column="path" /> <result property="path" column="path"/>
<result property="component" column="component" /> <result property="component" column="component"/>
<result property="query" column="query" /> <result property="query" column="query"/>
<result property="isFrame" column="is_frame" /> <result property="isFrame" column="is_frame"/>
<result property="isCache" column="is_cache" /> <result property="isCache" column="is_cache"/>
<result property="menuType" column="menu_type" /> <result property="menuType" column="menu_type"/>
<result property="visible" column="visible" /> <result property="visible" column="visible"/>
<result property="status" column="status" /> <result property="status" column="status"/>
<result property="perms" column="perms" /> <result property="perms" column="perms"/>
<result property="icon" column="icon" /> <result property="icon" column="icon"/>
<result property="createBy" column="create_by" /> <result property="createBy" column="create_by"/>
<result property="createTime" column="create_time" /> <result property="createTime" column="create_time"/>
<result property="updateTime" column="update_time" /> <result property="updateTime" column="update_time"/>
<result property="updateBy" column="update_by" /> <result property="updateBy" column="update_by"/>
<result property="remark" column="remark" /> <result property="remark" column="remark"/>
</resultMap> </resultMap>
<sql id="selectMenuVo"> <sql id="selectMenuVo">
...@@ -48,6 +48,25 @@ ...@@ -48,6 +48,25 @@
order by parent_id, order_num order by parent_id, order_num
</select> </select>
<select id="selectMenusApp" parameterType="SysMenu" resultMap="SysMenuResult">
select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, 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
<where>
and m.parent_id = #{parentId}
<if test=" params.isAdmin ==null or !params.isAdmin ">
AND ro.status = 0
and ur.user_id = #{params.userId}
</if>
</where>
order by m.parent_id, m.order_num
</select>
<select id="selectMenuTreeAll" resultMap="SysMenuResult"> <select id="selectMenuTreeAll" resultMap="SysMenuResult">
select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, 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 select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, 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 where m.menu_type in ('M', 'C') and m.status = 0 from sys_menu m where m.menu_type in ('M', 'C') and m.status = 0
...@@ -55,7 +74,8 @@ ...@@ -55,7 +74,8 @@
</select> </select>
<select id="selectMenuListByUserId" parameterType="SysMenu" resultMap="SysMenuResult"> <select id="selectMenuListByUserId" parameterType="SysMenu" resultMap="SysMenuResult">
select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, 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 select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, 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 from sys_menu m
left join sys_role_menu rm on m.menu_id = rm.menu_id 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_user_role ur on rm.role_id = ur.role_id
...@@ -90,7 +110,8 @@ ...@@ -90,7 +110,8 @@
left join sys_role_menu rm on m.menu_id = rm.menu_id left join sys_role_menu rm on m.menu_id = rm.menu_id
where rm.role_id = #{roleId} where rm.role_id = #{roleId}
<if test="menuCheckStrictly"> <if test="menuCheckStrictly">
and m.menu_id not in (select m.parent_id from sys_menu m inner join sys_role_menu rm on m.menu_id = rm.menu_id and rm.role_id = #{roleId}) and m.menu_id not in (select m.parent_id from sys_menu m inner join sys_role_menu rm on m.menu_id =
rm.menu_id and rm.role_id = #{roleId})
</if> </if>
order by m.parent_id, m.order_num order by m.parent_id, m.order_num
</select> </select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment