OrgEntity.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. using ZhonTai.Admin.Core.Entities;
  2. using FreeSql.DataAnnotations;
  3. using System.Collections.Generic;
  4. using ZhonTai.Admin.Domain.Staff;
  5. namespace ZhonTai.Admin.Domain.Org;
  6. /// <summary>
  7. /// 组织架构
  8. /// </summary>
  9. [Table(Name = "ad_org")]
  10. [Index("idx_{tablename}_01", nameof(ParentId) + "," + nameof(Name) + "," + nameof(TenantId), true)]
  11. public partial class OrgEntity : EntityFull, ITenant
  12. {
  13. /// <summary>
  14. /// 租户Id
  15. /// </summary>
  16. [Column(Position = -10, CanUpdate = false)]
  17. public long? TenantId { get; set; }
  18. /// <summary>
  19. /// 父级
  20. /// </summary>
  21. public long ParentId { get; set; }
  22. /// <summary>
  23. /// 名称
  24. /// </summary>
  25. [Column(StringLength = 50)]
  26. public string Name { get; set; }
  27. /// <summary>
  28. /// 编码
  29. /// </summary>
  30. [Column(StringLength = 50)]
  31. public string Code { get; set; }
  32. /// <summary>
  33. /// 值
  34. /// </summary>
  35. [Column(StringLength = 50)]
  36. public string Value { get; set; }
  37. /// <summary>
  38. /// 成员数
  39. /// </summary>
  40. public int MemberCount { get; set; }
  41. /// <summary>
  42. /// 描述
  43. /// </summary>
  44. [Column(StringLength = 500)]
  45. public string Description { get; set; }
  46. /// <summary>
  47. /// 启用
  48. /// </summary>
  49. public bool Enabled { get; set; } = true;
  50. /// <summary>
  51. /// 排序
  52. /// </summary>
  53. public int Sort { get; set; }
  54. [Navigate(ManyToMany = typeof(StaffOrgEntity))]
  55. public ICollection<StaffEntity> Staffs { get; set; }
  56. [Navigate(nameof(ParentId))]
  57. public List<OrgEntity> Childs { get; set; }
  58. }