From 987b9256e007825401cef4fe18f250566eedf3d5 Mon Sep 17 00:00:00 2001
From: 海波 张 <2956280567@qq.com>
Date: 星期五, 06 六月 2025 17:28:15 +0800
Subject: [PATCH] 改道优化

---
 wms/TaskHelper.cs |  109 +++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 98 insertions(+), 11 deletions(-)

diff --git a/wms/TaskHelper.cs b/wms/TaskHelper.cs
index bf4aba1..489a7b9 100644
--- a/wms/TaskHelper.cs
+++ b/wms/TaskHelper.cs
@@ -722,16 +722,16 @@
             if (task.S_TYPE.Contains("鍑哄簱") && task.S_SCHEDULE_TYPE.Contains("wcs")) {
                 LocationHelper.LockLoc(task.S_END_LOC, "鍑哄簱閿�, 2);
             }
-                
-            //if (task.S_TYPE.Contains("鍑哄簱")&&task.S_SCHEDULE_TYPE.Contains("agv") )
-            //{
-            //    var location = db.Queryable<Location>().Where(a => a.S_CODE == task.S_END_LOC).First();
-            //    location.N_CURRENT_NUM = 0;
-            //    db.Updateable(location).UpdateColumns(it => new { it.N_CURRENT_NUM}).ExecuteCommand();
-            //    db.Deleteable<Container>().Where(it => it.S_CODE == task.S_CNTR_CODE).ExecuteCommand();
-            //    db.Deleteable<LocCntrRel>().Where(it => it.S_CNTR_CODE == task.S_CNTR_CODE).ExecuteCommand();
-            //    db.Deleteable<CntrItemRel>().Where(it => it.S_CNTR_CODE == task.S_CNTR_CODE).ExecuteCommand();
-            //}
+
+            if (task.S_TYPE.Contains("鍑哄簱") && task.S_SCHEDULE_TYPE.Contains("agv"))
+            {
+                var location = db.Queryable<Location>().Where(a => a.S_CODE == task.S_END_LOC).First();
+                location.N_CURRENT_NUM = 0;
+                db.Updateable(location).UpdateColumns(it => new { it.N_CURRENT_NUM }).ExecuteCommand();
+                db.Deleteable<Container>().Where(it => it.S_CODE == task.S_CNTR_CODE).ExecuteCommand();
+                db.Deleteable<LocCntrRel>().Where(it => it.S_CNTR_CODE == task.S_CNTR_CODE).ExecuteCommand();
+                db.Deleteable<CntrItemRel>().Where(it => it.S_CNTR_CODE == task.S_CNTR_CODE).ExecuteCommand();
+            }
         }
 
 
@@ -862,6 +862,79 @@
         }
 
 
+        /// <summary>
+        /// 鏍规嵁浠诲姟鐘舵�鍜岃捣鐐瑰拰绫诲瀷鏌ユ壘浠诲姟
+        /// </summary>
+        /// <param name="state"></param>
+        /// <returns></returns>
+        internal static WMSTask GetTaskByType(string start,string type,string state)
+        {
+            try
+            {
+                var db = new SqlHelper<object>().GetInstance();
+                return db.Queryable<WMSTask>().Where(a => a.S_B_STATE.Trim() == state && a.S_TYPE.Contains(type) && a.S_START_LOC.Contains(start)).First();
+            }
+            catch (Exception ex)
+            {
+                LogHelper.Error(ex.Message, ex);
+                return new WMSTask();
+            }
+
+        }
+
+
+
+        /// <summary>
+        /// 鏍规嵁浣滀笟缂栫爜鍜岃澶囩被鍨嬭幏鍙栧崟涓换鍔�+        /// </summary>
+        /// <param name="state"></param>
+        /// <returns></returns>
+        internal static WMSTask GetTaskByWork(string eq, string opCode)
+        {
+            try
+            {
+                var db = new SqlHelper<object>().GetInstance();
+                return db.Queryable<WMSTask>().Where(a =>  a.S_SCHEDULE_TYPE.Contains(eq) && a.S_OP_CODE.Contains(opCode)).First();
+            }
+            catch (Exception ex)
+            {
+                LogHelper.Error(ex.Message, ex);
+                return new WMSTask();
+            }
+
+        }
+
+        /// <summary>
+        /// 杩斿洖褰撳墠鎺ラ┏浣嶆墽琛屼腑浠诲姟鏁伴噺
+        /// </summary>
+        internal static int GetConnectionTask(string Connection)
+        {
+            var db = new SqlHelper<object>().GetInstance();
+
+
+            var ConnectionList = 0;
+            ConnectionList = db.Queryable<WMSTask>().Where(a => a.S_END_LOC.Contains(Connection) && a.S_TYPE.Contains("鍑哄簱") && a.S_B_STATE != "瀹屾垚" && a.S_B_STATE != "鍙栨秷" && a.S_B_STATE != "鏈墽琛�).ToList().Count();
+
+            return ConnectionList;
+        }
+
+
+        //internal static bool CreateAgvState(AgvState agvState)
+        //{
+        //    try
+        //    {
+        //        var db = new SqlHelper<object>().GetInstance();
+
+        //        return db.Insertable<AgvState>(agvState).ExecuteCommand() > 0;
+        //    }
+        //    catch (Exception ex)
+        //    {
+        //        LogHelper.Info($"娣诲姞Agv鍔ㄤ綔缂撳瓨寮傚父" + ex.Message, "NDC");
+        //        throw;
+        //    }
+        //}
+
+
         internal static bool CreateMesKtTask(MesKtTask cntr)
         {
             try
@@ -872,7 +945,6 @@
             }
             catch (Exception ex)
             {
-                Console.WriteLine(ex.Message);
                 LogHelper.Info($"娣诲姞Mes绌烘墭缂撳瓨寮傚父" + ex.Message, "Mes浠诲姟涓嬪彂");
                 throw;
             }
@@ -905,5 +977,20 @@
 
             return db.Queryable<UnlimitedLoc>().ToList();
         }
+
+
+        /// <summary>
+        /// 鑾峰彇鍏ュ簱浼樺厛绾ц〃
+        /// </summary>
+        /// <returns></returns>
+        internal static List<InPri> GetInPri()
+        {
+
+            var db = new SqlHelper<object>().GetInstance();
+
+            return db.Queryable<InPri>().Where(a=>a.Enable=="Y") .ToList();
+        }
+
+        
     }
 }

--
Gitblit v1.9.1