RoleEntity.cs 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. using ZhonTai.Common.Domain.Entities;
  2. using FreeSql.DataAnnotations;
  3. using System;
  4. using System.Collections.Generic;
  5. using ZhonTai.Plate.Admin.Domain.Permission;
  6. using ZhonTai.Plate.Admin.Domain.User;
  7. using ZhonTai.Plate.Admin.Domain.UserRole;
  8. using ZhonTai.Plate.Admin.Domain.RolePermission;
  9. namespace ZhonTai.Plate.Admin.Domain.Role
  10. {
  11. /// <summary>
  12. /// 角色
  13. /// </summary>
  14. [Table(Name = "ad_role")]
  15. [Index("idx_{tablename}_01", nameof(Name) + "," + nameof(TenantId), true)]
  16. [Index("idx_{tablename}_02", nameof(Code) + "," + nameof(TenantId), true)]
  17. public class RoleEntity : EntityFull, ITenant
  18. {
  19. /// <summary>
  20. /// 租户Id
  21. /// </summary>
  22. [Column(Position = -10, CanUpdate = false)]
  23. public long? TenantId { get; set; }
  24. /// <summary>
  25. /// 名称
  26. /// </summary>
  27. [Column(StringLength = 50)]
  28. public string Name { get; set; }
  29. /// <summary>
  30. /// 编码
  31. /// </summary>
  32. [Column(StringLength = 50)]
  33. public string Code { get; set; }
  34. /// <summary>
  35. /// 说明
  36. /// </summary>
  37. [Column(StringLength = 200)]
  38. public string Description { get; set; }
  39. /// <summary>
  40. /// 启用
  41. /// </summary>
  42. public bool Enabled { get; set; } = true;
  43. /// <summary>
  44. /// 排序
  45. /// </summary>
  46. public int Sort { get; set; }
  47. [Navigate(ManyToMany = typeof(UserRoleEntity))]
  48. public ICollection<UserEntity> Users { get; set; }
  49. [Navigate(ManyToMany = typeof(RolePermissionEntity))]
  50. public ICollection<PermissionEntity> Permissions { get; set; }
  51. }
  52. }