From a0e7ad65f78935d8b4818f063f6974db567d199d Mon Sep 17 00:00:00 2001
From: 王 垚 <1402714037@qq.com>
Date: 星期四, 26 十一月 2020 16:40:11 +0800
Subject: [PATCH] 测试问题项更改
---
src/BLL/Demo.BillView/PRD/Pro_ScDayImport.cs | 154 ++++++++++++++++---------
src/BLL/Demo.BillView/PRD/ProCompleteAnalysisMateriel.cs | 91 +++++++++++++-
src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs | 77 ++++++++++++
3 files changed, 252 insertions(+), 70 deletions(-)
diff --git a/src/BLL/Demo.BillView/PRD/ProCompleteAnalysisMateriel.cs b/src/BLL/Demo.BillView/PRD/ProCompleteAnalysisMateriel.cs
index 4b2e832..b02119b 100644
--- a/src/BLL/Demo.BillView/PRD/ProCompleteAnalysisMateriel.cs
+++ b/src/BLL/Demo.BillView/PRD/ProCompleteAnalysisMateriel.cs
@@ -1,8 +1,11 @@
锘縰sing Kingdee.BOS.App.Data;
using Kingdee.BOS.Core.DynamicForm;
using Kingdee.BOS.Core.DynamicForm.PlugIn;
+using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
+
using Kingdee.BOS.Core.Metadata.EntityElement;
using Kingdee.BOS.Orm.DataEntity;
+using Kingdee.BOS.ServiceHelper;
using Kingdee.BOS.Util;
using System;
using System.Collections.Generic;
@@ -18,26 +21,84 @@
[HotUpdate]
public class ProCompleteAnalysisMateriel : AbstractDynamicFormPlugIn
{
+ bool did = false;
+
public override void OnLoad(EventArgs e)
{
base.OnLoad(e);
- string FHMainICMOInterIDr = this.View.OpenParameter.GetCustomParameter("FHMainICMOInterIDr").ToString();//涓荤敓浜ц鍗曚富鍐呯爜
- //string FBillNo = this.View.OpenParameter.GetCustomParameter("FBillNo").ToString();
- string sql = string.Format(@"/*dialect*/select a.*,b.FBILLNO FBILLNOs from JIT_MOMaterReadysBill a
+ if (this.View.OpenParameter.GetCustomParameter("FHMainICMOInterIDr") == null)
+ {
+ SearchList();
+ }
+ else
+ {
+ if (did)
+ return;
+ string FHMainICMOInterIDr = this.View.OpenParameter.GetCustomParameter("FHMainICMOInterIDr").ToString();//涓荤敓浜ц鍗曚富鍐呯爜
+ //string FBillNo = this.View.OpenParameter.GetCustomParameter("FBillNo").ToString();
+ string sql = string.Format(@"/*dialect*/select a.*,b.FBILLNO FBILLNOs from JIT_MOMaterReadysBill a
left join T_PRD_MO b on a.FHMainICMOInterIDr=b.FID
where FHMainICMOInterIDr ='{0}' ", FHMainICMOInterIDr);
- DataTable dt = DBUtils.ExecuteDataSet(this.Context, sql).Tables[0];
+ DataTable dt = DBServiceHelper.ExecuteDataSet(this.Context, sql).Tables[0];
+ if (dt.Rows.Count > 0)
+ {
+ for (int i = 0; i < dt.Rows.Count; i++)
+ {
+ /*
+ 璁″垝鍙戞枡鏁伴噺 = 璁″垝鎬绘暟閲� * 鍗曚綅鐢ㄦ枡
+ 榻愬鏁伴噺 = 榻愬鏁� * 鍗曚綅鐢ㄦ枡锛堣�冭檻鍒嗗眰绾�* 鐖剁骇锛�
+ 缂烘枡鏁伴噺 = 1 - 2
+ 鏄惁榻愬 = 缂烘枡 < 0 ?
+ */
+ decimal FPlanIssueCount = Convert.ToDecimal(dt.Rows[i]["FSumPlanCount"]) * Convert.ToDecimal(dt.Rows[i]["FUNITDOSAGE"]);//璁″垝鍙戞枡鏁伴噺
+ decimal FCompleteCount = Convert.ToDecimal(dt.Rows[i]["FCompleteCount"]) * Convert.ToDecimal(dt.Rows[i]["FUNITDOSAGE"]);//榻愬鏁伴噺
+
+ decimal FLackCount = FPlanIssueCount - FCompleteCount;//缂烘枡鏁伴噺
+ this.Model.CreateNewEntryRow("FEntity");
+ this.Model.SetValue("FSEQ", i + 1, i);//搴忓彿
+ this.Model.SetValue("FMateralDetailId", dt.Rows[i]["FHMATERID"], i);
+ this.Model.SetValue("FScOrderNoDetail", dt.Rows[i]["FBILLNOs"], i);//鐢熶骇璁㈠崟鍙�
+ this.Model.SetValue("FOccupyCount", FCompleteCount, i);//
+ this.Model.SetValue("FCurrentCount", dt.Rows[i]["FHStockQty"], i);//褰撳墠搴撳瓨鎯呭喌
+ }
+ }
+
+ did = true;
+
+ }
+
+
+ }
+
+ /// <summary>
+ /// 鏌ヨ浜嬩欢
+ /// </summary>
+ public void SearchList()
+ {
+ string sqlwhere = " where 1=1";
+ string sql = string.Format(@"/*dialect*/select a.*,b.FBILLNO FBILLNOs from JIT_MOMaterReadysBill a
+ left join T_PRD_MO b on a.FHMainICMOInterIDr=b.FID
+ ");
+
+ //鐢熶骇璁㈠崟鍙�
+ string PRDBillNo = Convert.ToString(this.Model.GetValue("FScOrderNo"));
+ if (!string.IsNullOrEmpty(PRDBillNo))
+ sqlwhere += $" and FPRDBillNo='{PRDBillNo}'";
+
+ sql += sqlwhere;
+ DataTable dt = DBServiceHelper.ExecuteDataSet(this.Context, sql).Tables[0];
+ this.Model.DeleteEntryData("FEntity");
if (dt.Rows.Count > 0)
{
for (int i = 0; i < dt.Rows.Count; i++)
{
/*
- 璁″垝鍙戞枡鏁伴噺 = 璁″垝鎬绘暟閲� * 鍗曚綅鐢ㄦ枡
- 榻愬鏁伴噺 = 榻愬鏁� * 鍗曚綅鐢ㄦ枡锛堣�冭檻鍒嗗眰绾�* 鐖剁骇锛�
- 缂烘枡鏁伴噺 = 1 - 2
- 鏄惁榻愬 = 缂烘枡 < 0 ?
- */
+ 璁″垝鍙戞枡鏁伴噺 = 璁″垝鎬绘暟閲� * 鍗曚綅鐢ㄦ枡
+ 榻愬鏁伴噺 = 榻愬鏁� * 鍗曚綅鐢ㄦ枡锛堣�冭檻鍒嗗眰绾�* 鐖剁骇锛�
+ 缂烘枡鏁伴噺 = 1 - 2
+ 鏄惁榻愬 = 缂烘枡 < 0 ?
+ */
decimal FPlanIssueCount = Convert.ToDecimal(dt.Rows[i]["FSumPlanCount"]) * Convert.ToDecimal(dt.Rows[i]["FUNITDOSAGE"]);//璁″垝鍙戞枡鏁伴噺
decimal FCompleteCount = Convert.ToDecimal(dt.Rows[i]["FCompleteCount"]) * Convert.ToDecimal(dt.Rows[i]["FUNITDOSAGE"]);//榻愬鏁伴噺
@@ -50,9 +111,19 @@
this.Model.SetValue("FCurrentCount", dt.Rows[i]["FHStockQty"], i);//褰撳墠搴撳瓨鎯呭喌
}
}
+ this.View.UpdateView();
+
+ did = true;
}
-
+ public override void BarItemClick(BarItemClickEventArgs e)
+ {
+ base.BarItemClick(e);
+ if (e.BarItemKey.ToUpper() == "TBFILTER")
+ {
+ SearchList();
+ }
+ }
}
}
diff --git a/src/BLL/Demo.BillView/PRD/Pro_ScDayImport.cs b/src/BLL/Demo.BillView/PRD/Pro_ScDayImport.cs
index 1607510..5347640 100644
--- a/src/BLL/Demo.BillView/PRD/Pro_ScDayImport.cs
+++ b/src/BLL/Demo.BillView/PRD/Pro_ScDayImport.cs
@@ -53,7 +53,7 @@
//}
-
+
public override void AfterBarItemClick(AfterBarItemClickEventArgs e)
{
base.AfterBarItemClick(e);
@@ -111,7 +111,7 @@
{
//Entity entity = this.View.BillBusinessInfo.GetEntity("FEntity");
//DynamicObjectCollection rows = this.Model.GetEntityDataObject(entity);
-
+ this.Model.DeleteEntryData("FEntity");
for (int i = 0; i < dt.Rows.Count; i++)
{
@@ -138,30 +138,6 @@
{
this.Model.SetValue("FT" + "" + j + "", dt.Rows[i][15 + j].ToString(), i);
}
-
- //entity.SeqDynamicProperty.SetValue(row, i + 1);//搴忓彿
- //row["FSalOrderNo"] = dt.Rows[i][0].ToString();//閿�鍞鍗曞彿
- //row["FSCOrderNo"] = dt.Rows[i][1].ToString();//鐢熶骇璁㈠崟鍙�
- //row["FORGID"] = Convert.ToInt32(dt.Rows[i][2].ToString());//鐢熶骇缁勭粐
- //row["FProductWorkShopId"] = Convert.ToInt32(dt.Rows[i][3].ToString());//鐢熶骇杞﹂棿
- //row["FResourcesId"] = Convert.ToInt32(dt.Rows[i][4].ToString());//鐢熶骇璧勬簮
- //row["FMatrailId"] = dt.Rows[i][5].ToString(); //浜у搧浠g爜
- //row["FMatrailName"] = dt.Rows[i][6].ToString(); //浜у搧鍚嶇О
- //row["FModel"] = dt.Rows[i][7].ToString(); //瑙勬牸鍨嬪彿
- //row["FUnit"] = dt.Rows[i][8].ToString(); //璁¢噺鍗曚綅
- //row["FBatch"] = dt.Rows[i][9].ToString(); //鎵规鍙�
- //row["FSalOrderCount"] = dt.Rows[i][10].ToString(); //閿�鍞鍗曟暟閲�
- //row["FProOrderCount"] = dt.Rows[i][11].ToString(); //鐢熶骇璁㈠崟鏁伴噺
- //row["FCompleteSetCount"] = dt.Rows[i][12].ToString(); //鎬婚綈濂楁暟閲�
- //row["FDeliveryDate"] = GetDateTime(Convert.ToInt32(dt.Rows[i][13].ToString())); //浜よ揣鏃ユ湡
- //row["FOrderLevel"] = dt.Rows[i][14].ToString(); //璁㈠崟绛夌骇
- //for (int j = 0; j <= 60; j++)
- //{
- // row["FT" + "" + j + ""] = dt.Rows[i][15 + j].ToString();
- //}
- //this.View.GetControl("FSalOrderNo").Text = "鍏ュ簱鍗曞彿";
- //this.View.GetControl("FSCOrderNo").Text = "閲囪喘鍏ュ簱鏁伴噺";
- // rows.Add(row);
}
}
@@ -175,7 +151,6 @@
}
}
- this.View.GetMainBarItem("TBWJSC").Enabled = false; //閿佸畾鎸夐挳
}
@@ -208,6 +183,26 @@
//鍗曟嵁浣撲俊鎭浆鎹负鍒楄〃闆嗗悎
DynamicObjectCollection entityDataObjoct = this.View.Model.GetEntityDataObject(entity);
+ string _result = "";
+ foreach (DynamicObject current in entityDataObjoct)
+ {
+ //鏍规嵁鐢熶骇璁㈠崟鍙峰拰鐗╂枡鏌ヨ鏄惁瀛樺湪鏄庣粏
+ sql = string.Format(@"/*dialect*/SELECT T1.FBILLNO,T2.* FROM T_PRD_MO T1
+ LEFT JOIN T_PRD_MOENTRY T2 ON T1.FID = T2.FID
+ WHERE T1.FBILLNO = '{0}' AND T2.FMATERIALID = '{1}'", Convert.ToString(current["FSCOrderNo"]), Convert.ToString(current["FMatrailId_Id"]));
+ DataTable dt = new DataTable();
+ dt = DBServiceHelper.ExecuteDataSet(Context, sql).Tables[0];
+ if (dt.Rows.Count == 0)
+ _result += "搴忓彿锛�" + Convert.ToString(current["SEQ"]) + ",鐢熶骇璁㈠崟鍙凤細" + Convert.ToString(current["FSCOrderNo"]) + "瀵瑰簲鐨勭墿鏂�" + (current["FMatrailId"] as DynamicObject)["Number"] + "涓嶅瓨鍦�";
+
+ }
+ if (_result != "")
+ {
+ this.View.ShowErrMessage(_result);
+ return;
+ }
+
+
foreach (DynamicObject current in entityDataObjoct)
{
if (string.IsNullOrEmpty(Convert.ToString(current["FSalOrderNo"])) || string.IsNullOrEmpty(Convert.ToString(current["FSCOrderNo"])))
@@ -216,9 +211,11 @@
//鏍规嵁鐢熶骇璁㈠崟鍙峰拰鐗╂枡鏌ヨ鏄惁瀛樺湪鏄庣粏
sql = string.Format(@"/*dialect*/SELECT T1.FBILLNO,T2.* FROM T_PRD_MO T1
LEFT JOIN T_PRD_MOENTRY T2 ON T1.FID = T2.FID
- WHERE T1.FBILLNO = '{0}' ", Convert.ToString(current["FSCOrderNo"]));
+ WHERE T1.FBILLNO = '{0}' AND T2.FMATERIALID = '{1}'", Convert.ToString(current["FSCOrderNo"]), Convert.ToString(current["FMatrailId_Id"]));
DataTable dt = new DataTable();
dt = DBServiceHelper.ExecuteDataSet(Context, sql).Tables[0];
+ if (dt.Rows.Count == 0)
+ continue;
string FID = "";//FID 婧愬崟涓诲唴鐮�
string FENTRYID = "";//FENTRYID 婧愬崟瀛愬唴鐮�
@@ -239,7 +236,7 @@
jsonRoot.Add("Creator", "");
jsonRoot.Add("NeedUpDateFields", new JArray());
jsonRoot.Add("NeedReturnFields", new JArray());
- jsonRoot.Add("IsDeleteEntry", "true");
+ jsonRoot.Add("IsDeleteEntry", "false");
jsonRoot.Add("SubSystemId", "");
jsonRoot.Add("IsVerifyBaseDataField", "");
@@ -250,7 +247,7 @@
jsonModel.Add("FHOrderLev", current["FOrderLevel"].ToString());//璁㈠崟绛夌骇
jsonModel.Add("FSalOrderCount", current["FOrderLevel"].ToString());//閿�鍞鍗曟暟閲�
jsonModel.Add("FHOrderCommitDate", current["FDeliveryDate"].ToString());//浜よ揣鏈烪OrderCommitDate
- //jsonModel.Add("FBatch", current["FBatch"].ToString());//鎵规
+ //jsonModel.Add("FBatch", current["FBatch"].ToString());//鎵规
jsonModel.Add("FBatch", FLOT);//鎵规
jsonModel.Add("FHOrderNeedQty", FQTY);// 璁㈠崟闇�姹傛暟閲�
jsonModel.Add("FPrdBillNo", FBILLNO); ;//婧愬崟缂栧彿
@@ -262,18 +259,26 @@
jsonFHMaterID.Add("FNumber", (current["FMatrailId"] as DynamicObject)["Number"].ToString());
jsonModel.Add("FHMaterID", jsonFHMaterID);//FHMaterID 鐗╂枡
- JObject jsonFHPRDORGID = new JObject();
- jsonFHPRDORGID.Add("FNumber", (current["FORGID"] as DynamicObject)["Number"].ToString());
- jsonModel.Add("FHPRDORGID", jsonFHPRDORGID);//FHMaterID 鐢熶骇缁勭粐
+ if (Convert.ToString(current["FORGID_Id"]) != "0")
+ {
+ JObject jsonFHPRDORGID = new JObject();
+ jsonFHPRDORGID.Add("FNumber", (current["FORGID"] as DynamicObject)["Number"].ToString());
+ jsonModel.Add("FHPRDORGID", jsonFHPRDORGID);//FHMaterID 鐢熶骇缁勭粐
- //JObject jsonFProductWorkShopId = new JObject();
- //jsonFProductWorkShopId.Add("FNumber", (current["FProductWorkShopId"] as DynamicObject)["Number"].ToString());
- //jsonModel.Add("FHWorkShopID", jsonFProductWorkShopId);//FHMaterID 鐢熶骇杞﹂棿
+ }
+ if (Convert.ToString(current["FProductWorkShopId_Id"]) != "0")
+ {
+ JObject jsonFProductWorkShopId = new JObject();
+ jsonFProductWorkShopId.Add("FNumber", (current["FProductWorkShopId"] as DynamicObject)["Number"].ToString());
+ jsonModel.Add("FHSourceID", jsonFProductWorkShopId);//FHSourceID 鐢熶骇杞﹂棿
+ }
- //JObject jsonFResourcesId = new JObject();
- //jsonFHMaterID.Add("FNumber", (current["FResourcesId"] as DynamicObject)["Number"].ToString());
- //jsonModel.Add("FHSourceID", jsonFResourcesId);//FHMaterID 鐢熶骇璧勬簮
-
+ if (Convert.ToString(current["FResourcesId_Id"]) != "0")
+ {
+ JObject jsonFResourcesId = new JObject();
+ jsonFResourcesId.Add("FNumber", (current["FResourcesId"] as DynamicObject)["Number"].ToString());
+ jsonModel.Add("FHWorkShopID", jsonFResourcesId);//FHWorkShopID 鐢熶骇璧勬簮
+ }
JArray Entry = new JArray();
for (int i = 0; i <= 60; i++)
{
@@ -282,34 +287,73 @@
jsonFPOOrderEntry.Add("FHMasterDate", date.AddDays(i).ToShortDateString()); ;//涓绘棩鏈�
jsonFPOOrderEntry.Add("FHQty ", Convert.ToString(current["FT" + "" + i + ""])); ;//鏃ヨ鍒掓暟閲�
jsonFPOOrderEntry.Add("FColumn", "FT" + "" + i + ""); ;//瀵瑰簲鐨勫垪澶�
- //jsonFPOOrderEntry.Add("FHMainSourceBillType ", "鐢熶骇璁㈠崟"); ;//婧愬崟绫诲瀷
- //jsonFPOOrderEntry.Add("FHMainSourceBillNo", FBILLNO); ;//婧愬崟缂栧彿
- //jsonFPOOrderEntry.Add("FHMainSourceInterID", FID); ;//婧愬崟涓诲唴鐮�
- //jsonFPOOrderEntry.Add("FHMainSourceEntryID", FENTRYID); ;//婧愬崟瀛愬唴鐮�
+ //jsonFPOOrderEntry.Add("FHMainSourceBillType ", "鐢熶骇璁㈠崟"); ;//婧愬崟绫诲瀷
+ //jsonFPOOrderEntry.Add("FHMainSourceBillNo", FBILLNO); ;//婧愬崟缂栧彿
+ //jsonFPOOrderEntry.Add("FHMainSourceInterID", FID); ;//婧愬崟涓诲唴鐮�
+ //jsonFPOOrderEntry.Add("FHMainSourceEntryID", FENTRYID); ;//婧愬崟瀛愬唴鐮�
Entry.Add(jsonFPOOrderEntry);
}
jsonModel.Add("FEntity", Entry);
- jsonRoot.Add("Model", jsonModel);
-
-
- CloudClient cloudClient = new CloudClient("http://localhost/K3Cloud/");
- var result = cloudClient.Save("Paez_Sc_WorkBillAutoSortBill", jsonRoot.ToString());
- JObject saveObj = JObject.Parse(result);
- string saveIsSuc = saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper();
-
- if (saveIsSuc == "TRUE")
+ //鏃ヨ鍒掑伐鍗曚笉涓虹┖鏃秛pdate
+ if (Convert.ToString(current["FDayPlanID"]) != "0")
{
- this.View.ShowMessage("瀵煎叆鎴愬姛");
+ jsonModel.Add("FID", Convert.ToString(current["FDayPlanID"])); ;//婧愬崟缂栧彿
+ jsonRoot.Add("Model", jsonModel);
+ CloudClient cloudClient = new CloudClient("http://localhost/K3Cloud/");
+ var result = cloudClient.Save("Paez_Sc_WorkBillAutoSortBill", jsonRoot.ToString());
+ JObject saveObj = JObject.Parse(result);
+ string saveIsSuc = saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper();
+ if (saveIsSuc == "TRUE")
+ {
+ string FDayPlanBillNo = saveObj["Result"]["ResponseStatus"]["SuccessEntitys"]["Number"].ToString();
+ string FDayPlanID = saveObj["Result"]["ResponseStatus"]["SuccessEntitys"]["Id"].ToString();
+
+ //this.Model.SetValue("FDayPlanBillNo", FDayPlanBillNo, Convert.ToString(current["SEQ"]));//
+ // this.Model.SetValue("FDayPlanID", FDayPlanID, Convert.ToString(current["SEQ"]));//
+
+
+ this.View.ShowMessage("瀵煎叆鎴愬姛");
+
+ }
+ else
+ {
+ this.View.ShowErrMessage("瀵煎叆澶辫触");
+
+ }
}
else
{
- this.View.ShowErrMessage("瀵煎叆澶辫触");
+ jsonRoot.Add("Model", jsonModel);
+ CloudClient cloudClient = new CloudClient("http://localhost/K3Cloud/");
+ var result = cloudClient.Save("Paez_Sc_WorkBillAutoSortBill", jsonRoot.ToString());
+ JObject saveObj = JObject.Parse(result);
+ string saveIsSuc = saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper();
+ if (saveIsSuc == "TRUE")
+ {
+ string FDayPlanBillNo = saveObj["Result"]["Number"].ToString();
+ string FDayPlanID = saveObj["Result"]["Id"].ToString();
+
+ //this.Model.SetValue("FDayPlanBillNo", FDayPlanBillNo, Convert.ToString(current["SEQ"]));//
+ // this.Model.SetValue("FDayPlanID", FDayPlanID, Convert.ToString(current["SEQ"]));//
+
+
+ this.View.ShowMessage("瀵煎叆鎴愬姛");
+
+ }
+ else
+ {
+ this.View.ShowErrMessage("瀵煎叆澶辫触");
+
+ }
}
+
+
+
}
}
catch (Exception ex)
diff --git a/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs b/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs
index d4ac0a7..85e5725 100644
--- a/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs
+++ b/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs
@@ -262,9 +262,21 @@
else
sqlwhere += $" and FHSeOrderBillNo='{FSalOrder}'";
- string sql = $"/*dialect*/update t1 set t1.FHLockedSub=1 from Sc_WorkBillSortBillSub t1 join Sc_WorkBillSortBillMain t2 on t1.FID = t2.FID where FHMASTERDATE between DATEADD(day,-1,getdate()) and DATEADD(day,{day - 1},getdate()) " + sqlwhere;
+ //鑾峰彇鍗曟嵁浣撲俊鎭�
+ Entity entity = this.View.BillBusinessInfo.GetEntity("FEntity");
+ //鍗曟嵁浣撲俊鎭浆鎹负鍒楄〃闆嗗悎
+ DynamicObjectCollection entityDataObjoct = this.View.Model.GetEntityDataObject(entity);
+ List<string> sqlList = new List<string>();
+ string sql;
+ foreach (var item in entityDataObjoct)
+ {
- int result = DBUtils.Execute(Context, sql);
+ sql = $"/*dialect*/update Sc_WorkBillSortBillSub set FHLockedSub=1 where FEntryID in (select TOP({day}) FEntryID from Sc_WorkBillSortBillSub where FHLOCKEDSUB = 0 AND FID = { Convert.ToString(item["FDayPlanWorkID"])} AND DATEDIFF(DAY, GETDATE(), FHMASTERDATE) >= 0 ORDER BY FEntryID) ";
+ sqlList.Add(sql);
+
+ }
+
+ int result = DBServiceHelper.ExecuteBatch(Context, sqlList);
if (result > 0)
{
SearchList222();
@@ -272,7 +284,6 @@
}
else
this.View.ShowMessage("鎿嶄綔澶辫触锛岃仈绯荤鐞嗗憳锛�");
-
}
/// <summary>
/// 淇濆瓨鍔熻兘
@@ -287,11 +298,17 @@
//鍗曟嵁浣撲俊鎭浆鎹负鍒楄〃闆嗗悎
DynamicObjectCollection entityDataObjoct = this.View.Model.GetEntityDataObject(entity);
DateTime date = DateTime.Now;
-
foreach (DynamicObject current in entityDataObjoct)
{
+ DateTime FBzDate = Convert.ToDateTime(Convert.ToDateTime(current["FBzDate"]));
+ DateTime end = Convert.ToDateTime(Convert.ToDateTime(current["FBzDate"]).AddDays(60).ToShortDateString());//鏈�澶ф棩鏈�
for (int i = 0; i <= 60; i++)
{
+ DateTime start = Convert.ToDateTime(date.AddDays(i).ToShortDateString());
+ TimeSpan getDay = end.Subtract(start);
+ //缂栧埗鏃ユ湡+61澶�>date.AddDays(i).ToShortDateString() continue
+ if (getDay.Days < 0)
+ break;
sql = $"/*dialect*/update t1 set FHQTY='{Convert.ToString(current["FT" + "" + i + ""])}' from Sc_WorkBillSortBillSub t1 join " +
$" Sc_WorkBillSortBillMain t2 on t1.FID = t2.FID where FHMASTERDATE='{date.AddDays(i).ToShortDateString()}' and t2.FID='{Convert.ToString(current["FDayPlanWorkID"])}'";
sqlList.Add(sql);
@@ -571,6 +588,16 @@
else
sqlwhere += $" and FHSeOrderBillNo='{FSalOrder}'";
+
+ //鐢熶骇璁㈠崟鍙�
+ string FScOrderMainNo = Convert.ToString((this.Model.GetValue("FScOrderMainNo")));
+ if (string.IsNullOrEmpty(FScOrderMainNo))
+ {
+
+ }
+ else
+ sqlwhere += $" and FSCORDERNO='{FScOrderMainNo}'";
+
//鐗╂枡
if ((this.Model.GetValue("FMatralId") as DynamicObject) != null)
{
@@ -612,6 +639,10 @@
this.Model.SetValue("FHMainSourceInterID", dt.Rows[i]["FPRDMOMAINID"].ToString(), i);//婧愬崟涓诲唴鐮丗HMainSourceInterID
this.Model.SetValue("FHMainSourceEntryID", dt.Rows[i]["FPRDMOENTYID"].ToString(), i);//婧愬崟瀛愬唴鐮丗HMainSourceEntryID
this.Model.SetValue("FDayPlanWorkID", dt.Rows[i]["FID"].ToString(), i);//鏃ヨ鍒掑伐鍗旻ID
+
+ this.Model.SetValue("FProductWorkShopId", dt.Rows[i]["FHSourceID"].ToString(), i);//鐢熶骇杞﹂棿
+ this.Model.SetValue("FResourcesId", dt.Rows[i]["FHWorkShopID"].ToString(), i);//鐢熶骇璧勬簮
+
sql = @"/*dialect*/SELECT * FROM Sc_WorkBillSortBillSub WHERE DATEDIFF(D,GETDATE(),FHMASTERDATE)>=0 and FID=" + dt.Rows[i]["FID"].ToString();
DataTable _dt = DBServiceHelper.ExecuteDataSet(Context, sql).Tables[0];
@@ -870,6 +901,41 @@
DataSet ds = DBServiceHelper.ExecuteDataSet(Context, sql);
List<DayPlanPpbom> DayPlanPpbom = ds.ToModelList<DayPlanPpbom>();
+
+ sql = @"select T1.FID,FPLANCOUNT,FCOMPLETECOUNT,t2.FHQTY from SC_WORKBILLSORTBILLMAIN T1
+JOIN SC_WORKBILLSORTBILLSUB T2 ON T1.FID=T2.FID WHERE DATEDIFF(D,GETDATE(),FHMASTERDATE) >=0 AND FPLANCOUNT>FCOMPLETECOUNT AND T1.FID in (" + FDayPlanWorkID + ")";
+ DataSet Complete = DBServiceHelper.ExecuteDataSet(Context, sql);
+ List<DayPlanPpbom> CompleteList = ds.ToModelList<DayPlanPpbom>();
+ //FID闆嗗悎
+ var FIDList = CompleteList.Select(x => x.FID).Distinct().ToList();
+ foreach (var item in FIDList)
+ {
+ var _CompleteList = CompleteList.Where(p => p.FID == item).ToList();
+ decimal FComplete = _CompleteList.FirstOrDefault().FCOMPLETECOUNT;
+ if (FComplete == 0)
+ continue;
+ foreach (var _item in _CompleteList)
+ {
+ FComplete = FComplete - _item.FHQTY;
+ if (FComplete >= 0)
+ {
+ DayPlanPpbom.RemoveAll(p => p.FENTRYID == _item.FENTRYID);
+
+ }
+ else
+ {
+ DayPlanPpbom.FindAll(p => p.FENTRYID == _item.FENTRYID).ForEach(x =>
+ {
+ x.NeedQty = -(x.FNeedQty * FComplete);
+ });
+ break;
+ }
+
+
+ }
+
+ }
+
//鐗╂枡闆嗗悎 鐢辩墿鏂欏幓鍒嗙粍
List<string> MaterialIDList = DayPlanPpbom.Select(x => x.FMATERIALID).Distinct().ToList();
//鎻愭枡璁″垝鏁版嵁闆嗕复鏃跺瓨鍌ㄩ泦鍚�
@@ -1023,6 +1089,7 @@
{
if (Purchase.FQTY >= NeedQty)
{
+
List<int> mmm = new List<int>();
foreach (int id in FEntryIdList)
{
@@ -1117,7 +1184,7 @@
{
FEntryIdList.Remove(mm);
}
-
+
}
}
NeedQty = 0;
--
Gitblit v1.9.1