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