using MediatR; using Swashbuckle.AspNetCore.SwaggerGen; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FlexJobApi.Core.Models { /// /// 查询菜单详情 /// public class GetMenuQuery : IRequest { /// /// Id /// public Guid Id { get; set; } /// /// 角色Id /// public Guid? RoleId { get; set; } } /// /// 查询菜单详情-结果 /// public class GetMenuQueryResult { public GetMenuQueryResult() { Groups = []; } /// /// Id /// public Guid Id { get; set; } /// /// 是否选择(用户角色授权) /// public bool IsChecked { get; set; } /// /// 用户类型 /// public EnumUserType UserType { get; set; } /// /// 客户端类型 /// public EnumClientType ClientType { get; set; } /// /// 上级Id /// public Guid? ParentId { get; set; } /// /// 菜单路径 /// public string Path { get; set; } /// /// 编号 /// public string Code { get; set; } /// /// 名称 /// public string Name { get; set; } /// /// 类型 /// public EnumMenuType Type { get; set; } /// /// 访问级别 /// public EnumMenuVisitLevel VisitLevel { get; set; } /// /// 图标 /// public string Icon { get; set; } /// /// 链接地址 /// public string Url { get; set; } /// /// 是否禁用 /// public bool IsDisabled { get; set; } /// /// 是否缓存 /// public bool IsCache { get; set; } /// /// 排序 /// public int Sort { get; set; } /// /// 备注 /// public string Remark { get; set; } /// /// 分组 /// public List Groups { get; set; } } /// /// 查询菜单详情-结果-分组 /// public class GetMenuQueryResultGroup { public GetMenuQueryResultGroup() { ButtonLocations = []; Fields = []; } /// /// 分组名称(用于按钮/字段) /// public string Group { get; set; } /// /// 按钮位置 /// public List ButtonLocations { get; set; } /// /// 字段 /// public List Fields { get; set; } } /// /// 查询菜单详情-结果-按钮位置 /// public class GetMenuQueryResultButtonLocation { public GetMenuQueryResultButtonLocation() { Buttons = []; } /// /// 位置(用于按钮) /// public string Location { get; set; } /// /// 按钮 /// public List Buttons { get; set; } } /// /// 查询菜单详情-结果-按钮项 /// public class GetMenuQueryResultButton { /// /// Id /// public Guid Id { get; set; } /// /// 是否选择(用户角色授权) /// public bool IsChecked { get; set; } /// /// 编号 /// public string Code { get; set; } /// /// 名称 /// public string Name { get; set; } /// /// 图标 /// public string Icon { get; set; } /// /// 宽度(用于按钮/列/元素) /// public string Width { get; set; } /// /// 排序 /// public int Sort { get; set; } /// /// 备注 /// public string Remark { get; set; } } /// /// 查询菜单详情-结果-字段项 /// public class GetMenuQueryResultField { /// /// Id /// public Guid Id { get; set; } /// /// 是否选择(用户角色授权) /// public bool IsChecked { get; set; } /// /// 编号 /// public string Code { get; set; } /// /// 名称 /// public string Name { get; set; } /// /// 宽度(用于按钮/列/元素) /// public string Width { get; set; } /// /// 排序 /// public int Sort { get; set; } /// /// 备注 /// public string Remark { get; set; } } /// /// 查询菜单详情-结果-项 /// public class GetMenuQueryResultItem { /// /// Id /// public Guid Id { get; set; } /// /// 是否选择(用户角色授权) /// public bool IsChecked { get; set; } /// /// 编号 /// public string Code { get; set; } /// /// 名称 /// public string Name { get; set; } /// /// 类型 /// public EnumMenuType Type { get; set; } /// /// 图标 /// public string Icon { get; set; } /// /// 分组名称(用于按钮/字段) /// public string Group { get; set; } /// /// 位置(用于按钮) /// public string Location { get; set; } /// /// 宽度(用于按钮/列/元素) /// public string Width { get; set; } /// /// 排序 /// public int Sort { get; set; } /// /// 备注 /// public string Remark { get; set; } } }