namespace Admin.NET.Plugin.AiDOP.Entity.S0.Supply;
///
/// 供应商主数据(复刻 SuppMaster)
///
[SugarTable("SuppMaster", "供应商主数据(复刻 SuppMaster)")]
[SugarIndex("uk_SuppMaster_factory_supp", nameof(FactoryRefId), OrderByType.Asc, nameof(Supp), OrderByType.Asc, IsUnique = true)]
public class AdoS0SuppMaster
{
[SugarColumn(ColumnName = "rec_id", ColumnDescription = "主键", IsPrimaryKey = true, IsIdentity = true, ColumnDataType = "bigint")]
public long Id { get; set; }
[SugarColumn(ColumnName = "company_ref_id", ColumnDescription = "关联公司 ID", ColumnDataType = "bigint")]
public long CompanyRefId { get; set; }
[SugarColumn(ColumnName = "factory_ref_id", ColumnDescription = "关联工厂 ID", ColumnDataType = "bigint")]
public long FactoryRefId { get; set; }
[SugarColumn(ColumnName = "domain_code", ColumnDescription = "工厂域编码", Length = 50, IsNullable = true)]
public string? DomainCode { get; set; }
[SugarColumn(ColumnName = "supp", ColumnDescription = "供应商编码", Length = 100)]
public string Supp { get; set; } = string.Empty;
[SugarColumn(ColumnName = "sort_name", ColumnDescription = "简称", Length = 200, IsNullable = true)]
public string? SortName { get; set; }
/// 供应商库位(原 PurContact)
[SugarColumn(ColumnName = "pur_contact", ColumnDescription = "供应商库位", Length = 100, IsNullable = true)]
public string? PurContact { get; set; }
[SugarColumn(ColumnName = "cr_terms", ColumnDescription = "支付方式", Length = 50, IsNullable = true)]
public string? CrTerms { get; set; }
[SugarColumn(ColumnName = "curr", ColumnDescription = "币别", Length = 20, IsNullable = true)]
public string? Curr { get; set; }
[SugarColumn(ColumnName = "type", ColumnDescription = "供应商类型", Length = 50, IsNullable = true)]
public string? Type { get; set; }
[SugarColumn(ColumnName = "tax_in", ColumnDescription = "含税", ColumnDataType = "boolean")]
public bool TaxIn { get; set; } = true;
[SugarColumn(ColumnName = "tax_class", ColumnDescription = "税类型", Length = 50, IsNullable = true)]
public string? TaxClass { get; set; }
[SugarColumn(ColumnName = "ap_start_day1", ColumnDescription = "对账周期1开始", IsNullable = true)]
public int? APStartDay1 { get; set; }
[SugarColumn(ColumnName = "ap_end_day1", ColumnDescription = "对账周期1结束", IsNullable = true)]
public int? APEndDay1 { get; set; }
[SugarColumn(ColumnName = "ap_start_day2", ColumnDescription = "对账周期2开始", IsNullable = true)]
public int? APStartDay2 { get; set; }
[SugarColumn(ColumnName = "ap_end_day2", ColumnDescription = "对账周期2结束", IsNullable = true)]
public int? APEndDay2 { get; set; }
[SugarColumn(ColumnName = "remark", ColumnDescription = "备注", Length = 1000, IsNullable = true)]
public string? Remark { get; set; }
[SugarColumn(ColumnName = "is_active", ColumnDescription = "是否启用", ColumnDataType = "boolean")]
public bool IsActive { get; set; } = true;
[SugarColumn(ColumnName = "create_user", ColumnDescription = "创建人", Length = 100, IsNullable = true)]
public string? CreateUser { get; set; }
[SugarColumn(ColumnName = "create_time", ColumnDescription = "创建时间")]
public DateTime CreateTime { get; set; } = DateTime.Now;
[SugarColumn(ColumnName = "update_user", ColumnDescription = "更新人", Length = 100, IsNullable = true)]
public string? UpdateUser { get; set; }
[SugarColumn(ColumnName = "update_time", ColumnDescription = "更新时间", IsNullable = true)]
public DateTime? UpdateTime { get; set; }
/// 列表展示:库位+库位说明拼接(展示字段,不落库)
[SugarColumn(IsIgnore = true)]
public string? LocationName { get; set; }
/// 列表展示:对账周期1开始(展示字段,不落库)
[SugarColumn(IsIgnore = true)]
public string? APStartDay1Text { get; set; }
/// 列表展示:对账周期1结束(展示字段,不落库)
[SugarColumn(IsIgnore = true)]
public string? APEndDay1Text { get; set; }
/// 列表展示:对账周期2开始(展示字段,不落库)
[SugarColumn(IsIgnore = true)]
public string? APStartDay2Text { get; set; }
/// 列表展示:对账周期2结束(展示字段,不落库)
[SugarColumn(IsIgnore = true)]
public string? APEndDay2Text { get; set; }
}