Files
RBMESAPICore/Models/Cloud/bill/SUB_PPBOM.cs

291 lines
11 KiB
C#
Raw Normal View History

2025-09-09 22:41:29 +08:00

using RB_MES_API.Context;
using System.ComponentModel.DataAnnotations;
namespace RB_MES_API.Models.Cloud
{
public class SUB_PPBOM
{/// <summary>
/// 实体主键(无需填写,保存时自动添加)
/// </summary>
public int FID { get; set; }
/// <summary>
/// 单据编号
/// </summary>
[StringLength(36)]
public string FBillNo { get; set; }
/// <summary>
/// 产品编码 (必填项)
/// </summary>
public Dictionary<string, string> FMaterialID { get; set; } = new Dictionary<string, string>() {{ "FNUMBER",""}};
/// <summary>
/// BOM编号
/// </summary>
public Dictionary<string, string> FBOMID { get; set; } = new Dictionary<string, string>() { { "FNUMBER",""} };
/// <summary>
/// 辅助属性
/// </summary>
public AuxPropIDHead FAuxPropIDHead = new AuxPropIDHead();
public class AuxPropIDHead
{
public Dictionary<string, string> FAUXPROPIDHEAD__FF100001 { get; set; } = new Dictionary<string, string>() {{ "FNUMBER",""}};
}
/// <summary>
/// 委外组织 (必填项)
/// </summary>
public Dictionary<string, object> FSubOrgId { get; set; } = new Dictionary<string, object>() { { "FNumber", LocalStaticRequest.DefaultOrg } };
/// <summary>
/// 供应商 (必填项)
/// </summary>
public Dictionary<string, object> FSupplierId { get; set; } = new Dictionary<string, object>() { { "FNumber", LocalStaticRequest.DefaultOrg } };
/// <summary>
/// 单位 (必填项)
/// </summary>
public Dictionary<string, string> FUnitID { get; set; } = new Dictionary<string, string>() { { "FNUMBER",""} };
/// <summary>
/// 数量 (必填项)
/// </summary>
public decimal FQty { get; set; }
/// <summary>
/// 委外订单类型
/// </summary>
public Dictionary<string, string> FSubReqType { get; set; } = new Dictionary<string, string>() { { "FNUMBER",""} };
/// <summary>
/// 委外订单编号
/// </summary>
[StringLength(36)]
public string FSubReqBillNO { get; set; }
/// <summary>
/// 委外订单行号
/// </summary>
public long FSubReqEntrySeq { get; set; }
/// <summary>
/// 委外订单内码
/// </summary>
public long FSubReqId { get; set; }
/// <summary>
/// 委外订单行内码
/// </summary>
public long FSubReqEntryId { get; set; }
/// <summary>
/// 基本单位
/// </summary>
public Dictionary<string, string> FBaseUnitID { get; set; } = new Dictionary<string, string>() { { "FNUMBER",""} };
/// <summary>
/// 基本单位数量
/// </summary>
public decimal FBaseQty { get; set; }
/// <summary>
/// 产品货主类型
/// </summary>
[StringLength(36)]
public string FParentOwnerTypeId { get; set; }
/// <summary>
/// 产品货主
/// </summary>
public Dictionary<string, string> FParentOwnerId { get; set; } = new Dictionary<string, string>() { { "FNUMBER",""} };
public List<Entity> FEntity { get; set; } = new List<Entity>();
/// <summary>
/// 子项明细
/// </summary>
public class Entity
{
public int FSeq { get; set; }
/// <summary>
/// 项次,替代主料的行号
/// </summary>
public int FReplaceGroup { get; set; }
/// <summary>
/// 实体主键(无需填写,保存时自动添加)
/// </summary>
public long FEntryID { get; set; } = 0;
/// <summary>
/// 子项物料编码 (必填项)
/// </summary>
public Dictionary<string, string> FMaterialID2 { get; set; } = new Dictionary<string, string>() { { "FNUMBER",""} };
/// <summary>
/// 子项类型 (必填项)
/// </summary>
[StringLength(36)]
public string FMaterialType { get; set; } = "1";
/// <summary>
/// 供应类型
/// </summary>
[StringLength(36)]
public string FSupplyType { get; set; }
/// <summary>
/// 辅助属性
/// </summary>
public AuxPropID FAuxPropID = new AuxPropID();
public class AuxPropID
{
public Dictionary<string, string> FAUXPROPID__FF100001 { get; set; } = new Dictionary<string, string>() { { "FNUMBER",""} };
}
/// <summary>
/// 用量类型 (必填项)
/// </summary>
[StringLength(36)]
public string FDosageType { get; set; } = "2";
/// <summary>
/// 分子
/// </summary>
public long FNumerator { get; set; }
/// <summary>
/// 分母
/// </summary>
public long FDenominator { get; set; }
/// <summary>
/// 子项单位 (必填项)
/// </summary>
public Dictionary<string, string> FUnitID2 { get; set; } = new Dictionary<string, string>() { { "FNUMBER",""} };
/// <summary>
/// 变动损耗率%
/// </summary>
public long FScrapRate { get; set; }
/// <summary>
/// 固定损耗
/// </summary>
public long FFixScrapQty { get; set; }
/// <summary>
/// 需求日期
/// </summary>
public string FNeedDate2 { get; set; }
/// <summary>
/// 发料组织 (必填项)
/// </summary>
public Dictionary<string, string> FSupplyOrg { get; set; } = new Dictionary<string, string>() { { "FNUMBER",""} };
/// <summary>
/// BOM版本
/// </summary>
public Dictionary<string, string> FBomId2 { get; set; } = new Dictionary<string, string>() { { "FNUMBER",""} };
/// <summary>
/// 是否关键件
/// </summary>
public bool FIsKeyComponent { get; set; } = false;
/// <summary>
/// 偏置提前期
/// </summary>
public long FOffsetTime { get; set; }
/// <summary>
/// 工序
/// </summary>
public long FOperID { get; set; }
/// <summary>
/// 作业
/// </summary>
public Dictionary<string, string> FProcessID { get; set; } = new Dictionary<string, string>() { { "FNUMBER",""} };
/// <summary>
/// 未领数量
/// </summary>
public decimal FNoPickedQty { get; set; }
/// <summary>
/// 基本单位未领数量
/// </summary>
public decimal FBaseNoPickedQty { get; set; }
/// <summary>
/// 可用库存
/// </summary>
public decimal FInventoryQty { get; set; }
/// <summary>
/// 预留类型 (必填项)
/// </summary>
[StringLength(36)]
public string FReserveType { get; set; } = "1";
/// <summary>
/// 基本单位分子
/// </summary>
public long FBaseNumerator { get; set; }
/// <summary>
/// 基本单位分母
/// </summary>
public long FBASEDENOMINATOR { get; set; }
/// <summary>
/// 超发控制方式 (必填项)
/// </summary>
[StringLength(36)]
public string FOverControlMode { get; set; } = "1";
/// <summary>
/// 供应组织
/// </summary>
public Dictionary<string, string> FChildSupplyOrgId { get; set; } = new Dictionary<string, string>() { { "FNUMBER",""} };
/// <summary>
/// 库存状态
/// </summary>
public Dictionary<string, string> FStockStatusId { get; set; } = new Dictionary<string, string>() {{ "FNUMBER",""} };
/// <summary>
/// 货主类型
/// </summary>
[StringLength(36)]
public string FOwnerTypeId { get; set; } //= "BD_OwnerOrg";
/// <summary>
/// 货主
/// </summary>
public Dictionary<string, string> FOwnerID { get; set; } = new Dictionary<string, string>() { { "FNumber",""} };
/// <summary>
/// 位置号
/// </summary>
public string FPositionNO { get; set; }
/// <summary>
/// 子项基本单位
/// </summary>
public Dictionary<string, string> FBaseUnitID1 { get; set; } = new Dictionary<string, string>() {{ "FNumber",""} };
/// <summary>
/// 委外订单类型
/// </summary>
public Dictionary<string, string> FSubReqType1 { get; set; } = new Dictionary<string, string>() { { "FNumber",""} };
/// <summary>
/// 委外订单内码
/// </summary>
public long FSubReqId1 { get; set; }
/// <summary>
/// 委外订单编号
/// </summary>
[StringLength(36)]
public string FSubReqBillNO1 { get; set; }
/// <summary>
/// 委外订单行内码
/// </summary>
public long FSubReqEntryId1 { get; set; }
/// <summary>
/// 委外订单分录行号
/// </summary>
public long FSubReqEntrySeq1 { get; set; }
/// <summary>
/// 应发数量
/// </summary>
public decimal FMustQty { get; set; }
/// <summary>
/// 需求数量
/// </summary>
public decimal FNeedQty2 { get; set; }
/// <summary>
/// 替代策略
/// </summary>
public string FReplacePolicy { get; set; }=String.Empty;
/// <summary>
/// 替代方式
/// </summary>
public string FReplaceType { get; set; }=String.Empty ;
/// <summary>
/// 替代优先级
/// </summary>
public int FReplacePriority { get; set; }
/// <summary>
/// 替代主料
/// </summary>
public int FIsKeyItem { get; set; }
/// <summary>
/// MRP运算
/// </summary>
public bool FIsMrpRun { get; set; } = true;
/// <summary>
/// 使用比例
/// </summary>
public Decimal FUseRate { get; set; } = 100;
public int FRowExpandType { get; set; } = 16;
}
}
}