@@ -25,7 +25,7 @@ public interface SysMenuMapper {
* @param tenantId
* @return
*/
- public List<SysMenu> selectTenantMenuList(Long tenantId);
+ public List<SysMenu> selectTenantMenuList(@Param("menu") SysMenu menu,@Param("tenantId") Long tenantId);
/**
* 根据用户所有权限
@@ -79,7 +79,7 @@ public class SysMenuServiceImpl implements ISysMenuService {
if (SysUser.isAdmin(userId)) {
menuList = menuMapper.selectMenuList(menu);
} else if (user.isTenantAdmin()) {
- menuList = menuMapper.selectTenantMenuList(user.getTenantId());
+ menuList = menuMapper.selectTenantMenuList(menu,user.getTenantId());
} else {
menu.getParams().put("userId", userId);
menuList = menuMapper.selectMenuListByUserId(menu);
@@ -72,13 +72,19 @@
order by parent_id, order_num
</select>
- <select id="selectTenantMenuList" parameterType="Long" resultMap="SysMenuResult">
+ <select id="selectTenantMenuList" resultMap="SysMenuResult">
select m.menu_id, menu_name, parent_id, order_num, path, component, `query`, is_frame, is_cache, menu_type, visible, status, ifnull(perms,'') as perms, icon, create_time, tm.`tenant_id`
from sys_menu m
left join sys_tenant_menu tm on tm.menu_id = m.menu_id
where tm.tenant_id = #{tenantId}
and m.menu_name not in ('数据引擎','流程引擎','表单引擎')
and parent_id not in (select menu_id from sys_menu where menu_name in ("数据引擎","流程引擎","表单引擎"))
+ <if test="menu.menuName != null and menu.menuName != ''">
+ AND m.menu_name like concat('%', #{menu.menuName}, '%')
+ </if>
+ <if test="menu.status != null and menu.status != ''">
+ AND m.status = #{menu.status}