SysMenu.cs 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. using SqlSugar;
  2. using System.Collections.Generic;
  3. using System.ComponentModel.DataAnnotations;
  4. namespace Admin.NET.Core
  5. {
  6. /// <summary>
  7. /// 系统菜单表
  8. /// </summary>
  9. [SugarTable("sys_menu", "系统菜单表")]
  10. [SqlSugarEntity]
  11. public class SysMenu : EntityBase
  12. {
  13. /// <summary>
  14. /// 父Id
  15. /// </summary>
  16. [SugarColumn(ColumnDescription = "父Id")]
  17. public long Pid { get; set; }
  18. /// <summary>
  19. /// 菜单类型(1目录 2菜单 3按钮)
  20. /// </summary>
  21. [SugarColumn(ColumnDescription = "菜单类型")]
  22. public MenuTypeEnum Type { get; set; }
  23. /// <summary>
  24. /// 名称
  25. /// </summary>
  26. [SugarColumn(ColumnDescription = "名称", Length = 50)]
  27. [MaxLength(50)]
  28. public string Name { get; set; }
  29. /// <summary>
  30. /// 路由地址
  31. /// </summary>
  32. [SugarColumn(ColumnDescription = "路由地址", Length = 100)]
  33. [MaxLength(100)]
  34. public string Path { get; set; }
  35. /// <summary>
  36. /// 组件路径
  37. /// </summary>
  38. [SugarColumn(ColumnDescription = "组件路径", Length = 100)]
  39. [MaxLength(100)]
  40. public string Component { get; set; }
  41. /// <summary>
  42. /// 权限标识
  43. /// </summary>
  44. [SugarColumn(ColumnDescription = "权限标识", Length = 100)]
  45. [MaxLength(100)]
  46. public string Permission { get; set; }
  47. /// <summary>
  48. /// 重定向
  49. /// </summary>
  50. [SugarColumn(ColumnDescription = "重定向", Length = 100)]
  51. [MaxLength(100)]
  52. public string Redirect { get; set; }
  53. /// <summary>
  54. /// 内嵌地址
  55. /// </summary>
  56. [SugarColumn(ColumnDescription = "内嵌地址", Length = 100)]
  57. [MaxLength(200)]
  58. public string FrameSrc { get; set; }
  59. /// <summary>
  60. /// 标题
  61. /// </summary>
  62. [SugarColumn(ColumnDescription = "标题", Length = 50)]
  63. [Required, MaxLength(50)]
  64. public string Title { get; set; }
  65. /// <summary>
  66. /// 图标
  67. /// </summary>
  68. [SugarColumn(ColumnDescription = "图标", Length = 100)]
  69. [MaxLength(100)]
  70. public string Icon { get; set; }
  71. /// <summary>
  72. /// 隐藏菜单
  73. /// </summary>
  74. [SugarColumn(ColumnDescription = "隐藏菜单")]
  75. public bool HideMenu { get; set; } = false;
  76. /// <summary>
  77. /// 忽略缓存
  78. /// </summary>
  79. [SugarColumn(ColumnDescription = "忽略缓存")]
  80. public bool IgnoreKeepAlive { get; set; } = false;
  81. /// <summary>
  82. /// 当前激活的菜单-用于配置详情页时左侧激活的菜单路径
  83. /// </summary>
  84. [SugarColumn(ColumnDescription = "当前激活菜单", Length = 100)]
  85. [MaxLength(100)]
  86. public string CurrentActiveMenu { get; set; }
  87. /// <summary>
  88. /// 排序
  89. /// </summary>
  90. [SugarColumn(ColumnDescription = "排序")]
  91. public int OrderNo { get; set; }
  92. /// <summary>
  93. /// 菜单子项
  94. /// </summary>
  95. [SugarColumn(IsIgnore = true)]
  96. public List<SysMenu> Children { get; set; } = new List<SysMenu>();
  97. }
  98. }