You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
115 lines
3.1 KiB
115 lines
3.1 KiB
// 大名科技(天津)有限公司版权所有 电话:18020030720 QQ:515096995
|
|
//
|
|
// 此源代码遵循位于源代码树根目录中的 LICENSE 文件的许可证
|
|
|
|
using System.Text.Json;
|
|
|
|
namespace Admin.NET.Core;
|
|
|
|
/// <summary>
|
|
/// 系统机构表
|
|
/// </summary>
|
|
[SugarTable(null, "系统机构表")]
|
|
[SysTable]
|
|
[SugarIndex("index_{table}_N", nameof(Name), OrderByType.Asc)]
|
|
[SugarIndex("index_{table}_C", nameof(Code), OrderByType.Asc)]
|
|
[SugarIndex("index_{table}_T", nameof(Type), OrderByType.Asc)]
|
|
public class SysOrg : EntityTenant
|
|
{
|
|
/// <summary>
|
|
/// 父Id
|
|
/// </summary>
|
|
[SugarColumn(ColumnDescription = "父Id")]
|
|
public long Pid { get; set; }
|
|
|
|
/// <summary>
|
|
/// 名称
|
|
/// </summary>
|
|
[SugarColumn(ColumnDescription = "名称", Length = 64)]
|
|
[Required, MaxLength(64)]
|
|
public virtual string Name { get; set; }
|
|
|
|
/// <summary>
|
|
/// 编码
|
|
/// </summary>
|
|
[SugarColumn(ColumnDescription = "编码", Length = 64)]
|
|
[MaxLength(64)]
|
|
public string? Code { get; set; }
|
|
|
|
/// <summary>
|
|
/// 级别
|
|
/// </summary>
|
|
[SugarColumn(ColumnDescription = "级别")]
|
|
public int? Level { get; set; }
|
|
|
|
/// <summary>
|
|
/// 机构类型-数据字典
|
|
/// </summary>
|
|
[SugarColumn(ColumnDescription = "机构类型", Length = 64)]
|
|
[MaxLength(64)]
|
|
public string? Type { get; set; }
|
|
|
|
/// <summary>
|
|
/// 负责人Id
|
|
/// </summary>
|
|
[SugarColumn(ColumnDescription = "负责人Id", IsNullable = true)]
|
|
public long? DirectorId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 负责人
|
|
/// </summary>
|
|
[Newtonsoft.Json.JsonIgnore]
|
|
[System.Text.Json.Serialization.JsonIgnore]
|
|
[Navigate(NavigateType.OneToOne, nameof(DirectorId))]
|
|
public SysUser Director { get; set; }
|
|
|
|
/// <summary>
|
|
/// 排序
|
|
/// </summary>
|
|
[SugarColumn(ColumnDescription = "排序")]
|
|
public int OrderNo { get; set; } = 100;
|
|
|
|
/// <summary>
|
|
/// 状态
|
|
/// </summary>
|
|
[SugarColumn(ColumnDescription = "状态")]
|
|
public StatusEnum Status { get; set; } = StatusEnum.Enable;
|
|
|
|
/// <summary>
|
|
/// 备注
|
|
/// </summary>
|
|
[SugarColumn(ColumnDescription = "备注", Length = 128)]
|
|
[MaxLength(128)]
|
|
public string? Remark { get; set; }
|
|
|
|
/// <summary>
|
|
/// 机构子项
|
|
/// </summary>
|
|
[SugarColumn(IsIgnore = true)]
|
|
public List<SysOrg> Children { get; set; }
|
|
|
|
/// <summary>
|
|
/// 是否禁止选中
|
|
/// </summary>
|
|
[SugarColumn(IsIgnore = true)]
|
|
public bool Disabled { get; set; }
|
|
|
|
[SugarColumn(IsNullable = true, ColumnDataType = "TEXT")]
|
|
public string? Position { get; set; }
|
|
|
|
[SugarColumn(ColumnDataType = "json")] public string ServiceIdsJson { get; set; }
|
|
|
|
[SugarColumn(IsIgnore = true)] public List<SysStationService>? Services { get; set; }
|
|
|
|
[SugarColumn(IsIgnore = true)]
|
|
public List<long>? ServiceIds
|
|
{
|
|
get
|
|
{
|
|
if (string.IsNullOrWhiteSpace(ServiceIdsJson))
|
|
return null;
|
|
return JsonSerializer.Deserialize<List<long>>(ServiceIdsJson);
|
|
}
|
|
set { ServiceIdsJson = JsonSerializer.Serialize(value); }
|
|
}
|
|
}
|