From a05018727c284e1d24967e0cf120a934796191b8 Mon Sep 17 00:00:00 2001
From: 王 垚 <1402714037@qq.com>
Date: 星期二, 02 三月 2021 16:02:05 +0800
Subject: [PATCH] 更改

---
 src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs |   54 ++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 40 insertions(+), 14 deletions(-)

diff --git a/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs b/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs
index 31bb71a..9e6587e 100644
--- a/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs
+++ b/src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs
@@ -68,6 +68,7 @@
             base.BarItemClick(e);
             try
             {
+                LogHelper.Info("鐢熶骇璁″垝骞冲彴鎸夐挳");
                 if (e.BarItemKey.ToUpper() == "BTEXPORT")
                 {
                     ExportExcel();
@@ -208,7 +209,7 @@
             base.EntityRowClick(e);
             DynamicFormShowParameter formPa = new DynamicFormShowParameter();
             if (e.ColKey == "FDELAYLNUM")
-            {   
+            {
                 //鐢熶骇璁″垝骞冲彴鎷栨湡鏄庣粏璺宠浆
                 formPa.FormId = "paez_TardinessDetails";
                 formPa.CustomParams.Add("FID", Convert.ToString(this.View.Model.GetValue("FDayPlanWorkID", e.Row).ToString()));
@@ -224,7 +225,7 @@
                 showParameter.PageId = pageId;
                 showParameter.Status = OperationStatus.EDIT;
                 // 浼犲叆闇�瑕佷慨鏀圭殑鏃ヨ鍒掑伐鍗曞唴鐮侊紝 
-                showParameter.PKey =Convert.ToString(this.View.Model.GetValue("FDayPlanWorkID", e.Row).ToString());
+                showParameter.PKey = Convert.ToString(this.View.Model.GetValue("FDayPlanWorkID", e.Row).ToString());
                 this.View.ShowForm(showParameter);
 
             }
@@ -235,7 +236,7 @@
                 formPa.CustomParams.Add("FHICMOInterID", Convert.ToString(this.View.Model.GetValue("FDayPlanWorkID", e.Row).ToString()));
                 this.View.ShowForm(formPa);
             }
-           
+
         }
         /// <summary>
         /// 鏌ョ湅铏氭嫙榻愬
@@ -1036,7 +1037,6 @@
             {
                 Stopwatch sw = new Stopwatch();
                 sw.Start();//寮�濮嬭鏃�
-                LogHelper.Info("榻愬鍒嗘瀽寮�濮嬪噯澶囨暟鎹細" + sw.Elapsed);
                 //娓呯┖榻愬涓存椂琛�
                 DBServiceHelper.Execute(Context, "/*dialect*/  delete JIT_MOMaterReadysBill ");
                 //鏇存柊鐘舵��
@@ -1108,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)
@@ -1126,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;//榻愬鏁伴噺
@@ -1846,8 +1845,8 @@
             {
                 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,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
@@ -1861,7 +1860,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);
@@ -1905,7 +1913,10 @@
                             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()
                         });
                     }
                     LogHelper.Info($"鏃ヨ鍒掔敤鏂欐竻鍗曪紝鏁版嵁鍑嗗瀹屾垚锛屼繚瀛樺埌Model瀹炰綋锛屾�昏鏁帮細{DayPlanMaterial.Count}锛岃�楁椂锛�" + sw.Elapsed);
@@ -1955,10 +1966,11 @@
                             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);// 
                             Entry.Add(ModelEnty);
                             FSEQ++;
-
                         }
                         model.Add("FEntity", Entry);
 
@@ -1980,6 +1992,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());
@@ -2112,7 +2138,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;
                         }
 
@@ -2136,7 +2162,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