| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- namespace Admin.NET.Plugin.AiDOP.Entity.S8.OrderFlow;
- /// <summary>
- /// S8-ORDER-CHAIN-BODY-PRODUCTION-ORDER-LEVEL-SEED-FIX-1:
- /// S8 订单执行链路本体生产「损失因素」表(baseline + 订单级 SEED)。
- ///
- /// factor_code 取值:MATERIAL / EQUIPMENT / QUALITY / EFFICIENCY / SUBTOTAL(小计行 sort_no=5)。
- /// - count_value:baseline 9/6/3/12/30;订单级 round(baseline * ratio)。
- /// - ratio_pct:baseline 30/20/10/40/100,订单级保持结构(按用户规则原值复制)。
- /// - loss_hours:baseline 9.00/4.50/3.40/9.25/7.50(SUBTOTAL 7.50 来自 fixture,不是 4 因素之和);订单级 round(baseline*ratio,2)。
- /// </summary>
- [SugarTable("ado_s8_order_flow_manufacturing_loss_factor", "S8 订单执行链路本体生产损失因素")]
- [SugarIndex("idx_order_flow_mfg_loss_baseline", nameof(TenantId), OrderByType.Asc, nameof(FactoryId), OrderByType.Asc, nameof(FactorCode), OrderByType.Asc)]
- [SugarIndex("idx_order_flow_mfg_loss_order", nameof(TenantId), OrderByType.Asc, nameof(FactoryId), OrderByType.Asc, nameof(OrderCode), OrderByType.Asc)]
- [SugarIndex("idx_order_flow_mfg_loss_scenario", nameof(TenantId), OrderByType.Asc, nameof(FactoryId), OrderByType.Asc, nameof(ScenarioCode), OrderByType.Asc, nameof(IsDeleted), OrderByType.Asc)]
- public class AdoS8OrderFlowManufacturingLossFactor
- {
- [SugarColumn(ColumnName = "id", IsPrimaryKey = true, ColumnDataType = "bigint")]
- public long Id { get; set; }
- /// <summary>NULL = baseline 行;非 NULL = 订单级行。</summary>
- [SugarColumn(ColumnName = "order_id", ColumnDataType = "bigint", IsNullable = true)]
- public long? OrderId { get; set; }
- /// <summary>NULL = baseline 行;非 NULL = 订单业务键。</summary>
- [SugarColumn(ColumnName = "order_code", Length = 64, IsNullable = true)]
- public string? OrderCode { get; set; }
- /// <summary>因素编码:MATERIAL / EQUIPMENT / QUALITY / EFFICIENCY / SUBTOTAL。</summary>
- [SugarColumn(ColumnName = "factor_code", Length = 32)]
- public string FactorCode { get; set; } = string.Empty;
- /// <summary>因素名称:材料影响 / 设备影响 / 质量影响 / 作业效率损失 / 损失小计。</summary>
- [SugarColumn(ColumnName = "factor_name", Length = 32)]
- public string FactorName { get; set; } = string.Empty;
- /// <summary>件数。baseline 9/6/3/12/30;订单级 round(baseline*ratio)。SUBTOTAL = 30*ratio。</summary>
- [SugarColumn(ColumnName = "count_value", ColumnDataType = "int", IsNullable = true)]
- public int? CountValue { get; set; }
- /// <summary>占比百分比(0~100)。baseline 30/20/10/40/100;订单级保持结构(复制 baseline 值)。decimal(5,2)。</summary>
- [SugarColumn(ColumnName = "ratio_pct", DecimalDigits = 2, Length = 5, IsNullable = true)]
- public decimal? RatioPct { get; set; }
- /// <summary>损失工时(小时)。baseline 9.00/4.50/3.40/9.25/7.50;订单级 round(baseline*ratio,2)。decimal(8,2)。</summary>
- [SugarColumn(ColumnName = "loss_hours", DecimalDigits = 2, Length = 8, IsNullable = true)]
- public decimal? LossHours { get; set; }
- /// <summary>排序号 1..5(材料/设备/质量/效率/小计)。</summary>
- [SugarColumn(ColumnName = "sort_no", ColumnDataType = "int")]
- public int SortNo { get; set; }
- /// <summary>BASELINE_PPT / ORDER_LEVEL。</summary>
- [SugarColumn(ColumnName = "scenario_code", Length = 16)]
- public string ScenarioCode { get; set; } = "BASELINE_PPT";
- /// <summary>SEED / IMPORT / AGG。</summary>
- [SugarColumn(ColumnName = "data_source", Length = 16)]
- public string DataSource { get; set; } = "SEED";
- [SugarColumn(ColumnName = "tenant_id", ColumnDataType = "bigint")]
- public long TenantId { get; set; }
- [SugarColumn(ColumnName = "factory_id", ColumnDataType = "bigint")]
- public long FactoryId { get; set; }
- [SugarColumn(ColumnName = "created_at")]
- public DateTime CreatedAt { get; set; } = DateTime.Now;
- [SugarColumn(ColumnName = "updated_at", IsNullable = true)]
- public DateTime? UpdatedAt { get; set; }
- [SugarColumn(ColumnName = "is_deleted", ColumnDataType = "boolean")]
- public bool IsDeleted { get; set; }
- }
|