using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using SqlSugar;
using WIDESEAWCS_Core.DB.Models;
using WIDESEAWCS_Core.Tenants;
namespace WIDESEAWCS_Model.Models
{
[SugarTable("Sys_Menu", "菜单配置"), MultiTenant]
public class Sys_Menu : BaseEntity
{
///
/// 菜单ID
///
[SugarColumn(IsIdentity = true, IsPrimaryKey = true, ColumnDescription = "菜单ID")]
public int MenuId { get; set; }
///
/// 菜单名称
///
[SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "菜单名称")]
public string MenuName { get; set; }
///
/// 权限
///
[SugarColumn(IsNullable = true, Length = 2000, ColumnDescription = "权限")]
public string Auth { get; set; }
///
/// 图标
///
[SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "图标")]
public string Icon { get; set; }
///
/// 描述
///
[SugarColumn(IsNullable = true, Length = 2000, ColumnDescription = "描述")]
public string Description { get; set; }
///
/// 是否启用
///
[SugarColumn(IsNullable = true, ColumnDescription = "是否启用")]
public byte? Enable { get; set; }
///
/// 表名
///
[SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "表名")]
public string TableName { get; set; }
///
/// 父级ID
///
[SugarColumn(IsNullable = false, ColumnDescription = "父级ID")]
public int ParentId { get; set; }
///
/// 路径
///
[SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "路径")]
public string Url { get; set; }
///
/// 排序号
///
[SugarColumn(IsNullable = true,ColumnDescription ="排序号")]
public int? OrderNo { get; set; }
///
/// 菜单类型
///
[SugarColumn(IsNullable = true, ColumnDescription = "菜单类型")]
public int? MenuType { get; set; }
[Navigate(NavigateType.OneToMany, nameof(ParentId), nameof(MenuId)), SugarColumn(IsIgnore = true, IsNullable = true)]
public List Menus { get; set; }
[SugarColumn(IsIgnore = true)]
public List Actions { get; set; }
}
}