From 17c1c9bb4537f3915e5b53e1a26a1a0b9c8e7c85 Mon Sep 17 00:00:00 2001
From: hudong <Administrator@PC-20250329JZUF>
Date: 星期一, 16 六月 2025 08:37:58 +0800
Subject: [PATCH] 1.定时充电问题排查,增加状态字段增加定时更新状态2.删除webservice所有日志 api接口日志(超时问题优化)

---
 api/WmsSpaHelper.cs |   40 +++++++++++++++++++++++++++++-----------
 1 files changed, 29 insertions(+), 11 deletions(-)

diff --git a/api/WmsSpaHelper.cs b/api/WmsSpaHelper.cs
index 2a8c992..cf42f12 100644
--- a/api/WmsSpaHelper.cs
+++ b/api/WmsSpaHelper.cs
@@ -56,7 +56,7 @@
             bool panduan = true;
             var db = new SqlHelper<object>().GetInstance();
 
-            var po = db.Queryable<TN_Material_KC>().Where(a => a.S_ITEM_CODE == ItemCode).First();
+            var po = db.Queryable<TN_Material_KC>().Where(a => a.S_ITEM_CODE== ItemCode).First();
 
             var po1 = db.Queryable<CntrItemRel>().Where(a => a.S_ITEM_CODE == ItemCode).First();
             if (po != null)
@@ -893,8 +893,8 @@
             db.BeginTran();
             List<WLReturnRoot.ITEM> list = new List<WLReturnRoot.ITEM>();
 
-
-            var itemCodes = model.ROOT.ITEM.Select(item => item.WLBM).ToList();
+            List<TN_Material> tN_Materials = new List<TN_Material>();
+            var itemCodes = model.ROOT.ITEM.Select(item => item.WLBM).Distinct().ToList();
             var itemlist = db.Queryable<TN_Material>()
             .Where(it => itemCodes.Contains(it.S_ITEM_CODE))
             .ToList();
@@ -903,10 +903,8 @@
             {
                 try
                 {
-
                     var result = new WLReturnRoot.ITEM();
-
-                    var materlist = itemlist.Where(it => it.S_ITEM_CODE == item.WLBM).First();
+                    var materlist = itemlist.Where(it => it.S_ITEM_CODE == item.WLBM).FirstOrDefault();
                     if (materlist == null)
                     {
                         TN_Material tN_Material = new TN_Material();
@@ -923,7 +921,8 @@
                         tN_Material.S_CPZ = item.CPZ;
                         tN_Material.S_CPZMS = item.CPZMS;
                         tN_Material.S_ITEM_NAME = item.VTEXT;
-                        db.Insertable<TN_Material>(tN_Material).ExecuteCommand();
+                        tN_Materials.Add(tN_Material);
+                        //db.Insertable<TN_Material>(tN_Material).ExecuteCommand();
                         result.MSGDESP = "鎴愬姛";
                         result.MSGCODE = 0;
                         result.GCBM = item.GCBM;
@@ -966,6 +965,24 @@
                 }
             }
             response.ROOT.ITEM = list;
+            if (tN_Materials.Count()>0)
+            {
+                db.Insertable<TN_Material>(tN_Materials).ExecuteCommand();
+                //using (var bulkCopy = new SqlBulkCopy(util.Settings.SqlServer))
+                //{
+                //    bulkCopy.DestinationTableName = "TN_Material";
+                //    bulkCopy.BatchSize = 500;
+                //    var dataTable = new DataTable();
+                //    dataTable = list.ToDataTable();
+                //    // 娣诲姞鍒楁槧灏勶紙纭繚鍚嶇О鍖归厤锛�+                //    foreach (DataColumn col in dataTable.Columns)
+                //    {
+                //        bulkCopy.ColumnMappings.Add(col.ColumnName, col.ColumnName);
+                //    }
+                //    bulkCopy.WriteToServer(tN_Materials.ToDataTable());
+                //}
+            }
+          
             //db.Insertable<TN_Material>(list).ExecuteCommand();
             db.CommitTran();
 
@@ -3694,10 +3711,11 @@
                         var po1 = new TN_Outbound_Order { S_NO = WMSHelper.GenerateShippNo(), UNAME = po.UNAME, S_FACTORY = po.S_FACTORY, S_CBZX = po.S_CBZX, S_ZZKM = po.S_ZZKM, S_LRZX = po.S_LRZX, BLDAT = po.BLDAT, BUDAT = po.BUDAT, S_OUT_TYPE = po.S_OUT_TYPE, S_BS_TYPE = po.S_BS_TYPE, S_AREA_CODE = po.S_AREA_CODE, S_BS_NO = po.S_NO };
                         List<TN_Ll_detail> tN_Ll_Details = new List<TN_Ll_detail>();
                         po1.Details = new List<TN_Outbound_Detail>();
-                        var list = po.Details.Where(s => s.F_QTY > s.F_ACC_D_QTY).Select(s => s.S_ITEM_CODE).Distinct().ToArray();
-                        var Sitemlist = db.Queryable<CntrItemRel>().Where(s => list.Contains(s.S_ITEM_CODE)).Select(s => s.S_ITEM_CODE).ToArray();
-
-                        po.Details = po.Details.Where(s => s.F_QTY > s.F_ACC_D_QTY && Sitemlist.Contains(s.S_ITEM_CODE)).ToList();
+                        var list = po.Details.Where(s => s.F_QTY > s.F_ACC_D_QTY&&s.S_ERP_WH_CODE=="4004").Select(s => s.S_ITEM_CODE).Distinct().ToArray();
+                     
+                        var Sitemlist = db.Queryable<CntrItemRel>().Where(s => list.Contains(s.S_ITEM_CODE)).Select(s => s.S_ITEM_CODE).ToArray().Select(x => x.Trim()).ToArray(); ;
+                      
+                        po.Details = po.Details.Where(s => Sitemlist.Contains(s.S_ITEM_CODE)).ToList();
                         if (po.Details.Count() > 0)
                         {
                           

--
Gitblit v1.9.1