SysMenu.cs 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. namespace ZR.Model.System
  2. {
  3. /// <summary>
  4. /// Sys_menu表
  5. /// </summary>
  6. [SugarTable("sys_menu", "系统菜单表")]
  7. [Tenant("0")]
  8. public class SysMenu : SysBase
  9. {
  10. /// <summary>
  11. /// 菜单ID
  12. /// </summary>
  13. [SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
  14. public long MenuId { get; set; }
  15. /// <summary>
  16. /// 菜单名称
  17. /// </summary>
  18. [SugarColumn(Length = 50, ExtendedAttribute = ProteryConstant.NOTNULL)]
  19. public string MenuName { get; set; }
  20. /// <summary>
  21. /// 父菜单ID
  22. /// </summary>
  23. [SugarColumn(DefaultValue = "0")]
  24. public long ParentId { get; set; }
  25. /// <summary>
  26. /// 显示顺序
  27. /// </summary>
  28. [SugarColumn(DefaultValue = "0")]
  29. public int OrderNum { get; set; }
  30. /// <summary>
  31. /// 路由地址
  32. /// </summary>
  33. public string Path { get; set; } = "";
  34. /// <summary>
  35. /// 组件路径
  36. /// </summary>
  37. public string Component { get; set; }
  38. /// <summary>
  39. /// 是否缓存(1不缓存 0缓存)
  40. /// </summary>
  41. [SugarColumn(DefaultValue = "0", ColumnDataType = "int")]
  42. public string IsCache { get; set; } = "0";
  43. /// <summary>
  44. /// 是否外链 1、是 0、否
  45. /// </summary>
  46. [SugarColumn(DefaultValue = "0", ColumnDataType = "int")]
  47. public string IsFrame { get; set; } = "0";
  48. /// <summary>
  49. /// 类型(M目录 C菜单 F按钮 L链接)
  50. /// </summary>
  51. [SugarColumn(Length = 1)]
  52. public string MenuType { get; set; } = string.Empty;
  53. /// <summary>
  54. /// 显示状态(0显示 1隐藏)
  55. /// </summary>
  56. [SugarColumn(DefaultValue = "0")]
  57. public string Visible { get; set; }
  58. /// <summary>
  59. /// 菜单状态(0正常 1停用)
  60. /// </summary>
  61. [SugarColumn(DefaultValue = "0")]
  62. public string Status { get; set; }
  63. /// <summary>
  64. /// 权限字符串
  65. /// </summary>
  66. [SugarColumn(Length = 100)]
  67. public string Perms { get; set; }
  68. /// <summary>
  69. /// 菜单图标
  70. /// </summary>
  71. [SugarColumn(DefaultValue = "#")]
  72. public string Icon { get; set; } = string.Empty;
  73. /// <summary>
  74. /// 菜单名key
  75. /// </summary>
  76. [SugarColumn(ColumnName = "menuName_key")]
  77. public string MenuNameKey { get; set; }
  78. /// <summary>
  79. /// 路由参数
  80. /// </summary>
  81. public string Query { get; set; }
  82. /// <summary>
  83. /// 子菜单
  84. /// </summary>
  85. [SugarColumn(IsIgnore = true)]
  86. public List<SysMenu> Children { get; set; } = new List<SysMenu>();
  87. /// <summary>
  88. /// 子菜单个数
  89. /// </summary>
  90. [SugarColumn(IsIgnore = true)]
  91. public int SubNum { get; set; }
  92. /// <summary>
  93. /// 是否包含子节点,前端用
  94. /// </summary>
  95. [SugarColumn(IsIgnore = true)]
  96. public bool HasChildren
  97. {
  98. get
  99. {
  100. return SubNum > 0 || Children.Count > 0;
  101. }
  102. }
  103. /// <summary>
  104. /// 路由名
  105. /// </summary>
  106. public string RouteName { get; set; }
  107. }
  108. }