From 3b819605e47e354eeafc696ea3bcb837b8eb063f Mon Sep 17 00:00:00 2001 From: 王 垚 <1402714037@qq.com> Date: 星期日, 28 二月 2021 13:59:37 +0800 Subject: [PATCH] 2.28 客户现场调整后上传 --- src/BLL/Demo.BillView/Demo.BillView.csproj | 2 src/BLL/Demo.BillView/PRD/Pro_MaterialRequisitionAudit.cs | 237 +++++++++++++++++++++ src/BLL/Demo.BillView/PRD/Pro_ScDayImport.cs | 31 +- src/Model/Demo.Model/Model/PODemandPlan/DayPlanPpbom.cs | 8 src/Model/Demo.Model/Model/PODemandPlan/PODemandPlanTemp.cs | 5 src/BLL/Demo.BillView/PRD/Pro_MaterialRequisitionAuditDayPlan.cs | 237 +++++++++++++++++++++ src/Model/Demo.Model/Model/DayPlanMaterial.cs | 45 ++++ src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs | 60 ++++- 8 files changed, 599 insertions(+), 26 deletions(-) diff --git a/src/BLL/Demo.BillView/Demo.BillView.csproj b/src/BLL/Demo.BillView/Demo.BillView.csproj index a549c47..63cd121 100644 --- a/src/BLL/Demo.BillView/Demo.BillView.csproj +++ b/src/BLL/Demo.BillView/Demo.BillView.csproj @@ -209,6 +209,8 @@ <Compile Include="PRD\ProTardinessDetails.cs" /> <Compile Include="PRD\ProCompleteAnalysisMateriel.cs" /> <Compile Include="PRD\ProCompleteAnalysisDetails.cs" /> + <Compile Include="PRD\Pro_MaterialRequisitionAuditDayPlan.cs" /> + <Compile Include="PRD\Pro_MaterialRequisitionAudit.cs" /> <Compile Include="PRD\Pro_ScDayImport.cs" /> <Compile Include="PRD\Pro_TlPlanConfigure.cs" /> <Compile Include="PRD\Pro_WorkBillPlatform.cs" /> diff --git a/src/BLL/Demo.BillView/PRD/Pro_MaterialRequisitionAudit.cs b/src/BLL/Demo.BillView/PRD/Pro_MaterialRequisitionAudit.cs new file mode 100644 index 0000000..16bf897 --- /dev/null +++ b/src/BLL/Demo.BillView/PRD/Pro_MaterialRequisitionAudit.cs @@ -0,0 +1,237 @@ +锘縰sing System; +using System.Collections.Generic; +using Kingdee.BOS.Util; +using Kingdee.BOS.Core.Metadata; +using Kingdee.BOS.Core.Metadata.EntityElement; +using Kingdee.BOS.Core.DynamicForm.PlugIn; +using Kingdee.BOS.Core.DynamicForm.PlugIn.Args; +using Kingdee.BOS.Orm.DataEntity; +using Kingdee.BOS.Contracts; +using Kingdee.BOS.App; +using Kingdee.BOS.Core.Metadata.FieldElement; +using System.ComponentModel; +using Kingdee.BOS.ServiceHelper; + +namespace Demo.DynamicForm.PRD +{ + /// <summary> + /// 鎻掍欢绀轰緥锛氬紩鍏ラ攢鍞嚭搴撳崟锛屽缓绔嬩笌閿�鍞鍗曠殑鍏宠仈 + /// </summary> + /// <remarks> + /// 瑕佹眰锛� + /// 1. 闇�瑕佸紩鍏ュ崟鎹綋鐨勬簮鍗曠被鍨嬨�佹簮鍗曠紪鍙峰瓧娈� + /// 2. 鏈彃浠舵寕鍦ㄩ攢鍞嚭搴撳崟鐨勪繚瀛樻搷浣滀笂 + /// 鍑哄簱鍏宠仈閿�鍞鍗� + /// </remarks> + [Description("寮曞叆鐢熶骇棰嗘枡鍗曪紝寤虹珛涓庣敓浜ц鍗曠殑鍏宠仈")] + [HotUpdate] + public class Pro_MaterialRequisitionAudit : AbstractOperationServicePlugIn + { + public override void OnPreparePropertys(PreparePropertysEventArgs e) + { + base.OnPreparePropertys(e); + e.FieldKeys.Add("FSrcBillType"); + e.FieldKeys.Add("FSrcBillNo"); + e.FieldKeys.Add("FID"); + e.FieldKeys.Add("FTreeEntity_FEntryID"); + e.FieldKeys.Add("FBillNo"); + e.FieldKeys.Add("FBFLowId"); + e.FieldKeys.Add("FMaterialId"); + e.FieldKeys.Add("FBaseUnitQty"); + e.FieldKeys.Add("FBaseJoinQty"); + } + private const string POFormId = "PRD_PPBOM"; + public override void BeforeExecuteOperationTransaction(BeforeExecuteOperationTransaction e) + { + base.BeforeExecuteOperationTransaction(e); + HashSet<string> poBillNos = new HashSet<string>(); + Entity entity = this.BusinessInfo.GetEntity("FEntity");//鑾峰彇鏄庣粏淇℃伅 + Entity linkEntry = this.BusinessInfo.GetEntity("FEntity_Link"); + Field fldSrcFormId = this.BusinessInfo.GetField("FSrcBillType"); + Field fldSrcBillNo = this.BusinessInfo.GetField("FSrcBillNo"); + // 瀵瑰崟鎹綋杩涜寰幆锛屽彇鍏宠仈鐨勬簮鍗曠紪鍙� + foreach (var billObj in e.SelectedRows) + { + DynamicObjectCollection entryRows = entity.DynamicProperty.GetValue(billObj.DataEntity) + as DynamicObjectCollection; + foreach (var entryRow in entryRows) + { + string srcFormId = ""; + string srcSrcBillNo = ""; + try + { + srcFormId = "PRD_PPBOM"; + srcSrcBillNo = fldSrcBillNo.DynamicProperty.GetValue<string>(entryRow); + srcSrcBillNo = DBServiceHelper.ExecuteScalar<string>(Context, $" select distinct FPPBOMBILLNO from T_PRD_PICKMTRLDATA where FSRCBILLNO = '{srcSrcBillNo}' ", srcSrcBillNo); + + } + catch (Exception) + { + } + if (string.IsNullOrWhiteSpace(srcFormId) + || string.IsNullOrWhiteSpace(srcSrcBillNo) + ) + {// 婧愬崟涓嶆槸閲囪喘璁㈠崟锛岀暐杩� + continue; + } + // 婧愬崟缂栧彿宸茬粡鐧昏锛屼笉鍐嶉噸澶嶈褰曪紝鐣ヨ繃 + if (poBillNos.Contains(srcSrcBillNo)) continue; + // Link宸茬粡璁板綍浜嗘簮鍗曚俊鎭紝鐣ヨ繃 + //DynamicObjectCollection linkRows = linkEntry.DynamicProperty.GetValue(entryRow) + // as DynamicObjectCollection; + //if (linkRows.Count > 0) continue; + bool Ret = SourceVerification(Convert.ToString(entryRow["Id"])); + if (!Ret) continue; + + poBillNos.Add(srcSrcBillNo); + } + } + if (poBillNos.Count == 0) return; + DynamicObject[] poObjs = this.LoadPurchaseOrder(poBillNos); + if (poObjs == null || poObjs.Length == 0) return; + Dictionary<string, Dictionary<string, DynamicObject>> dctAllBills = this.BuildDictionary(poObjs); + string srcTableNumber = this.GetPOEntryTableNumber(); + List<DynamicObject> allNewLinkRows = new List<DynamicObject>(); + // 寰幆鍗曟嵁浣擄紝涓哄崟鎹綋锛屽缓绔嬭捣婧愬崟鍏宠仈淇℃伅锛� + foreach (var billObj in e.SelectedRows) + { + DynamicObjectCollection entryRows = entity.DynamicProperty.GetValue(billObj.DataEntity) + as DynamicObjectCollection; + foreach (var entryRow in entryRows) + { + string srcSrcBillNo = fldSrcBillNo.DynamicProperty.GetValue<string>(entryRow); + string srcFormId = "PRD_PPBOM"; + srcSrcBillNo = DBServiceHelper.ExecuteScalar<string>(Context, $" select distinct FPPBOMBILLNO from T_PRD_PICKMTRLDATA where FSRCBILLNO = '{srcSrcBillNo}' ", srcSrcBillNo); + + + if (string.IsNullOrWhiteSpace(srcFormId) + || string.IsNullOrWhiteSpace(srcSrcBillNo) + ) + {// 婧愬崟涓嶆槸閿�鍞鍗曪紝鐣ヨ繃 + continue; + } + Dictionary<string, DynamicObject> dctOneBill = null; + if (dctAllBills.TryGetValue(srcSrcBillNo, out dctOneBill) == false) continue; + DynamicObject materialObj = entryRow["MaterialId"] as DynamicObject; + if (materialObj == null) continue; + string materialNumber = Convert.ToString(materialObj["number"]); + DynamicObject srcRow = null; + if (dctOneBill.TryGetValue(materialNumber, out srcRow) == false) continue; + // Link宸茬粡璁板綍浜嗘簮鍗曚俊鎭紝鐣ヨ繃 + bool Ret = SourceVerification(Convert.ToString(entryRow["Id"])); + if (!Ret) continue; + + DynamicObjectCollection linkRows = linkEntry.DynamicProperty.GetValue(entryRow) + as DynamicObjectCollection; + linkRows.Clear(); + DynamicObject linkRow = new DynamicObject(linkEntry.DynamicObjectType); + linkRow["STableName"] = srcTableNumber; + this.FillLinkRow(srcRow, entryRow, linkRow); + linkRows.Add(linkRow); + allNewLinkRows.Add(linkRow); + } + } + // 涓烘柊寤虹殑婧愬崟鍏宠仈淇℃伅锛岃缃唴鐮� + IDBService dbService = ServiceHelper.GetService<IDBService>(); + dbService.AutoSetPrimaryKey(this.Context, allNewLinkRows.ToArray(), linkEntry.DynamicObjectType); + } + + /// <summary> + /// 鍔犺浇鐩稿叧鐨勯攢鍞鍗曟暟鎹� + /// </summary> + /// <param name="poBillNos"></param> + /// <returns></returns> + private DynamicObject[] LoadPurchaseOrder(HashSet<string> poBillNos) + { + IViewService viewService = ServiceHelper.GetService<IViewService>(); + string formId = "PRD_PPBOM"; + + // 鎸囧畾闇�瑕佸姞杞界殑閿�鍞鍗曞瓧娈� + List<SelectorItemInfo> fields = new List<SelectorItemInfo>(); + fields.Add(new SelectorItemInfo("FID")); // 鍗曟嵁涓婚敭 + fields.Add(new SelectorItemInfo("FTreeEntity_FEntryID")); // 鍗曟嵁浣撲富閿� + fields.Add(new SelectorItemInfo("FBillNo")); // 鍗曟嵁缂栧彿 + fields.Add(new SelectorItemInfo("FBFLowId")); // 涓氬姟娴佺▼ + fields.Add(new SelectorItemInfo("FMaterialId")); // 鐗╂枡 + fields.Add(new SelectorItemInfo("FMaterialID2")); // 鐗╂枡 + fields.Add(new SelectorItemInfo("FBASENEEDQTY")); // 鍩烘湰鍗曚綅鏁伴噺 + fields.Add(new SelectorItemInfo("FBASEPICKEDQTY")); // 鍩烘湰鍗曚綅鍏宠仈鏁伴噺 + fields.Add(new SelectorItemInfo("FBFLOWID")); // + + // 鎸囧畾杩囨护鏉′欢 + string filter = string.Format(" FBillNo IN ('{0}') ", string.Join("','", poBillNos)); + OQLFilter ofilter = OQLFilter.CreateHeadEntityFilter(filter); + var objs = viewService.Load(this.Context, formId, fields, ofilter); + return objs; + } + /// <summary> + /// 鎶婇攢鍞鍗曞崟鎹綋琛屾瀯寤轰负瀛楀吀锛欴ictionary(鍗曟嵁缂栧彿, Dictionary(鐗╂枡缂栫爜, 婧愬崟琛�)); + /// </summary> + /// <param name="poObjs"></param> + /// <returns></returns> + private Dictionary<string, Dictionary<string, DynamicObject>> BuildDictionary(DynamicObject[] poObjs) + { + Dictionary<string, Dictionary<string, DynamicObject>> dctAllBills = + new Dictionary<string, Dictionary<string, DynamicObject>>(); + foreach (var poObj in poObjs) + { + string billNo = Convert.ToString(poObj["BillNo"]); + Dictionary<string, DynamicObject> dctOneBill = new Dictionary<string, DynamicObject>(); + DynamicObjectCollection entryRows = poObj["PPBomEntry"] as DynamicObjectCollection; + foreach (var entryRow in entryRows) + { + DynamicObject materialObj = entryRow["MaterialId"] as DynamicObject; + if (materialObj == null) continue; + string materialNumber = Convert.ToString(materialObj["number"]); + dctOneBill[materialNumber] = entryRow; + } + dctAllBills.Add(billNo, dctOneBill); + } + return dctAllBills; + } + /// <summary> + /// 鑾峰彇閿�鍞鍗曞叧鑱斾富瀹炰綋琛ㄦ牸缂栫爜 + /// </summary> + /// <returns></returns> + private string GetPOEntryTableNumber() + { + IBusinessFlowService bfMetaService = ServiceHelper.GetService<IBusinessFlowService>(); + var tableDefine = bfMetaService.LoadTableDefine(this.Context, POFormId, "FEntity"); + return tableDefine.TableNumber; + } + /// <summary> + /// 濉啓婧愬崟淇℃伅 + /// </summary> + /// <param name="srcRow">婧愬崟琛�</param> + /// <param name="toRow">鐩爣鍗曡</param> + /// <param name="linkRow">鍏宠仈琛�</param> + private void FillLinkRow(DynamicObject srcRow, DynamicObject toRow, DynamicObject linkRow) + { + linkRow["FlowId"] = srcRow["BFLowId_Id"]; + linkRow["FlowLineId"] = 0; + linkRow["RuleId"] = "PRD_PPBOM2PICKMTRL_NORMAL"; + linkRow["SBillId"] = ((DynamicObject)srcRow.Parent)[0]; + linkRow["SId"] = srcRow[0]; + // 鍘熷鎼哄甫閲� + decimal baseUnitQty = Convert.ToDecimal(srcRow["BaseNeedQty"]);//鐢ㄦ枡娓呭崟鍗曚綅鏁伴噺 + decimal joinUnitQty = Convert.ToDecimal(srcRow["BasePickedQty"]);//鐢ㄦ枡娓呭崟鍗曚綅棰嗘枡鏁伴噺 + linkRow["BaseActualQtyOld"] = baseUnitQty - joinUnitQty; + linkRow["BaseActualQty"] = toRow["BASEACTUALQTY"]; //鍩烘湰鍗曚綅瀹炲彂鏁伴噺 + } + + /// <summary> + /// 楠岃瘉鏄惁鐢熸垚杩囩敓浜х敤鏂欐竻鍗曞搴旂殑婧愬崟 + /// </summary> + /// <returns></returns> + public bool SourceVerification(string FTID) + { + string sql = $" select count(*) from T_BF_INSTANCEENTRY where FSTABLENAME= 'T_PRD_PPBOMENTRY' and FTID = '{FTID}'"; + int count = DBServiceHelper.ExecuteScalar<int>(Context, sql, 0); + if (count == 0) + return true; + else + return false; + } + + } +} diff --git a/src/BLL/Demo.BillView/PRD/Pro_MaterialRequisitionAuditDayPlan.cs b/src/BLL/Demo.BillView/PRD/Pro_MaterialRequisitionAuditDayPlan.cs new file mode 100644 index 0000000..2427709 --- /dev/null +++ b/src/BLL/Demo.BillView/PRD/Pro_MaterialRequisitionAuditDayPlan.cs @@ -0,0 +1,237 @@ +锘縰sing System; +using System.Collections.Generic; +using Kingdee.BOS.Util; +using Kingdee.BOS.Core.Metadata; +using Kingdee.BOS.Core.Metadata.EntityElement; +using Kingdee.BOS.Core.DynamicForm.PlugIn; +using Kingdee.BOS.Core.DynamicForm.PlugIn.Args; +using Kingdee.BOS.Orm.DataEntity; +using Kingdee.BOS.Contracts; +using Kingdee.BOS.App; +using Kingdee.BOS.Core.Metadata.FieldElement; +using System.ComponentModel; +using Kingdee.BOS.ServiceHelper; + +namespace Demo.DynamicForm.PRD +{ + /// <summary> + /// 鎻掍欢绀轰緥锛氬紩鍏ラ攢鍞嚭搴撳崟锛屽缓绔嬩笌閿�鍞鍗曠殑鍏宠仈 + /// </summary> + /// <remarks> + /// 瑕佹眰锛� + /// 1. 闇�瑕佸紩鍏ュ崟鎹綋鐨勬簮鍗曠被鍨嬨�佹簮鍗曠紪鍙峰瓧娈� + /// 2. 鏈彃浠舵寕鍦ㄩ攢鍞嚭搴撳崟鐨勪繚瀛樻搷浣滀笂 + /// 鍑哄簱鍏宠仈閿�鍞鍗� + /// </remarks> + [Description("寮曞叆鐢熶骇棰嗘枡鍗曪紝寤虹珛涓庣敓浜ц鍗曠殑鍏宠仈,鏃ヨ鍒掔敤鏂欐竻鍗�")] + [HotUpdate] + public class Pro_MaterialRequisitionAuditDayPlan : AbstractOperationServicePlugIn + { + public override void OnPreparePropertys(PreparePropertysEventArgs e) + { + base.OnPreparePropertys(e); + e.FieldKeys.Add("FSrcBillType"); + e.FieldKeys.Add("FSrcBillNo"); + e.FieldKeys.Add("FID"); + e.FieldKeys.Add("FTreeEntity_FEntryID"); + e.FieldKeys.Add("FBillNo"); + e.FieldKeys.Add("FBFLowId"); + e.FieldKeys.Add("FMaterialId"); + e.FieldKeys.Add("FBaseUnitQty"); + e.FieldKeys.Add("FBaseJoinQty"); + } + private const string POFormId = "PRD_PPBOM"; + public override void BeforeExecuteOperationTransaction(BeforeExecuteOperationTransaction e) + { + base.BeforeExecuteOperationTransaction(e); + HashSet<string> poBillNos = new HashSet<string>(); + Entity entity = this.BusinessInfo.GetEntity("FEntity");//鑾峰彇鏄庣粏淇℃伅 + Entity linkEntry = this.BusinessInfo.GetEntity("FEntity_Link"); + Field fldSrcFormId = this.BusinessInfo.GetField("FSrcBillType"); + Field fldSrcBillNo = this.BusinessInfo.GetField("FSrcBillNo"); + // 瀵瑰崟鎹綋杩涜寰幆锛屽彇鍏宠仈鐨勬簮鍗曠紪鍙� + foreach (var billObj in e.SelectedRows) + { + DynamicObjectCollection entryRows = entity.DynamicProperty.GetValue(billObj.DataEntity) + as DynamicObjectCollection; + foreach (var entryRow in entryRows) + { + string srcFormId = ""; + string srcSrcBillNo = ""; + try + { + srcFormId = "PRD_PPBOM"; + srcSrcBillNo = fldSrcBillNo.DynamicProperty.GetValue<string>(entryRow); + srcSrcBillNo = DBServiceHelper.ExecuteScalar<string>(Context, $" select distinct FPPBOMBILLNO from T_PRD_PICKMTRLDATA where FSRCBILLNO = '{srcSrcBillNo}' ", srcSrcBillNo); + + } + catch (Exception) + { + } + if (string.IsNullOrWhiteSpace(srcFormId) + || string.IsNullOrWhiteSpace(srcSrcBillNo) + ) + {// 婧愬崟涓嶆槸閲囪喘璁㈠崟锛岀暐杩� + continue; + } + // 婧愬崟缂栧彿宸茬粡鐧昏锛屼笉鍐嶉噸澶嶈褰曪紝鐣ヨ繃 + if (poBillNos.Contains(srcSrcBillNo)) continue; + // Link宸茬粡璁板綍浜嗘簮鍗曚俊鎭紝鐣ヨ繃 + //DynamicObjectCollection linkRows = linkEntry.DynamicProperty.GetValue(entryRow) + // as DynamicObjectCollection; + //if (linkRows.Count > 0) continue; + bool Ret = SourceVerification(Convert.ToString(entryRow["Id"])); + if (!Ret) continue; + + poBillNos.Add(srcSrcBillNo); + } + } + if (poBillNos.Count == 0) return; + DynamicObject[] poObjs = this.LoadPurchaseOrder(poBillNos); + if (poObjs == null || poObjs.Length == 0) return; + Dictionary<string, Dictionary<string, DynamicObject>> dctAllBills = this.BuildDictionary(poObjs); + string srcTableNumber = this.GetPOEntryTableNumber(); + List<DynamicObject> allNewLinkRows = new List<DynamicObject>(); + // 寰幆鍗曟嵁浣擄紝涓哄崟鎹綋锛屽缓绔嬭捣婧愬崟鍏宠仈淇℃伅锛� + foreach (var billObj in e.SelectedRows) + { + DynamicObjectCollection entryRows = entity.DynamicProperty.GetValue(billObj.DataEntity) + as DynamicObjectCollection; + foreach (var entryRow in entryRows) + { + string srcSrcBillNo = fldSrcBillNo.DynamicProperty.GetValue<string>(entryRow); + string srcFormId = "PRD_PPBOM"; + srcSrcBillNo = DBServiceHelper.ExecuteScalar<string>(Context, $" select distinct FPPBOMBILLNO from T_PRD_PICKMTRLDATA where FSRCBILLNO = '{srcSrcBillNo}' ", srcSrcBillNo); + + + if (string.IsNullOrWhiteSpace(srcFormId) + || string.IsNullOrWhiteSpace(srcSrcBillNo) + ) + {// 婧愬崟涓嶆槸閿�鍞鍗曪紝鐣ヨ繃 + continue; + } + Dictionary<string, DynamicObject> dctOneBill = null; + if (dctAllBills.TryGetValue(srcSrcBillNo, out dctOneBill) == false) continue; + DynamicObject materialObj = entryRow["MaterialId"] as DynamicObject; + if (materialObj == null) continue; + string materialNumber = Convert.ToString(materialObj["number"]); + DynamicObject srcRow = null; + if (dctOneBill.TryGetValue(materialNumber, out srcRow) == false) continue; + // Link宸茬粡璁板綍浜嗘簮鍗曚俊鎭紝鐣ヨ繃 + bool Ret = SourceVerification(Convert.ToString(entryRow["Id"])); + if (!Ret) continue; + + DynamicObjectCollection linkRows = linkEntry.DynamicProperty.GetValue(entryRow) + as DynamicObjectCollection; + linkRows.Clear(); + DynamicObject linkRow = new DynamicObject(linkEntry.DynamicObjectType); + linkRow["STableName"] = srcTableNumber; + this.FillLinkRow(srcRow, entryRow, linkRow); + linkRows.Add(linkRow); + allNewLinkRows.Add(linkRow); + } + } + // 涓烘柊寤虹殑婧愬崟鍏宠仈淇℃伅锛岃缃唴鐮� + IDBService dbService = ServiceHelper.GetService<IDBService>(); + dbService.AutoSetPrimaryKey(this.Context, allNewLinkRows.ToArray(), linkEntry.DynamicObjectType); + } + + /// <summary> + /// 鍔犺浇鐩稿叧鐨勯攢鍞鍗曟暟鎹� + /// </summary> + /// <param name="poBillNos"></param> + /// <returns></returns> + private DynamicObject[] LoadPurchaseOrder(HashSet<string> poBillNos) + { + IViewService viewService = ServiceHelper.GetService<IViewService>(); + string formId = "PRD_PPBOM"; + + // 鎸囧畾闇�瑕佸姞杞界殑閿�鍞鍗曞瓧娈� + List<SelectorItemInfo> fields = new List<SelectorItemInfo>(); + fields.Add(new SelectorItemInfo("FID")); // 鍗曟嵁涓婚敭 + fields.Add(new SelectorItemInfo("FTreeEntity_FEntryID")); // 鍗曟嵁浣撲富閿� + fields.Add(new SelectorItemInfo("FBillNo")); // 鍗曟嵁缂栧彿 + fields.Add(new SelectorItemInfo("FBFLowId")); // 涓氬姟娴佺▼ + fields.Add(new SelectorItemInfo("FMaterialId")); // 鐗╂枡 + fields.Add(new SelectorItemInfo("FMaterialID2")); // 鐗╂枡 + fields.Add(new SelectorItemInfo("FBASENEEDQTY")); // 鍩烘湰鍗曚綅鏁伴噺 + fields.Add(new SelectorItemInfo("FBASEPICKEDQTY")); // 鍩烘湰鍗曚綅鍏宠仈鏁伴噺 + fields.Add(new SelectorItemInfo("FBFLOWID")); // + + // 鎸囧畾杩囨护鏉′欢 + string filter = string.Format(" FBillNo IN ('{0}') ", string.Join("','", poBillNos)); + OQLFilter ofilter = OQLFilter.CreateHeadEntityFilter(filter); + var objs = viewService.Load(this.Context, formId, fields, ofilter); + return objs; + } + /// <summary> + /// 鎶婇攢鍞鍗曞崟鎹綋琛屾瀯寤轰负瀛楀吀锛欴ictionary(鍗曟嵁缂栧彿, Dictionary(鐗╂枡缂栫爜, 婧愬崟琛�)); + /// </summary> + /// <param name="poObjs"></param> + /// <returns></returns> + private Dictionary<string, Dictionary<string, DynamicObject>> BuildDictionary(DynamicObject[] poObjs) + { + Dictionary<string, Dictionary<string, DynamicObject>> dctAllBills = + new Dictionary<string, Dictionary<string, DynamicObject>>(); + foreach (var poObj in poObjs) + { + string billNo = Convert.ToString(poObj["BillNo"]); + Dictionary<string, DynamicObject> dctOneBill = new Dictionary<string, DynamicObject>(); + DynamicObjectCollection entryRows = poObj["PPBomEntry"] as DynamicObjectCollection; + foreach (var entryRow in entryRows) + { + DynamicObject materialObj = entryRow["MaterialId"] as DynamicObject; + if (materialObj == null) continue; + string materialNumber = Convert.ToString(materialObj["number"]); + dctOneBill[materialNumber] = entryRow; + } + dctAllBills.Add(billNo, dctOneBill); + } + return dctAllBills; + } + /// <summary> + /// 鑾峰彇閿�鍞鍗曞叧鑱斾富瀹炰綋琛ㄦ牸缂栫爜 + /// </summary> + /// <returns></returns> + private string GetPOEntryTableNumber() + { + IBusinessFlowService bfMetaService = ServiceHelper.GetService<IBusinessFlowService>(); + var tableDefine = bfMetaService.LoadTableDefine(this.Context, POFormId, "FEntity"); + return tableDefine.TableNumber; + } + /// <summary> + /// 濉啓婧愬崟淇℃伅 + /// </summary> + /// <param name="srcRow">婧愬崟琛�</param> + /// <param name="toRow">鐩爣鍗曡</param> + /// <param name="linkRow">鍏宠仈琛�</param> + private void FillLinkRow(DynamicObject srcRow, DynamicObject toRow, DynamicObject linkRow) + { + linkRow["FlowId"] = srcRow["BFLowId_Id"]; + linkRow["FlowLineId"] = 0; + linkRow["RuleId"] = "PRD_PPBOM2PICKMTRL_NORMAL"; + linkRow["SBillId"] = ((DynamicObject)srcRow.Parent)[0]; + linkRow["SId"] = srcRow[0]; + // 鍘熷鎼哄甫閲� + decimal baseUnitQty = Convert.ToDecimal(srcRow["BaseNeedQty"]);//鐢ㄦ枡娓呭崟鍗曚綅鏁伴噺 + decimal joinUnitQty = Convert.ToDecimal(srcRow["BasePickedQty"]);//鐢ㄦ枡娓呭崟鍗曚綅棰嗘枡鏁伴噺 + linkRow["BaseActualQtyOld"] = baseUnitQty - joinUnitQty; + linkRow["BaseActualQty"] = toRow["BASEACTUALQTY"]; //鍩烘湰鍗曚綅瀹炲彂鏁伴噺 + } + + /// <summary> + /// 楠岃瘉鏄惁鐢熸垚杩囩敓浜х敤鏂欐竻鍗曞搴旂殑婧愬崟 + /// </summary> + /// <returns></returns> + public bool SourceVerification(string FTID) + { + string sql = $" select count(*) from T_BF_INSTANCEENTRY where FSTABLENAME= 'T_PRD_PPBOMENTRY' and FTID = '{FTID}'"; + int count = DBServiceHelper.ExecuteScalar<int>(Context, sql, 0); + if (count == 0) + return true; + else + return false; + } + + } +} diff --git a/src/BLL/Demo.BillView/PRD/Pro_ScDayImport.cs b/src/BLL/Demo.BillView/PRD/Pro_ScDayImport.cs index c41185e..a80e1b2 100644 --- a/src/BLL/Demo.BillView/PRD/Pro_ScDayImport.cs +++ b/src/BLL/Demo.BillView/PRD/Pro_ScDayImport.cs @@ -68,7 +68,6 @@ //// 涓嬭浇鍦板潃 //string downloadUrl = "FileUpLoadServices/download.aspx"; //updateControl.SetCustomPropertyValue("ExDownLoadUrl", downloadUrl); - LogHelper.Info("222222"); LogService.WriteAsync("涓婁紶鍔熻兘锛�"); ImportDataSC(fileFullPath); } @@ -120,7 +119,7 @@ if (dt.Rows[i][1].ToString() == "") error += "鐢熶骇璁㈠崟鍙蜂笉鑳戒负绌�;"; if (dt.Rows[i][2].ToString() == "") - error += "鐢熶骇缁勭粐涓嶈兘涓虹┖;"; + error += "缁勭粐涓嶈兘涓虹┖;"; if (dt.Rows[i][3].ToString() == "") error += "鐢熶骇杞﹂棿涓嶈兘涓虹┖;"; if (dt.Rows[i][5].ToString() == "") @@ -145,7 +144,7 @@ string sql = string.Format(@"/*dialect*/ SELECT T1.FBILLNO,T2.* FROM T_PRD_MO T1 LEFT JOIN T_PRD_MOENTRY T2 ON T1.FID = T2.FID JOIN T_BD_MATERIAL T3 ON T2.FMATERIALID = T3.FMATERIALID -WHERE T1.FBILLNO = '{0}' AND T3.FNUMBER = '{1}'", dt.Rows[i][1].ToString(), dt.Rows[i][5].ToString()); +WHERE T1.FBILLNO = '{0}' AND T3.FNUMBER = '{1}' ", dt.Rows[i][1].ToString(), dt.Rows[i][5].ToString()); DataTable _dt = new DataTable(); _dt = DBServiceHelper.ExecuteDataSet(Context, sql).Tables[0]; string FLOT = "";//FLOT 鎵规 @@ -174,7 +173,7 @@ this.Model.SetValue("FSEQ", i + 1, i); this.Model.SetValue("FSalOrderNo", dt.Rows[i][0].ToString(), i); this.Model.SetValue("FSCOrderNo", dt.Rows[i][1].ToString(), i); - this.Model.SetItemValueByNumber("FORGID", dt.Rows[i][2].ToString(), i); + this.Model.SetItemValueByNumber("FORGID", "100", i); this.Model.SetItemValueByNumber("FProductWorkShopId", dt.Rows[i][3].ToString(), i); this.Model.SetItemValueByNumber("FResourcesId", dt.Rows[i][4].ToString(), i); // this.Model.SetValue("FMatrailId", dt.Rows[i][5].ToString(), i); @@ -334,20 +333,20 @@ jsonRoot.Add("IsVerifyBaseDataField", ""); JObject jsonModel = new JObject(); jsonModel.Add("FPreparatDate", date.ToString());//缂栧埗鏃ユ湡 - jsonModel.Add("FSCOrderNo", current["FSCOrderNo"].ToString()); //鐢熶骇璁㈠崟鍙稦SCOrderNo + jsonModel.Add("FSCOrderNo", Convert.ToString(current["FSCOrderNo"])); //鐢熶骇璁㈠崟鍙稦SCOrderNo jsonModel.Add("FHSeOrderBillNo", Convert.ToString(current["FSalOrderNo"]));//閿�鍞鍗曞彿 jsonModel.Add("FHOrderLev", current["FOrderLevel"].ToString());//璁㈠崟绛夌骇 jsonModel.Add("FHOrderQty", Convert.ToString(current["FSalOrderCount"]));//閿�鍞鍗曟暟閲� - jsonModel.Add("FHOrderCommitDate", current["FDeliveryDate"].ToString());//浜よ揣鏈烪OrderCommitDate + jsonModel.Add("FHOrderCommitDate", Convert.ToString(current["FDeliveryDate"]));//浜よ揣鏈烪OrderCommitDate //jsonModel.Add("FBatch", current["FBatch"].ToString());//鎵规 jsonModel.Add("FBatch", FLOT);//鎵规 jsonModel.Add("FHOrderNeedQty", FQTY);// 璁㈠崟闇�姹傛暟閲� jsonModel.Add("FPrdBillNo", FBILLNO); ;//婧愬崟缂栧彿 jsonModel.Add("FPRDMOMAINID", FID); ;//婧愬崟涓诲唴鐮� jsonModel.Add("FPRDMOENTYID", FENTRYID); ;//婧愬崟瀛愬唴鐮� - jsonModel.Add("FOrderQuantity", current["FOrderQuantity"].ToString()); ;//鐢熶骇璁㈠崟鏁伴噺 - jsonModel.Add("FDayPlanQuantity", current["FDayPlanQuantity"].ToString()); ;//鏃ヨ鍒掓暟閲� - jsonModel.Add("FNoScheduled", current["FNoScheduled"].ToString()); ;//鏈帓鏁伴噺 + jsonModel.Add("FOrderQuantity", Convert.ToString(current["FOrderQuantity"])); ;//鐢熶骇璁㈠崟鏁伴噺 + jsonModel.Add("FDayPlanQuantity", Convert.ToString(current["FDayPlanQuantity"])); ;//鏃ヨ鍒掓暟閲� + jsonModel.Add("FNoScheduled", Convert.ToString(current["FNoScheduled"])); ;//鏈帓鏁伴噺 JObject jsonFHMaterID = new JObject(); jsonFHMaterID.Add("FNumber", (current["FMatrailId"] as DynamicObject)["Number"].ToString()); jsonModel.Add("FHMaterID", jsonFHMaterID);//FHMaterID 鐗╂枡 @@ -377,6 +376,8 @@ DateTime EndDate = DBServiceHelper.ExecuteScalar<DateTime>(Context, sql, DateTime.Now); for (int i = 0; i <= 60; i++) { + if (Convert.ToString(current["FT" + "" + i + ""]) == "" || Convert.ToString(current["FT" + "" + i + ""]) == "0") + continue; if (EndDate >= date.AddDays(i)) continue; JObject jsonFPOOrderEntry = new JObject(); @@ -400,7 +401,6 @@ } else { - LogService.WriteAsync(jsonRoot); LogHelper.Error(jsonRoot.ToString()); this.View.ShowErrMessage(jsonRoot.ToString()); } @@ -409,6 +409,15 @@ { for (int i = 0; i <= 60; i++) { + LogHelper.Error("娴嬭瘯璺冲嚭"); + + + if (Convert.ToString(current["FT" + "" + i + ""]) == "" || Convert.ToString(current["FT" + "" + i + ""]) == "0") + continue; + + LogHelper.Error("娴嬭瘯璺冲嚭缁撴潫"); + + JObject jsonFPOOrderEntry = new JObject(); jsonFPOOrderEntry.Add("FHMasterDate", date.AddDays(i).ToShortDateString()); ;//涓绘棩鏈� jsonFPOOrderEntry.Add("FHQty ", Convert.ToString(current["FT" + "" + i + ""])); ;//鏃ヨ鍒掓暟閲� @@ -431,7 +440,6 @@ } else { - LogService.WriteAsync(jsonRoot); LogHelper.Error(jsonRoot.ToString()); this.View.ShowErrMessage(jsonRoot.ToString()); } @@ -441,6 +449,7 @@ } catch (Exception ex) { + LogHelper.Error(ex.ToString()); this.View.ShowErrMessage(ex.ToString()); } diff --git a/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs b/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs index 723e9a5..4498075 100644 --- a/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs +++ b/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs @@ -164,13 +164,20 @@ /// </summary> public void ExportExcel() { - string[] Title = new string[] {"閿�鍞鍗曞彿", "鐢熶骇璁㈠崟鍙�", "鐢熶骇缁勭粐", "鐢熶骇杞﹂棿", "鐢熶骇璧勬簮", "浜у搧浠g爜", "浜у搧鍚嶇О", "瑙勬牸鍨嬪彿", "璁¢噺鍗曚綅", - "鎵规鍙�","閿�鍞鍗曟暟閲�","鐢熶骇璁㈠崟鏁伴噺","鎬婚綈濂楁暟閲�","浜よ揣鏃ユ湡","璁㈠崟绛夌骇","T0","T1","T2","T3","T4","T5","T6","T7", + List<string> Title = new List<string> {"閿�鍞鍗曞彿", "鐢熶骇璁㈠崟鍙�*","鐢熶骇缁勭粐*", "鐢熶骇杞﹂棿*", "鐢熶骇璧勬簮", "浜у搧浠g爜*", "浜у搧鍚嶇О", "瑙勬牸鍨嬪彿", "璁¢噺鍗曚綅", + "鎵规鍙�","閿�鍞鍗曟暟閲�","鐢熶骇璁㈠崟鏁伴噺","鎬婚綈濂楁暟閲�","浜よ揣鏃ユ湡*","璁㈠崟绛夌骇*"}; + /* + ,"T0","T1","T2","T3","T4","T5","T6","T7", "T8","T9","T10","T11","T12","T13","T14","T15","T16","T17", "T18","T19","T20","T21","T22","T23","T24","T25","T26","T27","T28","T29", "T30","T31","T32","T33","T34","T35","T36","T37","T38","T39","T40","T41","T42", - "T43","T44","T45","T46","T47","T48","T49","T50","T51","T52","T53","T54","T55","T56","T57","T58","T59","T60"}; - + "T43","T44","T45","T46","T47","T48","T49","T50","T51","T52","T53","T54","T55","T56","T57","T58","T59","T60" + */ + DateTime date = DateTime.Now; + for (int i = 0; i < 61; i++) + { + Title.Add(date.AddDays(i).ToString("yyyy-MM-dd")); + } string sheetname = "鏃ヨ鍒掑鍏ユā鏉�.xlsx"; string file = ""; file = @"D:\鍔炲叕\K3Cloud\WebSite\TempfilePath\" + sheetname; @@ -219,7 +226,7 @@ //璁剧疆鍒楀悕 HSSFRow row = (HSSFRow)sheet.CreateRow(0); - for (int i = 0; i < Title.Length; i++) + for (int i = 0; i < Title.Count; i++) { ICell cell = (ICell)row.CreateCell(i); var rowName = Title[i]; @@ -229,7 +236,7 @@ //鍗曞厓鏍艰祴鍊� //鍒楀鑷�傚簲锛屽彧瀵硅嫳鏂囧拰鏁板瓧鏈夋晥 - for (int i = 0; i <= Title.Length; i++) + for (int i = 0; i <= Title.Count; i++) { sheet.AutoSizeColumn(i); } @@ -947,7 +954,7 @@ LEFT JOIN JIT_MOMaterReadysBill B ON T1.FStockOrgId = b.FHSTOCKORGID and T1.FMATERIALID =b.FHMATERID and a.FOwnerId = b.FOwnerId LEFT join T_ORG_Organizations c on a.FOWNERID = c.FORGID --join t_BD_Stock d on a.FSTOCKID =d.FSTOCKID ---where d.FAvailableComplete<>0 +where d.FAvailableComplete<>0 --where T1.FMATERIALID in (105773) "); ListInventory = ds.ToModelList<PRD_Inventory>(); @@ -1509,11 +1516,14 @@ { string sql = string.Format(@" /*dialect*/ -select t1.FID,t1.FEntryID,t3.FMATERIALID,T5.FNUMBER,t1.FHMASTERDATE,t1.FHQTY,t4.FMATERIALID FMATERIALID2,T6.FNUMBER FNUMBER2,T7.FNUMBER FUNITNUMBER,FNumerator,FDenominator,convert(decimal(18,2),(FNumerator/FDenominator) *t1.FHQTY) FHQtyMust,T4.FUnitID,t8.FNUMBER FUNITNUMBER2,T3.FID FPPBOM,T4.FENTRYID,isnull(T9.FBillNo,'')FBillNo,t10.FNUMBER FORGNUMBER,t11.FNUMBER FHSOURCENUMBER,FSCRAPRATE,FFIXSCRAPQTY,T9.FID AS DayPlanFID + select t1.FID,t1.FEntryID,t3.FMATERIALID,T5.FNUMBER,t1.FHMASTERDATE,t1.FHQTY,t4.FMATERIALID FMATERIALID2,T6.FNUMBER FNUMBER2,T7.FNUMBER FUNITNUMBER,FNumerator,FDenominator,convert(decimal(18,2),(FNumerator/FDenominator) *t1.FHQTY) FHQtyMust,T4.FUnitID,t8.FNUMBER FUNITNUMBER2,T3.FID FPPBOM,T4.FENTRYID FPPBOMENTRYID,isnull(T9.FBillNo,'')FBillNo,t10.FNUMBER FORGNUMBER,t11.FNUMBER FHSOURCENUMBER,FSCRAPRATE,FFIXSCRAPQTY,T9.FID AS DayPlanFID,t2.FSCORDERNO, +t3.FMOENTRYID,t3.FBILLNO FPPBOMBILLNO,T4.FSEQ,tc.FOWNERTYPEID,tc.FOWNERID,tc.FEntrustPickOrgId,torg.FNUMBER as FORGNUMBER,t3.FMOID,FIssueType FROM Sc_WorkBillSortBillSub t1 JOIN Sc_WorkBillSortBillMAIN t2 on t1.FID = t2.FID JOIN T_PRD_PPBOM T3 on T2.FPRDMOMAINID=t3.FMOID AND T2.FPRDMOENTYID=T3.FMOENTRYID JOIN T_PRD_PPBOMENTRY T4 ON T3.FID=T4.FID +JOIN T_PRD_PPBOMENTRY_C Tc ON T4.FENTRYID=Tc.FENTRYID +join T_ORG_Organizations torg ON tc.FOWNERID = torg.FORGID JOIN T_BD_MATERIAL T5 ON T3.FMATERIALID=T5.FMATERIALID JOIN T_BD_MATERIAL T6 ON T4.FMATERIALID=T6.FMATERIALID LEFT JOIN T_BD_UNIT T7 ON T3.FUNITID = T7.FUNITID @@ -1548,12 +1558,21 @@ FHQtyMust = dr["FHQtyMust"].ToString(), FHQtySub = dr["FHQtyMust"].ToString(), FHPPBomInterID = dr["FPPBOM"].ToString(), - FHPPBomEntryID = dr["FENTRYID"].ToString(), + FHPPBomEntryID = dr["FPPBOMENTRYID"].ToString(), FHSourceID = dr["FHSOURCENUMBER"].ToString(), FNumerator = dr["FNumerator"].ToString(), FDenominator = dr["FDenominator"].ToString(), FFIXSCRAPQTY = dr["FFIXSCRAPQTY"].ToString(), FHQtyScrap = dr["FSCRAPRATE"].ToString(), + FMOBILLNO = dr["FSCORDERNO"].ToString(), + FMOENTRYID = dr["FMOENTRYID"].ToString(), + FPPBOMBILLNO = dr["FPPBOMBILLNO"].ToString(), + FPPBOMFSEQ = dr["FSEQ"].ToString(), + FOwnerTypeId = dr["FOWNERTYPEID"].ToString(), + FOwnerID = dr["FORGNUMBER"].ToString(), + FEntrustPickOrgId = dr["FORGNUMBER"].ToString(), + FMOID = dr["FMOID"].ToString(), + FIssueType = dr["FIssueType"].ToString() }); } LogHelper.Info($"鏃ヨ鍒掔敤鏂欐竻鍗曪紝鏁版嵁鍑嗗瀹屾垚锛屼繚瀛樺埌Model瀹炰綋锛屾�昏鏁帮細{DayPlanMaterial.Count}锛岃�楁椂锛�" + sw.Elapsed); @@ -1564,6 +1583,9 @@ { var _DayPlanMaterial = DayPlanMaterial.Where(x => x.FEntryID == item).ToList(); JObject model = new JObject(); + + if (!string.IsNullOrEmpty(_DayPlanMaterial[0].FID)) + model.Add("FID", _DayPlanMaterial[0].FID); model.Add("FHDate", DateTime.Now); model.Add("FOrgId", new JObject() { ["Fnumber"] = _DayPlanMaterial[0].FOrgId });//鍙戞枡缁勭粐 model.Add("FHMaterID", new JObject() { ["Fnumber"] = _DayPlanMaterial[0].FHMaterID });//鐗╂枡 @@ -1587,11 +1609,20 @@ ModelEnty.Add("FDwyl", Convert.ToDecimal(_item.FNumerator) / Convert.ToDecimal(_item.FDenominator));//鍗曚綅鐢ㄦ枡 ModelEnty.Add("FFIXSCRAPQTY", _item.FFIXSCRAPQTY);//鍥哄畾鎹熻�� ModelEnty.Add("FHQtyScrap", _item.FHQtyScrap);//鍙樺姩鎹熻�楃巼% + ModelEnty.Add("FMOBILLNO", _item.FMOBILLNO);// + ModelEnty.Add("FMOENTRYIDINT", _item.FMOENTRYID);// + ModelEnty.Add("FPPBOMBILLNO", _item.FPPBOMBILLNO);// + ModelEnty.Add("FPPBOMFSEQINT", _item.FPPBOMFSEQ);// + ModelEnty.Add("FOwnerTypeId", _item.FOwnerTypeId);// + ModelEnty.Add("FOwnerID", new JObject() { ["Fnumber"] = _item.FOwnerID });// + ModelEnty.Add("FEntrustPickOrgId", new JObject() { ["Fnumber"] = _item.FEntrustPickOrgId });// + ModelEnty.Add("FMOID", _item.FMOID);// + ModelEnty.Add("FISSUETYPE", _item.FIssueType);// + Entry.Add(ModelEnty); } model.Add("FEntity", Entry); - //if (!string.IsNullOrEmpty(_DayPlanMaterial[0].FID)) - // model.Add("FID", _DayPlanMaterial[0].FID); + Fentity.Add(model); if ((i >= 20 || i == fidList.Count) && (i % 20 == 0 || i == fidList.Count)) { @@ -1685,7 +1716,7 @@ ", FDayPlanWorkID); sql = string.Format(@" /*dialect*/ -SELECT T1.FID,FHMASTERDATE,t1.FEntryID,T1.FBILLNO, FNeedQty,(FLeadtime+FLeadTtime2)FFIXLEADTIME,t5.FMAXPOQTY,FJITBatch FMINPOQTY,FJITMATERIALGROUP,FJITMaterielDemand,FJITSafeStock,t1.FMATERIALID,t6.FNumber,NeedQty, FStockOrgId +SELECT T1.FID,FHMASTERDATE,t1.FEntryID,T1.FBILLNO, FNeedQty,(FLeadtime+FLeadTtime2)FFIXLEADTIME,t5.FMAXPOQTY,FJITBatch FMINPOQTY,FJITMATERIALGROUP,FJITMaterielDemand,FJITSafeStock,t1.FMATERIALID,t6.FNumber,NeedQty, FStockOrgId ,FErpClsID FROM ( select FHICMOINTERID FID,FHICMOENTRYID FEntryID,FPlanDate FHMASTERDATE,FLackCount NeedQty,FHMATERID FMATERIALID,FHStockOrgID FStockOrgId,FPRDBILLNO FBillNo,FSumPlanCount FNeedQty from JIT_MOMaterReadysBill a right join (select max(FID)FID from JIT_MOMaterReadysBill GROUP BY FHICMOENTRYID,FHMATERID) b on a.FID = b.FID @@ -1694,7 +1725,7 @@ join t_BD_MaterialBase t4 on T1.FMATERIALID = t4.FMATERIALID join t_BD_MaterialPlan t5 on T1.FMATERIALID = t5.FMATERIALID WHERE DATEDIFF(D,GETDATE(),FHMASTERDATE) >=0 -AND FERPCLSID=1 +AND FERPCLSID in ('1','3') AND T1.NeedQty>0 AND T1.FENTRYID not in (select distinct FHSOURCEENTRYID from CG_PODEMANDPLANBILLSUB where FHSOURCEINTERID IN ({0})) AND T1.FID in ({0}) @@ -1781,6 +1812,7 @@ FNumber = DayPlanPpbomls.FNumber, OLDDATE = DayPlanPpbomls.FHMASTERDATE, FFIXLEADTIME = FFIXLEADTIME, + FErpClsID = DayPlanPpbomls.FErpClsID, PurchseFID = Purchase.FID, PurchseFentryID = Purchase.FENTRYID, @@ -1833,6 +1865,7 @@ FNumber = DayPlanPpbomls.FNumber, OLDDATE = DayPlanPpbomls.FHMASTERDATE, FFIXLEADTIME = FFIXLEADTIME, + FErpClsID = DayPlanPpbomls.FErpClsID, PurchseFID = Purchase.FID, PurchseFentryID = Purchase.FENTRYID, @@ -2007,6 +2040,7 @@ FentityModel.Add("FHPOOrderInterID", _item.PurchseFID);// 閲囪喘璁㈠崟鍐呯爜锛欶HPOOrderInterID FentityModel.Add("FHPOOrderEntryID", _item.PurchseFentryID); //閲囪喘璁㈠崟瀛愬唴鐮侊細FHPOOrderEntryID FentityModel.Add("FHPOOrderBillNo", _item.PurchseFBillNo); //閲囪喘璁㈠崟鍙凤細FHPOOrderBillNo + FentityModel.Add("FERPCLSID", _item.FErpClsID); //鍙戞枡鏂瑰紡 Fentity.Add(FentityModel); } model.Add("FEntity", Fentity); diff --git a/src/Model/Demo.Model/Model/DayPlanMaterial.cs b/src/Model/Demo.Model/Model/DayPlanMaterial.cs index 44ddc6e..7f45f2d 100644 --- a/src/Model/Demo.Model/Model/DayPlanMaterial.cs +++ b/src/Model/Demo.Model/Model/DayPlanMaterial.cs @@ -51,5 +51,50 @@ public string FDenominator { get; set; } public string FFIXSCRAPQTY { get; set; } public string FHQtyScrap { get; set; } + + /// <summary> + /// 鐢熶骇璁㈠崟鍙� + /// </summary> + public string FMOBILLNO { get; set; } + + /// <summary> + /// 鐢熶骇璁㈠崟鍒嗗綍鍐呯爜 + /// </summary> + public string FMOENTRYID { get; set; } + + /// <summary> + /// 鐢熶骇璁㈠崟鍐呯爜 + /// </summary> + public string FMOID { get; set; } + + /// <summary> + /// 鐢熶骇鐢ㄦ枡娓呭崟缂栧彿 + /// </summary> + public string FPPBOMBILLNO { get; set; } + + /// <summary> + /// 鐢熶骇鐢ㄦ枡娓呭崟鏄庣粏琛屽彿 + /// </summary> + public string FPPBOMFSEQ { get; set; } + + /// <summary> + /// 浜у搧璐т富 + /// </summary> + public string FEntrustPickOrgId { get; set; } + + /// <summary> + /// 璐т富绫诲瀷 + /// </summary> + public string FOwnerTypeId { get; set; } + + /// <summary> + /// 璐т富 + /// </summary> + public string FOwnerID { get; set; } + + /// <summary> + /// 鍙戞枡鏂瑰紡 + /// </summary> + public string FIssueType { get; set; } } } diff --git a/src/Model/Demo.Model/Model/PODemandPlan/DayPlanPpbom.cs b/src/Model/Demo.Model/Model/PODemandPlan/DayPlanPpbom.cs index f5203fb..1710f0f 100644 --- a/src/Model/Demo.Model/Model/PODemandPlan/DayPlanPpbom.cs +++ b/src/Model/Demo.Model/Model/PODemandPlan/DayPlanPpbom.cs @@ -15,7 +15,7 @@ /// </summary> public long FID { get; set; } /// <summary> - /// 鏃ヨ鍒掑伐鍗曠紪鍙� + /// 鐢熶骇璁㈠崟鍙� /// </summary> public string FBILLNO { get; set; } /// <summary> @@ -83,7 +83,11 @@ /// JIT瀹夊叏搴撳瓨 /// </summary> public string FJITSafeStock { get; set; } - + /// <summary> + /// 鐗╂枡灞炴�� + /// </summary> + public string FErpClsID { get; set; } + } } diff --git a/src/Model/Demo.Model/Model/PODemandPlan/PODemandPlanTemp.cs b/src/Model/Demo.Model/Model/PODemandPlan/PODemandPlanTemp.cs index 2264848..3f2389f 100644 --- a/src/Model/Demo.Model/Model/PODemandPlan/PODemandPlanTemp.cs +++ b/src/Model/Demo.Model/Model/PODemandPlan/PODemandPlanTemp.cs @@ -92,5 +92,10 @@ /// 缁勭粐缂栫爜 /// </summary> public string FORGNumber { get; set; } + + /// <summary> + /// 鐗╂枡灞炴�� + /// </summary> + public string FErpClsID { get; set; } } } -- Gitblit v1.9.1