招聘后台
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

69 lines
2.5 KiB

using System.Collections.Generic;
using System.Data;
using System.Threading.Tasks;
using Znyc.Recruitment.Admin.Commons.Core.Dtos;
using Znyc.Recruitment.Admin.Commons.Entitys;
using Znyc.Recruitment.Admin.Commons.IServices;
using Znyc.Recruitment.Admin.Security.Dtos;
using Znyc.Recruitment.Admin.Security.Entitys;
namespace Znyc.Recruitment.Admin.Security.IServices
{
/// <summary>
/// </summary>
public interface IMenuService : IService<MenuEntity, MenuOutputDto, long>
{
/// <summary>
/// 根据用户获取功能菜单
/// </summary>
/// <param name="userId">用户ID</param>
/// <returns></returns>
List<MenuEntity> GetMenuByUser(long userId);
/// <summary>
/// 获取功能菜单适用于Vue 树形列表
/// </summary>
/// <param name="systemTypeId">子系统Id</param>
/// <returns></returns>
Task<List<MenuTreeTableOutputDto>> GetAllMenuTreeTable(string systemTypeId);
/// <summary>
/// 根据角色ID字符串(逗号分开)和系统类型ID,获取对应的操作功能列表
/// </summary>
/// <param name="roleIds">角色ID</param>
/// <param name="typeID">系统类型ID</param>
/// <param name="isMenu">是否是菜单</param>
/// <returns></returns>
List<MenuEntity> GetFunctions(string roleIds, string typeID, bool isMenu = false);
/// <summary>
/// 根据系统类型ID,获取对应的操作功能列表
/// </summary>
/// <param name="typeID">系统类型ID</param>
/// <returns></returns>
List<MenuEntity> GetFunctions(string typeID);
/// <summary>
/// 根据父级功能编码查询所有子集功能,主要用于页面操作按钮权限
/// </summary>
/// <param name="enCode">菜单功能编码</param>
/// <returns></returns>
Task<IEnumerable<MenuOutputDto>> GetListByParentEnCode(string enCode);
/// <summary>
/// 按条件批量删除
/// </summary>
/// <param name="ids">主键Id集合</param>
/// <param name="trans">事务对象</param>
/// <returns></returns>
CommonResult DeleteBatchWhere(DeletesInputDto ids, IDbTransaction trans = null);
/// <summary>
/// 异步按条件批量删除
/// </summary>
/// <param name="ids">主键Id集合</param>
/// <param name="trans">事务对象</param>
/// <returns></returns>
Task<CommonResult> DeleteBatchWhereAsync(DeletesInputDto ids, IDbTransaction trans = null);
}
}