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