100 lines
3.0 KiB
C#
Raw Normal View History

2026-01-10 13:47:54 +08:00
namespace RIZO.Model.System.Dto
{
public class MenuDto
{
//{"parentId":0,"menuName":"aaa","icon":"documentation","menuType":"M","orderNum":999,"visible":0,"status":0,"path":"aaa"}
[Required(ErrorMessage = "菜单id不能为空")]
[ExcelColumn(Name = "菜单id")]
public int MenuId { get; set; }
[ExcelColumn(Name = "菜单名")]
public string MenuName { get; set; }
public string RouteName { get; set; }
/// <summary>
/// 父菜单ID
/// </summary>
public long? ParentId { get; set; }
/// <summary>
/// 显示顺序
/// </summary>
public int OrderNum { get; set; }
/// <summary>
/// 路由地址
/// </summary>
[ExcelColumn(Name = "路由地址")]
public string Path { get; set; } = "";
/// <summary>
/// 组件路径
/// </summary>
[ExcelColumn(Name = "组件地址")]
public string Component { get; set; }
/// <summary>
/// 是否缓存1缓存 0不缓存
/// </summary>
[Required(ErrorMessage = "是否缓存不能为空")]
[ExcelColumn(Name = "是否缓存")]
public int IsCache { get; set; }
/// <summary>
/// 是否外链 1、是 0、否
/// </summary>
public int IsFrame { get; set; }
/// <summary>
/// 类型M目录 C菜单 F按钮 L链接
/// </summary>
[Required(ErrorMessage = "菜单类型不能为空")]
public string MenuType { get; set; }
/// <summary>
/// 显示状态0显示 1隐藏
/// </summary>
[Required(ErrorMessage = "显示状态不能为空")]
public string Visible { get; set; }
/// <summary>
/// 菜单状态0正常 1停用
/// </summary>
[Required(ErrorMessage = "菜单状态不能为空")]
public string Status { get; set; }
/// <summary>
/// 权限字符串
/// </summary>
[ExcelColumn(Name = "权限字符串")]
public string Perms { get; set; }
/// <summary>
/// 菜单图标
/// </summary>
public string Icon { get; set; } = string.Empty;
/// <summary>
/// 路由参数
/// </summary>
public string Query { get; set; }
/// <summary>
/// 翻译key
/// </summary>
public string MenuNameKey { get; set; }
public List<MenuDto> Children { get; set; } = new List<MenuDto>();
}
public class MenuQueryDto
{
public string MenuName { get; set; }
public string Visible { get; set; }
public string Status { get; set; }
public string MenuTypeIds { get; set; } = string.Empty;
public int? ParentId { get; set; }
public string[] MenuTypeIdArr
{
get
{
return MenuTypeIds?.Split(',', StringSplitOptions.RemoveEmptyEntries);
}
}
}
}