namespace Admin.NET.Plugin.AiDOP.Universal; /// /// 物料主数据(ItemMaster 表,外部 ERP 表,只读映射) /// [IgnoreTable] [SugarTable("ItemMaster", "物料主数据")] public class ItemMaster { [SugarColumn(ColumnName = "RecID", IsPrimaryKey = true, IsIdentity = true)] public int RecID { get; set; } [SugarColumn(ColumnName = "Domain", Length = 50, IsNullable = true)] public string? Domain { get; set; } [SugarColumn(ColumnName = "ItemNum", Length = 100)] public string ItemNum { get; set; } = string.Empty; [SugarColumn(ColumnName = "Descr", Length = 200)] public string Descr { get; set; } = string.Empty; [SugarColumn(ColumnName = "Descr1", Length = 200, IsNullable = true)] public string? Descr1 { get; set; } [SugarColumn(ColumnName = "UM", Length = 50, IsNullable = true)] public string? UM { get; set; } [SugarColumn(ColumnName = "Location", Length = 100, IsNullable = true)] public string? Location { get; set; } [SugarColumn(ColumnName = "Rev", Length = 50, IsNullable = true)] public string? Rev { get; set; } [SugarColumn(ColumnName = "Drawing", Length = 100, IsNullable = true)] public string? Drawing { get; set; } [SugarColumn(ColumnName = "Status", Length = 8, IsNullable = true)] public string? Status { get; set; } [SugarColumn(ColumnName = "ItemType", Length = 100, IsNullable = true)] public string? ItemType { get; set; } [SugarColumn(ColumnName = "PurMfg", Length = 100, IsNullable = true)] public string? PurMfg { get; set; } [SugarColumn(ColumnName = "Site", Length = 12, IsNullable = true)] public string? Site { get; set; } [SugarColumn(ColumnName = "Buyer", Length = 8, IsNullable = true)] public string? Buyer { get; set; } [SugarColumn(ColumnName = "Planner", Length = 50, IsNullable = true)] public string? Planner { get; set; } [SugarColumn(ColumnName = "ProdLine", Length = 20, IsNullable = true)] public string? ProdLine { get; set; } [SugarColumn(ColumnName = "PurUM", Length = 4, IsNullable = true)] public string? PurUM { get; set; } [SugarColumn(ColumnName = "PkgCode", Length = 50, IsNullable = true)] public string? PkgCode { get; set; } [SugarColumn(ColumnName = "DefaultShelf", Length = 100, IsNullable = true)] public string? DefaultShelf { get; set; } [SugarColumn(ColumnName = "KeyItem", ColumnDataType = "tinyint(1)")] public bool KeyItem { get; set; } [SugarColumn(ColumnName = "NetWeight", ColumnDataType = "decimal(18,5)", IsNullable = true)] public decimal? NetWeight { get; set; } [SugarColumn(ColumnName = "NetWeightUM", Length = 50, IsNullable = true)] public string? NetWeightUM { get; set; } [SugarColumn(ColumnName = "Inspect", ColumnDataType = "tinyint(1)")] public bool Inspect { get; set; } [SugarColumn(ColumnName = "IssuePolicy", ColumnDataType = "tinyint(1)")] public bool IssuePolicy { get; set; } [SugarColumn(ColumnName = "PurLT", IsNullable = true)] public int? PurLT { get; set; } [SugarColumn(ColumnName = "InsLT", IsNullable = true)] public int? InsLT { get; set; } [SugarColumn(ColumnName = "MfgLT", IsNullable = true)] public int? MfgLT { get; set; } [SugarColumn(ColumnName = "Length", ColumnDataType = "decimal(18,5)", IsNullable = true)] public decimal? Length { get; set; } [SugarColumn(ColumnName = "Size", ColumnDataType = "decimal(18,5)", IsNullable = true)] public decimal? Size { get; set; } [SugarColumn(ColumnName = "SizeUM", Length = 50, IsNullable = true)] public string? SizeUM { get; set; } [SugarColumn(ColumnName = "LocationType", Length = 50, IsNullable = true)] public string? LocationType { get; set; } [SugarColumn(ColumnName = "CommodityCode", Length = 100, IsNullable = true)] public string? CommodityCode { get; set; } [SugarColumn(ColumnName = "MaxOrd", ColumnDataType = "decimal(18,5)", IsNullable = true)] public decimal? MaxOrd { get; set; } [SugarColumn(ColumnName = "MinOrd", ColumnDataType = "decimal(18,5)", IsNullable = true)] public decimal? MinOrd { get; set; } [SugarColumn(ColumnName = "OrdMult", ColumnDataType = "decimal(18,5)", IsNullable = true)] public decimal? OrdMult { get; set; } [SugarColumn(ColumnName = "MinOrdSales", ColumnDataType = "decimal(18,5)", IsNullable = true)] public decimal? MinOrdSales { get; set; } [SugarColumn(ColumnName = "AutoLotNums", ColumnDataType = "tinyint(1)")] public bool AutoLotNums { get; set; } [SugarColumn(ColumnName = "Install", ColumnDataType = "tinyint(1)")] public bool Install { get; set; } [SugarColumn(ColumnName = "SafetyStk", ColumnDataType = "decimal(18,5)", IsNullable = true)] public decimal? SafetyStk { get; set; } [SugarColumn(ColumnName = "DaysBetweenPM", IsNullable = true)] public int? DaysBetweenPM { get; set; } [SugarColumn(ColumnName = "ExpireAlarmDays", IsNullable = true)] public int? ExpireAlarmDays { get; set; } [SugarColumn(ColumnName = "StockTurnOver", ColumnDataType = "decimal(18,5)", IsNullable = true)] public decimal? StockTurnOver { get; set; } [SugarColumn(ColumnName = "LotSerialControl", ColumnDataType = "tinyint(1)")] public bool LotSerialControl { get; set; } [SugarColumn(ColumnName = "AllocateSingleLot", ColumnDataType = "tinyint(1)")] public bool AllocateSingleLot { get; set; } [SugarColumn(ColumnName = "TraceDetail", ColumnDataType = "bit(1)", IsNullable = true)] public bool? TraceDetail { get; set; } [SugarColumn(ColumnName = "IsMainMas", ColumnDataType = "bit(1)", IsNullable = true)] public bool? IsMainMas { get; set; } [SugarColumn(ColumnName = "EMTType", Length = 50, IsNullable = true)] public string? EmtType { get; set; } [SugarColumn(ColumnName = "OwnerApplication", Length = 100, IsNullable = true)] public string? OwnerApplication { get; set; } [SugarColumn(ColumnName = "ModDate", IsNullable = true)] public DateTime? ModDate { get; set; } [SugarColumn(ColumnName = "CreateTime", IsNullable = true)] public DateTime? CreateTime { get; set; } [SugarColumn(ColumnName = "UpdateTime", IsNullable = true)] public DateTime? UpdateTime { get; set; } [SugarColumn(ColumnName = "CreateUser", Length = 24, IsNullable = true)] public string? CreateUser { get; set; } [SugarColumn(ColumnName = "UpdateUser", Length = 24, IsNullable = true)] public string? UpdateUser { get; set; } [SugarColumn(ColumnName = "IsActive", ColumnDataType = "bit(1)", IsNullable = true)] public bool? IsActive { get; set; } [SugarColumn(ColumnName = "IsConfirm", ColumnDataType = "bit(1)", IsNullable = true)] public bool? IsConfirm { get; set; } [SugarColumn(ColumnName = "Remark", Length = 200, IsNullable = true)] public string? Remark { get; set; } // 扩展列:与 ItemMaster 中下划线字段保持映射,避免后续查询缺列 [SugarColumn(ColumnName = "rec_id")] public long RecIdEx { get; set; } [SugarColumn(ColumnName = "company_ref_id")] public long CompanyRefId { get; set; } [SugarColumn(ColumnName = "factory_ref_id")] public long FactoryRefId { get; set; } [SugarColumn(ColumnName = "domain_code", Length = 50, IsNullable = true)] public string? DomainCode { get; set; } [SugarColumn(ColumnName = "item_num", Length = 100)] public string ItemNumEx { get; set; } = string.Empty; [SugarColumn(ColumnName = "is_active", ColumnDataType = "tinyint(1)")] public bool IsActiveEx { get; set; } [SugarColumn(ColumnName = "is_confirm", ColumnDataType = "tinyint(1)")] public bool IsConfirmEx { get; set; } [SugarColumn(ColumnName = "tenant_id", IsNullable = true)] public long? TenantId { get; set; } }