From c8f338feee0b6003d8f069b1d37fd9b90dd1b7f4 Mon Sep 17 00:00:00 2001
From: 杨前锦 <1010338399@qq.com>
Date: 星期一, 07 七月 2025 17:31:38 +0800
Subject: [PATCH] 印尼佳通优化

---
 HH.WCS.Mobox3/HH.WCS.Mobox3.YNJT_BZP/wms/WMSHelper.cs |  199 ++++++++++++++++++++++++-------------------------
 1 files changed, 98 insertions(+), 101 deletions(-)

diff --git a/HH.WCS.Mobox3/HH.WCS.Mobox3.YNJT_BZP/wms/WMSHelper.cs b/HH.WCS.Mobox3/HH.WCS.Mobox3.YNJT_BZP/wms/WMSHelper.cs
index b6d7694..d720822 100644
--- a/HH.WCS.Mobox3/HH.WCS.Mobox3.YNJT_BZP/wms/WMSHelper.cs
+++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.YNJT_BZP/wms/WMSHelper.cs
@@ -561,6 +561,7 @@
         /// <param name="locCode"></param>
         /// <param name="trayType"></param>
         /// <param name="inWay">鍏ュ簱鏂瑰紡 1.鑷姩鍏ュ簱 2.浜哄伐鍏ュ簱</param>
+        /// <param name="itemCode">鐗╂枡缂栫爜</param>
         /// <returns></returns>
         public static Location GetInstockEndLoc(int trayType , string locCode = null , int inWay = 1 ,string itemCode = null)
         {
@@ -817,26 +818,22 @@
             try
             {
                 db.BeginTran();
-                itemBarcodeInfos.ForEach(item => {
-                    var itemBarcodeInfo = db.Queryable<ItemBarcodeInfo>().Where(a => a.S_BC_ENTRIED == item.S_BC_ENTRIED).First();
-                    if (itemBarcodeInfo == null) 
-                    {
-                        var bo = db.Insertable<ItemBarcodeInfo>(item).ExecuteCommand() > 0;
-                        if (!bo)
+                if (itemBarcodeInfos.Count > 0) 
+                {
+                    itemBarcodeInfos.ForEach(item => {
+                        var itemBarcodeInfo = db.Queryable<ItemBarcodeInfo>().Where(a => a.S_BC_ENTRIED == item.S_BC_ENTRIED).First();
+                        if (itemBarcodeInfo == null)
                         {
-                            result = false;
-                            LogHelper.Info($"娣诲姞鐗╂枡鏉$爜淇℃伅澶辫触锛岀墿鏂欐潯鐮佷俊鎭細{JsonConvert.SerializeObject(item)}", "GT");
+                            var bo = db.Insertable<ItemBarcodeInfo>(item).ExecuteCommand() == 0;
+                            if (bo)
+                            {
+                                result = false;
+                                LogHelper.Info($"娣诲姞鐗╂枡鏉$爜淇℃伅澶辫触锛岀墿鏂欐潯鐮佷俊鎭細{JsonConvert.SerializeObject(item)}", "GT");
+                            }
                         }
-                    }
-                });
-                if (result)
-                {
-                    db.CommitTran();
+                    });
                 }
-                else 
-                {
-                    db.RollbackTran();
-                }
+                db.CommitTran();
             }
             catch (Exception ex) 
             {
@@ -844,6 +841,62 @@
                 db.RollbackTran();
             }
            return result;
+        }
+
+        /// <summary>
+        /// 鍚屾鏉$爜鐘舵�琛�+        /// </summary>
+        /// <returns></returns>
+        public static bool synBarcodeStatus(List<iWMS_semi_bld_BCstatus> model) 
+        {
+            bool result = true;
+            var db = new SqlHelper<object>().GetInstance();
+            try
+            {
+                db.BeginTran();
+                if (model.Count > 0)
+                {
+                    model.ForEach(update => {
+                        db.Insertable(update).ExecuteCommand();
+                    });
+                }
+                db.CommitTran();
+            }
+            catch (Exception ex)
+            {
+                LogHelper.Info($"鍚屾鏉$爜鐘舵�琛ㄩ敊璇紝閿欒淇℃伅锛歿ex.Message}", "GT");
+                db.RollbackTran();
+                result = false;
+            }
+            return result;
+        }
+
+        /// <summary>
+        /// 鍚屾鎶芥鐘舵�琛�+        /// </summary>
+        /// <returns></returns>
+        public static bool synSamplingStatus(List<iWMS_semi_bld_BCsample> model)
+        {
+            bool result = true;
+            var db = new SqlHelper<object>().GetInstance();
+            try
+            {
+                db.BeginTran();
+                if (model.Count > 0)
+                {
+                    model.ForEach(update => {
+                        db.Insertable(update).ExecuteCommand();
+                    });
+                }
+                db.CommitTran();
+            }
+            catch (Exception ex)
+            {
+                LogHelper.Info($"鍚屾鎶芥鐘舵�琛ㄩ敊璇紝閿欒淇℃伅锛歿ex.Message}", "GT");
+                db.RollbackTran();
+                result = false;
+            }
+            return result;
         }
 
         /// <summary>
@@ -857,28 +910,22 @@
             try
             {
                 db.BeginTran();
-                updateMatlStatuses.ForEach(update => {
-                    var itemBarcodeInfo = db.Queryable<ItemBarcodeInfo>().Where(a => a.S_BC_ENTRIED == update.bc_entried).First();
-                    if (itemBarcodeInfo != null) 
-                    {
-                        itemBarcodeInfo.S_JDGE = update.jdge;
-                        db.Updateable(itemBarcodeInfo).ExecuteCommand();
-                        var cntrItemRel = db.Queryable<CntrItemRel>().Where(a => a.S_CG_ID == update.bc_entried).First();
-                        if (cntrItemRel != null) 
+                if (updateMatlStatuses.Count > 0) 
+                {
+                    updateMatlStatuses.ForEach(update => {
+                        var itemBarcodeInfo = db.Queryable<ItemBarcodeInfo>().Where(a => a.S_BC_ENTRIED == update.bc_entried).First();
+                        if (itemBarcodeInfo != null)
                         {
-                            // 灏哅ES鐨勭墿鏂欑姸鎬佽浆鍖栨垚WMS鍙瘑鍒殑鐗╂枡鐘舵�
-                            if (update.jdge == "" || update.jdge == null)
+                            itemBarcodeInfo.S_JDGE = update.jdge;
+                            db.Updateable(itemBarcodeInfo).ExecuteCommand();
+                            var cntrItemRel = db.Queryable<CntrItemRel>().Where(a => a.S_CG_ID == update.bc_entried).First();
+                            if (cntrItemRel != null)
                             {
-                                update.jdge = "OK";
+                                db.Updateable<CntrItemRel>().SetColumns(a => new CntrItemRel() { S_ITEM_STATE = update.jdge }).Where(a => a.S_CG_ID == update.bc_entried).ExecuteCommand();
                             }
-                            else if (update.jdge != "OK")
-                            {
-                                update.jdge = "HOLD";
-                            }
-                            db.Updateable<CntrItemRel>().SetColumns(a => new CntrItemRel() { S_ITEM_STATE = update.jdge }).Where(a => a.S_CG_ID == update.bc_entried).ExecuteCommand();
                         }
-                    }
-                });
+                    });
+                }
                 db.CommitTran();
             }
             catch (Exception ex)
@@ -888,69 +935,6 @@
                 result = false;
             }
             return result;
-        }
-
-        /// <summary>
-        /// 鎵归噺鏇存柊鐗╂枡鐘舵�
-        /// </summary>
-        /// <returns></returns>
-        public static bool batchUpdateMatlTimeConfig(List<Overage> overages)
-        {
-            bool result = true;
-            var db = new SqlHelper<object>().GetInstance();
-            try
-            {
-                db.BeginTran();
-                foreach (Overage overage in overages) 
-                {
-                    var overage1 = db.Queryable<Overage>().Where(a => a.RECID == overage.RECID).First();
-                    if (overage1 != null)
-                    {
-                        overage1.MCNGRP = overage.MCNGRP;
-                        overage1.ITEMPATT = overage.ITEMPATT;
-                        overage1.OVERAGE = overage.OVERAGE;
-                        overage1.MINHOUR = overage.MINHOUR;
-                        overage1.FLAG_STS = overage.FLAG_STS;
-                        db.Updateable(overage1).ExecuteCommand();
-                    }
-                    else 
-                    {
-                        db.Insertable(overage).ExecuteCommand();
-                    }
-                }
-                db.CommitTran();
-            }
-            catch (Exception ex)
-            {
-                LogHelper.Info($"鎵归噺鏇存柊鐗╂枡瀛樻斁鏃堕棿閰嶇疆淇℃伅閿欒锛岄敊璇俊鎭細{ex.Message}", "GT");
-                db.RollbackTran();
-                result = false;
-            }
-            return result;
-        }
-        /// <summary>
-        /// 鏌ヨ鐗╂枡瀛樻斁鏃堕棿閰嶇疆淇℃伅
-        /// </summary>
-        /// <param name="bc_entried"></param>
-        /// <returns></returns>
-        public static Overage getOverage(string bc_entried)
-        {
-           
-            var db = new SqlHelper<object>().GetInstance();
-
-            // 鐩存帴鎵ц SQL锛堝弬鏁板寲鏌ヨ锛�-            var sql = "SELECT get_ovg_bar(@barcode, @mcngrp) AS overage_value";
-            var sql1 = "SELECT get_minhour_bar(@barcode, @mcngrp) AS overage_value";
-
-            // 浣跨敤鍖垮悕瀵硅薄浼犻�鍙傛暟
-            var ovg_bar = db.Ado.SqlQuery<int>(sql, new { barcode = bc_entried, mcngrp = "1"}).First();
-            var minhour_bar = db.Ado.SqlQuery<float>(sql1, new { barcode = bc_entried, mcngrp = "1"}).First();
-            Overage overage = new Overage()
-            {
-                MINHOUR = minhour_bar,
-                OVERAGE = ovg_bar
-            };
-            return overage;
         }
 
         /// <summary>
@@ -997,12 +981,25 @@
         /// <summary>
         /// 鏌ヨ涓婁竴娆$殑鍚屾鏃堕棿
         /// </summary>
-        /// <param name="recordTable"></param>
+        /// <param name="tableType"></param>
         /// <returns></returns>
-        public static SynDataTimeRecord getLastDataSynTime(string recordTable) 
+        public static string getDataLastSynTime(int tableType) 
         {
             var db = new SqlHelper<object>().GetInstance();
-            return db.Queryable<SynDataTimeRecord>().Where(a => a.RECORD_TABLE == recordTable).OrderByDescending(a => a.T_CREATE).First();
+            string lastTime = null;
+            if (tableType == 1)
+            {
+                lastTime = db.Queryable<ItemBarcodeInfo>().OrderByDescending(a => a.LAST_MODIFY_TIME).Select(a => a.LAST_MODIFY_TIME).First();
+            }
+            else if (tableType == 2)
+            {
+
+            }
+            else if (tableType == 3) 
+            {
+            
+            }
+            return lastTime;
         }
     }    
 }

--
Gitblit v1.9.1