From bc4fb58104ec4cc7991c553f85c8b4762403e379 Mon Sep 17 00:00:00 2001
From: 王 垚 <1402714037@qq.com>
Date: 星期二, 02 三月 2021 17:29:39 +0800
Subject: [PATCH] 日计划用料清单增加是否替代料

---
 src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs |  237 +++++++++++++++++++++++++---------------------------------
 1 files changed, 103 insertions(+), 134 deletions(-)

diff --git a/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs b/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs
index d01441c..c0e6ba3 100644
--- a/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs
+++ b/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs
@@ -2,11 +2,13 @@
 using Demo.Model.Model.PODemandPlan;
 using K3Cloud.Extend.Utils;
 using Kingdee.BOS.Core;
+using Kingdee.BOS.Core.Bill;
 using Kingdee.BOS.Core.Const;
 using Kingdee.BOS.Core.DynamicForm;
 using Kingdee.BOS.Core.DynamicForm.PlugIn;
 using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
 using Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel;
+using Kingdee.BOS.Core.Metadata;
 using Kingdee.BOS.Core.Metadata.EntityElement;
 using Kingdee.BOS.JSON;
 using Kingdee.BOS.KDThread;
@@ -66,6 +68,7 @@
             base.BarItemClick(e);
             try
             {
+                LogHelper.Info("鐢熶骇璁″垝骞冲彴鎸夐挳");
                 if (e.BarItemKey.ToUpper() == "BTEXPORT")
                 {
                     ExportExcel();
@@ -158,6 +161,44 @@
             }
         }
         /// <summary>
+        /// button鎸夐挳鐐瑰嚮浜嬩欢
+        /// </summary>
+        /// <param name="e"></param>
+        public override void ButtonClick(ButtonClickEventArgs e)
+        {
+            base.ButtonClick(e);
+            if (e.Key.ToUpper() == "FTBXNQT")
+            {
+                try
+                {
+                    List<string> sqlList = new List<string>();
+                    string sql = $"truncate table Sc_WorkBillMainXnqt";
+                    sqlList.Add(sql);
+                    sql = $"truncate table Sc_WorkBillSubXnqt";
+                    sqlList.Add(sql);
+                    string columnName = DBServiceHelper.ExecuteScalar<string>(Context, "/*dialect*/ select stuff((select ',' + name  from syscolumns Where id = object_Id('Sc_WorkBillMainXnqt') for xml path('')),1,1,'') as name ", "");
+                    sql = $"insert into  Sc_WorkBillMainXnqt({columnName}) select {columnName} from  Sc_WorkBillSortBillMain";
+                    LogHelper.Info("娴嬭瘯1锛�" + sql);
+                    sqlList.Add(sql);
+                    columnName = DBServiceHelper.ExecuteScalar<string>(Context, "/*dialect*/ select stuff((select ',' + name  from syscolumns Where id = object_Id('Sc_WorkBillSubXnqt') for xml path('')),1,1,'') as name ", "");
+                    sql = $"insert into  Sc_WorkBillSubXnqt({columnName}) select {columnName} from  Sc_WorkBillSortBillSub";
+                    LogHelper.Info("娴嬭瘯1锛�" + sql);
+
+                    sqlList.Add(sql);
+                    sql = $"update Sc_WorkBillSubXnqt set  FComplete=''";
+                    sqlList.Add(sql);
+
+                    DBServiceHelper.ExecuteBatch(Context, sqlList);
+                }
+                catch (Exception ex)
+                {
+                    this.View.ShowErrMessage(ex.Message);
+                    return;
+                }
+                this.View.ShowMessage("鎿嶄綔鎴愬姛");
+            }
+        }
+        /// <summary>
         /// 琛屽弻鍑� 璺冲嚭榻愬鍒嗘瀽鏄庣粏鍒楄〃
         /// </summary>
         /// <param name="e"></param>    
@@ -172,14 +213,30 @@
                 //鐢熶骇璁″垝骞冲彴鎷栨湡鏄庣粏璺宠浆
                 formPa.FormId = "paez_TardinessDetails";
                 formPa.CustomParams.Add("FID", Convert.ToString(this.View.Model.GetValue("FDayPlanWorkID", e.Row).ToString()));
+                this.View.ShowForm(formPa);
+            }
+            else if (e.ColKey == "FQTYLS")
+            {
+                //鐢熶骇璁″垝骞冲彴
+                string pageId = Guid.NewGuid().ToString();
+                BillShowParameter showParameter = new BillShowParameter();
+                showParameter.FormId = "Paez_Sc_WorkBillAutoSortBill";
+                showParameter.OpenStyle.ShowType = ShowType.MainNewTabPage;
+                showParameter.PageId = pageId;
+                showParameter.Status = OperationStatus.EDIT;
+                // 浼犲叆闇�瑕佷慨鏀圭殑鏃ヨ鍒掑伐鍗曞唴鐮侊紝 
+                showParameter.PKey = Convert.ToString(this.View.Model.GetValue("FDayPlanWorkID", e.Row).ToString());
+                this.View.ShowForm(showParameter);
+
             }
             else
             {
                 //榻愬鍒嗘瀽鏄庣粏鍒楄〃璺宠浆
                 formPa.FormId = "paez_CompleteAnalysisDetail";
                 formPa.CustomParams.Add("FHICMOInterID", Convert.ToString(this.View.Model.GetValue("FDayPlanWorkID", e.Row).ToString()));
+                this.View.ShowForm(formPa);
             }
-            this.View.ShowForm(formPa);
+
         }
         /// <summary>
         /// 鏌ョ湅铏氭嫙榻愬
@@ -980,7 +1037,6 @@
             {
                 Stopwatch sw = new Stopwatch();
                 sw.Start();//寮�濮嬭鏃�
-                LogHelper.Info("榻愬鍒嗘瀽寮�濮嬪噯澶囨暟鎹細" + sw.Elapsed);
                 //娓呯┖榻愬涓存椂琛�
                 DBServiceHelper.Execute(Context, "/*dialect*/  delete JIT_MOMaterReadysBill ");
                 //鏇存柊鐘舵��
@@ -1052,9 +1108,9 @@
                 int i = 1;
                 //鍒涘缓瀛楀吀 鐢ㄤ簬鍌ㄥ瓨鐗╂枡 + 鍗犵敤鏁伴噺
                 Dictionary<string, decimal> occupyDic = new Dictionary<string, decimal>();
+                LogHelper.Info("榻愬鍒嗘瀽鍑嗗鏁版嵁瀹屾垚锛�" + sw.Elapsed);
                 foreach (var item in DatePlanList)
                 {
-
                     //绛涢�夊嚭褰撴棩璁″垝鏁版嵁
                     var _BomList = BomList.Where(x => x.FHMASTERDATE == item.FHMASTERDATE && x.FPRDMOENTYID == item.FPRDMOENTYID).ToList();
                     foreach (var _item in _BomList)
@@ -1070,7 +1126,6 @@
                             decimal _fLackCount = _item.PlanCount > sjkcList.FBASEQTY ? (_item.PlanCount - sjkcList.FBASEQTY) : 0;//缂烘枡鏁伴噺
                             foreach (var Inventory in _ListInventory)
                             {
-
                                 if (need == 0)
                                     break;
                                 decimal fCompleteCount = need >= Inventory.FBASEQTY ? Inventory.FBASEQTY : need;//榻愬鏁伴噺
@@ -1659,127 +1714,6 @@
         /// <summary>
         /// 鏃ヨ鍒掔敤鏂欐竻鍗曠敓鎴�
         /// </summary>
-        public void DayPlanPPBomBill()
-        {
-            Stopwatch sw = new Stopwatch();
-            sw.Start();//寮�濮嬭鏃�
-            LogHelper.Info("鎵归噺锛岀敓鎴愭棩璁″垝鐢ㄦ枡娓呭崟鍑嗗鏁版嵁");
-            //閿佸畾鐨勬棩璁″垝涓嶇敓鎴�
-            try
-            {
-                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
-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_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
-LEFT JOIN T_BD_UNIT T8 ON T4.FUNITID = T8.FUNITID
- LEFT JOIN Sc_DayPlanPPBomBillMain T9 ON T1.FEntryID=T9.FDayPlanFID
- LEFT join T_ORG_Organizations t10 on t2.FHPRDORGID = t10.FORGID
- LEFT join T_ENG_WORKCENTER t11 on t2.FHSOURCEID = t11.FID
- WHERE t1.FHQTY>0
-"
-);
-                LogHelper.Info("鎵归噺锛岀敓鎴愭棩璁″垝鐢ㄦ枡娓呭崟鍑嗗鏁版嵁sql:" + sql);
-                DataSet ds = DBServiceHelper.ExecuteDataSet(Context, sql);
-                DataTable dt = ds.Tables[0];
-                List<DayPlanMaterial> DayPlanMaterial = new List<DayPlanMaterial>();
-                if (dt.Rows.Count > 0)
-                {
-                    foreach (DataRow dr in dt.Rows)
-                    {
-                        DayPlanMaterial.Add(new Demo.Model.Model.DayPlanMaterial
-                        {
-                            FID = dr["DayPlanFID"].ToString(),
-                            FEntryID = dr["FEntryID"].ToString(),
-                            FHDate = DateTime.Now.ToString(),
-                            FOrgId = dr["FORGNUMBER"].ToString(),
-                            FHMaterID = dr["FNUMBER"].ToString(),
-                            FHWorkDate = dr["FHMASTERDATE"].ToString(),
-                            FHQty = dr["FHQTY"].ToString(),
-                            FHUnitID = dr["FUNITNUMBER"].ToString(),
-                            FDayPlanFID = dr["FEntryID"].ToString(),
-                            FHMaterSubID = dr["FNUMBER2"].ToString(),
-                            FHUnitSubID = dr["FUNITNUMBER2"].ToString(),
-                            FHQtyMust = dr["FHQtyMust"].ToString(),
-                            FHQtySub = dr["FHQtyMust"].ToString(),
-                            FHPPBomInterID = dr["FPPBOM"].ToString(),
-                            FHPPBomEntryID = dr["FENTRYID"].ToString(),
-                            FHSourceID = dr["FHSOURCENUMBER"].ToString(),
-                            FNumerator = dr["FNumerator"].ToString(),
-                            FDenominator = dr["FDenominator"].ToString(),
-                            FFIXSCRAPQTY = dr["FFIXSCRAPQTY"].ToString(),
-                            FHQtyScrap = dr["FSCRAPRATE"].ToString(),
-                        });
-                    }
-                    LogHelper.Info($"鎵归噺锛屾棩璁″垝鐢ㄦ枡娓呭崟锛屾暟鎹噯澶囧畬鎴愶紝淇濆瓨鍒癕odel瀹炰綋锛屾�昏鏁帮細{DayPlanMaterial.Count}锛岃�楁椂锛�" + sw.Elapsed);
-                    var fidList = DayPlanMaterial.Select(x => x.FEntryID).Distinct().ToList();
-                    foreach (var item in fidList)
-                    {
-                        var _DayPlanMaterial = DayPlanMaterial.Where(x => x.FEntryID == item).ToList();
-                        JObject model = new JObject();
-                        model.Add("FHDate", DateTime.Now);
-                        model.Add("FOrgId", new JObject() { ["Fnumber"] = _DayPlanMaterial[0].FOrgId });//鍙戞枡缁勭粐
-                        model.Add("FHMaterID", new JObject() { ["Fnumber"] = _DayPlanMaterial[0].FHMaterID });//鐗╂枡
-                        model.Add("FHWorkDate", _DayPlanMaterial[0].FHWorkDate);//鏃ュ伐鍗曟棩鏈� FHWorkDate
-                        model.Add("FHQty", _DayPlanMaterial[0].FHQty);//涓讳骇鍝佹暟閲忥細FHQty 
-                        model.Add("FHUnitID", new JObject() { ["Fnumber"] = _DayPlanMaterial[0].FHUnitID });//鍗曚綅锛欶HUnitID 
-                        model.Add("FDayPlanFID", _DayPlanMaterial[0].FDayPlanFID);//鏃ヨ鍒掑伐鍗曞唴鐮� 
-                        JArray Entry = new JArray();
-                        foreach (var _item in _DayPlanMaterial)
-                        {
-                            JObject ModelEnty = new JObject();
-                            ModelEnty.Add("FHMaterSubID", new JObject() { ["Fnumber"] = _item.FHMaterSubID });//瀛愮墿鏂橣HMaterSubID
-                            ModelEnty.Add("FHUnitSubID", new JObject() { ["Fnumber"] = _item.FHUnitSubID });//鍗曚綅FHUnitSubID
-                            ModelEnty.Add("FHQtyMust", _item.FHQtyMust);//搴斿彂鏁伴噺FHQtyMust
-                            ModelEnty.Add("FHQtySub", _item.FHQtySub);//鏁伴噺FHQtySub
-                            ModelEnty.Add("FHPPBomInterID", _item.FHPPBomInterID);//鐢ㄦ枡娓呭崟涓诲唴鐮丗HPPBomInterID
-                            ModelEnty.Add("FHPPBomEntryID", _item.FHPPBomEntryID);//鐢ㄦ枡娓呭崟瀛愬唴鐮丗HPPBomEntryID
-                            ModelEnty.Add("FHSourceID", new JObject() { ["Fnumber"] = _item.FHSourceID });//鐢熶骇璧勬簮FHSourceID
-                            ModelEnty.Add("FNumerator", _item.FNumerator);//鍒嗘瘝
-                            ModelEnty.Add("FDenominator", _item.FDenominator);//鍒嗗瓙
-                            ModelEnty.Add("FDwyl", Convert.ToDecimal(_item.FNumerator) / Convert.ToDecimal(_item.FDenominator));//鍗曚綅鐢ㄦ枡
-                            ModelEnty.Add("FFIXSCRAPQTY", _item.FFIXSCRAPQTY);//鍥哄畾鎹熻��
-                            ModelEnty.Add("FHQtyScrap", _item.FHQtyScrap);//鍙樺姩鎹熻�楃巼%
-                            Entry.Add(ModelEnty);
-                        }
-                        model.Add("FEntity", Entry);
-                        //if (!string.IsNullOrEmpty(_DayPlanMaterial[0].FID))
-                        //    model.Add("FID", _DayPlanMaterial[0].FID);
-                        JObject jsonRoot = new JObject()
-                        {
-                            ["Creator"] = "",
-                            ["NeedUpDateFields"] = new JArray(),
-                            ["NeedReturnFields"] = new JArray(),
-                            ["IsDeleteEntry"] = "true",
-                            ["SubSystemId"] = "",
-                            ["IsVerifyBaseDataField"] = "false",
-                            ["Model"] = model
-                        };
-
-                        CloudClient cloudClient = new CloudClient("http://localhost//k3cloud/");
-                        var result = cloudClient.Save("Paez_Sc_DayPlanPPBomBill", jsonRoot.ToString());
-                        JObject saveObj = JObject.Parse(result);
-                        string saveIsSuc = saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper();
-                        if (saveIsSuc != "TRUE")
-                        {
-                            LogHelper.Error(jsonRoot.ToString());
-
-                        }
-                    }
-                }
-                sw.Stop();//缁撴潫璁℃椂
-                LogHelper.Info("鎵归噺锛岀敓鎴愭棩璁″垝鐢ㄦ枡娓呭崟杩愯鎬绘椂闀匡細" + sw.Elapsed);
-            }
-            catch (Exception ex)
-            {
-                LogHelper.Error("鎵归噺锛岀敓鎴愭棩璁″垝鐢ㄦ枡娓呭崟+" + ex.Message.ToString());
-            }
-        }
         public void DayPlanPPBomBillBatch()
         {
             Stopwatch sw = new Stopwatch();
@@ -1790,12 +1724,18 @@
             {
                 string sql = string.Format(@"
 /*dialect*/
- select t1.FID,t1.FSEQ FDayPlanFSEQ,t1.FEntryID,T2.FBILLNO AS FDayPlanFBILLNO,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,FMaterialType
+select t1.FID,t1.FSEQ FDayPlanFSEQ,t1.FEntryID,T2.FBILLNO AS FDayPlanFBILLNO,t3.FMATERIALID,T5.FNUMBER,t1.FHMASTERDATE,t1.FHQTY,t4.FMATERIALID FMATERIALID2,T6.FNUMBER FNUMBER2,T7.FNUMBER FUNITNUMBER,FNumerator,FDenominator,convert(decimal(18,2),(t4.FMustQty/T3.FQTY) *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,FMaterialType,td.FNUMBER as FWORKSHOPID,t4.FReplaceGroup,isnull(ttt.FrowCount,0)FIsTDL,t4.FUseRate
 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
+left join
+(
+	select FREPLACEGROUP,COUNT(*) FrowCount,FID  from T_PRD_PPBOMENTRY
+	GROUP BY FREPLACEGROUP,FID
+	having count(*) >1
+) ttt on t4.FID = ttt.FID and  t4.FREPLACEGROUP =ttt.FREPLACEGROUP 
 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
@@ -1805,7 +1745,16 @@
  LEFT JOIN Sc_DayPlanPPBomBillMain T9 ON T1.FEntryID=T9.FDayPlanFID
  LEFT join T_ORG_Organizations t10 on t2.FHPRDORGID = t10.FORGID
  LEFT join T_ENG_WORKCENTER t11 on t2.FHSOURCEID = t11.FID
- WHERE t1.FHQTY>0
+ left join T_BD_DEPARTMENT td on t3.FWORKSHOPID=td.FDEPTID
+ WHERE t1.FEntryID not in 
+(
+select distinct FDAYPLANFID from Sc_DayPlanPPBomBillMain where FID IN (
+select distinct FDAYPLANFID from T_PRD_PICKMTRLDATA)
+)
+-- and T4.FMustQty>0
+-- (
+-- select  FDayPlanFID FROM Sc_DayPlanPPBomBillMain WHERE FID IN ( select distinct FID from  Sc_DayPlanPPBomBillSub WHERE FTranslateQty >0 or FPickedQty >0)
+-- )
 "
 );
                 LogHelper.Info("鐢熸垚鏃ヨ鍒掔敤鏂欐竻鍗曞噯澶囨暟鎹畇ql:" + sql);
@@ -1849,7 +1798,11 @@
                             FIssueType = dr["FIssueType"].ToString(),
                             FMaterialType = dr["FMaterialType"].ToString(),
                             FDayPlanFSEQ = dr["FDayPlanFSEQ"].ToString(),
-                            FDayPlanFBILLNO = dr["FDayPlanFBILLNO"].ToString()
+                            FDayPlanFBILLNO = dr["FDayPlanFBILLNO"].ToString(),
+                            FWORKSHOPID = dr["FWORKSHOPID"].ToString(),
+                            FReplaceGroup = dr["FReplaceGroup"].ToString(),
+                            FUseRate = dr["FUseRate"].ToString(),
+                            FIsTDL = dr["FIsTDL"].ToString()
                         });
                     }
                     LogHelper.Info($"鏃ヨ鍒掔敤鏂欐竻鍗曪紝鏁版嵁鍑嗗瀹屾垚锛屼繚瀛樺埌Model瀹炰綋锛屾�昏鏁帮細{DayPlanMaterial.Count}锛岃�楁椂锛�" + sw.Elapsed);
@@ -1858,7 +1811,7 @@
                     JArray Fentity = new JArray();
                     foreach (var item in fidList)
                     {
-                        var _DayPlanMaterial = DayPlanMaterial.Where(x => x.FEntryID == item).ToList();
+                        var _DayPlanMaterial = DayPlanMaterial.Where(x => x.FEntryID == item).OrderBy(x => Convert.ToInt32(x.FReplaceGroup)).ToList();
                         JObject model = new JObject();
 
                         if (!string.IsNullOrEmpty(_DayPlanMaterial[0].FID))
@@ -1899,10 +1852,12 @@
                             ModelEnty.Add("FMOID", _item.FMOID);//  
                             ModelEnty.Add("FISSUETYPE", _item.FIssueType);//  
                             ModelEnty.Add("FMaterialType", _item.FMaterialType);//  
-                                                                                // ModelEnty.Add("FSEQ", FSEQ);//  
+                            ModelEnty.Add("FWORKSHOPID", new JObject() { ["Fnumber"] = _item.FWORKSHOPID });// 
+                            ModelEnty.Add("FReplaceGroup", _item.FReplaceGroup);// 
+                            ModelEnty.Add("FUseRate", _item.FUseRate);// 
+                            ModelEnty.Add("FIsTDL", Convert.ToInt32(_item.FIsTDL) > 0 ? 1 : 0);// 
                             Entry.Add(ModelEnty);
                             FSEQ++;
-
                         }
                         model.Add("FEntity", Entry);
 
@@ -1924,6 +1879,20 @@
                             var result = cloudClient.BatchSave("Paez_Sc_DayPlanPPBomBill", jsonRoot.ToString());
                             JObject saveObj = JObject.Parse(result);
                             string saveIsSuc = saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper();
+                            if (saveIsSuc == "TRUE")
+                            {
+                                var Success = saveObj["Result"]["ResponseStatus"]["SuccessEntitys"].ToString().TrimStart('{').TrimEnd('}');
+                                var allList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Dictionary<string, string>>>(Success);
+                                List<string> ls = new List<string>();
+                                foreach (var it in allList)
+                                {
+                                    it.TryGetValue("Id", out string value);
+                                    ls.Add(value);
+                                }
+                                var resultAA = String.Join(",", ls.ToArray());
+                                string resSql = string.Format(@"/*dialect*/ update Sc_WorkBillSortBillSub set Sc_WorkBillSortBillSub.FDAYPLANPPBOMBILLNO = Sc_DayPlanPPBomBillMain.FBILLNO from Sc_WorkBillSortBillSub   join Sc_DayPlanPPBomBillMain   on Sc_WorkBillSortBillSub.FEntryID = Sc_DayPlanPPBomBillMain.FDayPlanFID where Sc_DayPlanPPBomBillMain.FID in ({0})", resultAA);
+                                DBServiceHelper.Execute(Context, resSql);
+                            }
                             if (saveIsSuc != "TRUE")
                             {
                                 LogHelper.Error("鏃ヨ鍒掔敤鏂欐竻鍗曞垪琛ㄧ敓鎴愬け璐�:" + jsonRoot.ToString());
@@ -2056,7 +2025,7 @@
                         _PurchaseInventory = PurchaseInventory.Where(x => x.FMATERIALID == item.FMATERIALID && x.FStockOrgId == item.FStockOrgId && x.FQTY > 0).OrderBy(x => x.FENTRYID).ToList();
                         if (_PurchaseInventory.Count == 0)
                         {
-                            LogHelper.Info("[鎻愭枡璁″垝寮�濮媇褰撳墠鐗╂枡鏄庣粏鏃犻噰璐俊鎭細" + item.FMATERIALID + " 搴撳瓨缁勭粐锛�" + item.FStockOrgId);
+                            //LogHelper.Info("[鎻愭枡璁″垝寮�濮媇褰撳墠鐗╂枡鏄庣粏鏃犻噰璐俊鎭細" + item.FMATERIALID + " 搴撳瓨缁勭粐锛�" + item.FStockOrgId);
                             break;
                         }
 
@@ -2080,7 +2049,7 @@
                         //{
                         foreach (var Purchase in _PurchaseInventory)
                         {
-                            LogHelper.Info("閲囪喘璁㈠崟鍙锋祴璇曪細" + Purchase.FBillNo);
+                            //LogHelper.Info("閲囪喘璁㈠崟鍙锋祴璇曪細" + Purchase.FBillNo);
                             //LogHelper.Info("鐗╂枡锛�" + Purchase.FMATERIALID + ",閲囪喘璁㈠崟鏁伴噺锛�" + Purchase.FQTY);
                             if (Purchase.FQTY >= NeedQty)
                             {

--
Gitblit v1.9.1