OrganizationEntity.cs 1.8 KB

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