From 3c595f60b368838829b2e898478b269a762d55cc Mon Sep 17 00:00:00 2001
From: Tjiny <Tjinyu23@163.com>
Date: 星期日, 15 六月 2025 12:08:13 +0800
Subject: [PATCH] 2025/06/15提交

---
 HH.WCS.Mobox3.RiDong/wms/WCSHelper.cs                |   13 +++++++++++++
 HH.WCS.Mobox3.RiDong/generalMethod/ThreadMenthod.cs  |    4 +++-
 HH.WCS.Mobox3.RiDong/generalMethod/LocationMethod.cs |   17 ++++++++---------
 HH.WCS.Mobox3.RiDong/generalMethod/TaskHelper.cs     |    7 +++++--
 HH.WCS.Mobox3.RiDong/Program.cs                      |    6 +++---
 HH.WCS.Mobox3.RiDong/core/WCSCore.cs                 |    6 +++++-
 6 files changed, 37 insertions(+), 16 deletions(-)

diff --git a/HH.WCS.Mobox3.RiDong/Program.cs b/HH.WCS.Mobox3.RiDong/Program.cs
index b6196d4..13416e0 100644
--- a/HH.WCS.Mobox3.RiDong/Program.cs
+++ b/HH.WCS.Mobox3.RiDong/Program.cs
@@ -91,13 +91,13 @@
                     // 鍒涘缓鍑哄簱鍗曪紙DoOut锛�
                     GetTask(ThreadMenthod.CreateOutboundOrderFromDoOut),
                     // 鍒涘缓鍑哄簱浣滀笟
-                    GetTaskS(ThreadMenthod.CreateOutTaskFromDistributionCntrDetail),
+                    GetTask(ThreadMenthod.CreateOutTaskFromDistributionCntrDetail),
                     // 浣滀笟瀹屾垚浠ュ強閿欒淇敼
                     GetTask(ThreadMenthod.AccomplishOperation),
                     // Directory璇诲彇鏂囦欢锛屽苟澶勭悊
                     GetTask(DirectoryHelper.GainData),
                     // 鍑哄簱agv浠诲姟鎺ㄩ�
-                    GetTask(ThreadMenthod.DispatchFromAGV),
+                    GetTaskS(ThreadMenthod.DispatchFromAGV),
                     // 璇诲彇绾夸綋淇℃伅骞跺仛瀵瑰簲鐨勫鐞�                     GetTask(ThreadMenthod.ReadConveyorlinesMessage)
                 };
@@ -146,7 +146,7 @@
                             LogHelper.Error(ex.Message, ex);
                         }
 
-                        Thread.Sleep(12000);
+                        Thread.Sleep(600000);
                     }
                 });
 
diff --git a/HH.WCS.Mobox3.RiDong/core/WCSCore.cs b/HH.WCS.Mobox3.RiDong/core/WCSCore.cs
index 3694e15..b4f4668 100644
--- a/HH.WCS.Mobox3.RiDong/core/WCSCore.cs
+++ b/HH.WCS.Mobox3.RiDong/core/WCSCore.cs
@@ -30,13 +30,17 @@
                     switch (model.State)
                     {
                         case 1:
-                            WCSHelper.Begin(task);
+                            WCSHelper.Begin2(task);
                             break;
                         case 3:
                             WCSHelper.UpdateStatus(task, "寮�鍙栬揣");
                             break;
                         case 4:
+                            // 寮�鍙栬揣
+                            WCSHelper.Begin(task);
+                            
                             WCSHelper.UpdateStatus(task, "鍙栬揣瀹屾垚");
+                            
                             // 璐т綅瑙i攣
                             EnterWareHouseService.LocationUnlock(task);
                             break;
diff --git a/HH.WCS.Mobox3.RiDong/generalMethod/LocationMethod.cs b/HH.WCS.Mobox3.RiDong/generalMethod/LocationMethod.cs
index 52c1f39..a32f4b9 100644
--- a/HH.WCS.Mobox3.RiDong/generalMethod/LocationMethod.cs
+++ b/HH.WCS.Mobox3.RiDong/generalMethod/LocationMethod.cs
@@ -131,8 +131,8 @@
             var locations = sqlSugarClient.Queryable<Location>()
                 .Where(p => p.N_PRIORITY == priority && p.N_CURRENT_NUM == 0 && p.N_LOCK_STATE == 0 && p.N_PURPOSE == 1).ToList();
             
-            // 浼樺厛鏌ヨ浠婃棩浠戒换鍔′腑鏈畬鎴愮殑锛堢瓑寰咃紝鎵ц涓級
-            var notQueryList = AdoSqlMethod<Operation>.QueryList(p=>p.N_B_STATE < 2 && p.T_CREATE.Date == DateTime.Today);
+            var notQueryList = AdoSqlMethod<Task>
+                .QueryList(p=> p.N_B_STATE < 2 && p.T_CREATE.Date == DateTime.Today && (p.N_TYPE == 1 || p.N_TYPE == 3) && p.N_SCHEDULE_TYPE == 2);
 
             if (notQueryList.Count > 0)
             {
@@ -140,8 +140,8 @@
 
                 foreach (var item in groupBy)
                 {
-                    if (item.Key == 1 || item.Key == 2 || item.Key == 3 ||
-                        item.Key == 4)
+                    if ((item.Key == 1 || item.Key == 2 || item.Key == 3 ||
+                        item.Key == 4) )
                     {
                         locations = locations.Where(p=>p.N_ROADWAY != item.Key).ToList();
                     }
@@ -174,8 +174,8 @@
             var locations = sqlSugarClient.Queryable<Location>()
                 .Where(p => p.N_PRIORITY == priority && p.N_CURRENT_NUM == 0 && p.N_LOCK_STATE == 0 && p.N_PURPOSE == 1).ToList();
             
-            // 浼樺厛鏌ヨ浠婃棩浠戒换鍔′腑鏈畬鎴愮殑锛堢瓑寰咃紝鎵ц涓級
-            var notQueryList = AdoSqlMethod<Operation>.QueryList(p=>p.N_B_STATE < 2 && p.T_CREATE.Date == DateTime.Today);
+            var notQueryList = AdoSqlMethod<Task>
+                .QueryList(p=> p.N_B_STATE < 2 && p.T_CREATE.Date == DateTime.Today && (p.N_TYPE == 1 || p.N_TYPE == 3) && p.N_SCHEDULE_TYPE == 2);
 
             if (notQueryList.Count > 0)
             {
@@ -219,9 +219,8 @@
                 var locations = sqlSugarClient.Queryable<Location>()
                     .Where(p => p.N_PRIORITY == i && p.N_CURRENT_NUM == 0 && p.N_LOCK_STATE == 0 && p.N_PURPOSE == 1).ToList();
                 
-                // 浼樺厛鏌ヨ浠婃棩浠戒换鍔′腑鏈畬鎴愮殑锛堢瓑寰咃紝鎵ц涓級
-                var notQueryList = AdoSqlMethod<Operation>
-                    .QueryList(p=>p.N_B_STATE < 2 && p.T_CREATE.Date == DateTime.Today && (p.N_TYPE == 1 || p.N_TYPE == 3));
+                var notQueryList = AdoSqlMethod<Task>
+                    .QueryList(p=> p.N_B_STATE < 2 && p.T_CREATE.Date == DateTime.Today && (p.N_TYPE == 1 || p.N_TYPE == 3) && p.N_SCHEDULE_TYPE == 2);
 
                 if (notQueryList.Count > 0)
                 {
diff --git a/HH.WCS.Mobox3.RiDong/generalMethod/TaskHelper.cs b/HH.WCS.Mobox3.RiDong/generalMethod/TaskHelper.cs
index f5356b6..f0472df 100644
--- a/HH.WCS.Mobox3.RiDong/generalMethod/TaskHelper.cs
+++ b/HH.WCS.Mobox3.RiDong/generalMethod/TaskHelper.cs
@@ -391,7 +391,6 @@
         {
             var outbound = AdoSqlMethod<OutboundOrder>.QueryFirst(p => p.S_NO == model.S_BS_NO);
             
-            
             var operationDto = new OperationDto()
             {
                 cntrCode = model.S_CNTR_CODE,
@@ -413,6 +412,9 @@
 
                 if (oldoperation == null)
                 {
+                    var queryFirst = AdoSqlMethod<Location>.QueryFirst(p=>p.S_CODE == model.S_LOC_CODE);
+
+
                     var newoperation = new Operation()
                     {
                         S_CODE = HelperMethod.GenerateTaskNo("浣滀笟鍙�, "OP"),
@@ -426,7 +428,8 @@
                         S_END_AREA = Operation.GetArea(model.N_OUT_TYPE == 2 ? "CKK-1" : "JJCKK-1"),
                         S_CNTR_CODE = model.S_CNTR_CODE,
                         S_DC_NO = model.S_DC_NO,
-                        S_OUT_TARGET = outbound.S_OUT_TARGET
+                        S_OUT_TARGET = outbound.S_OUT_TARGET,
+                        N_ROADWAY = queryFirst.N_ROADWAY
                     };
 
                     // 鏍规嵁鎵樼洏鍙锋煡璇㈡槸鍚︽暣鎵樻垨鍒嗘嫞
diff --git a/HH.WCS.Mobox3.RiDong/generalMethod/ThreadMenthod.cs b/HH.WCS.Mobox3.RiDong/generalMethod/ThreadMenthod.cs
index a5add26..bd4d167 100644
--- a/HH.WCS.Mobox3.RiDong/generalMethod/ThreadMenthod.cs
+++ b/HH.WCS.Mobox3.RiDong/generalMethod/ThreadMenthod.cs
@@ -64,7 +64,9 @@
             {
                 // 鍒ゆ柇鏈夋病鏈夊凡鎺ㄩ�鐨勪换鍔★紝鏈夌殑璇濅笉鎺ㄩ�锛屾病鏈夊氨鎺ㄩ�
                 // if(AdoSqlMethod<Task>.QueryCount(p=>(p.N_B_STATE == 1 || p.N_B_STATE == 2) && p.N_SCHEDULE_TYPE == 2 ))
-                LogHelper.Info($"褰撳墠鎺ㄩ�浠诲姟鍦ㄧ{task.N_ROADWAY}宸烽亾");
+                
+                LogHelper.Info($"褰撳墠鎺ㄩ�浠诲姟鍦ㄧ{task.N_ROADWAY}宸烽亾锛屼换鍔$紪鍙蜂负{task.S_CODE}");
+                
                 // 鍑哄簱AGV涓嶅仛闄愬埗鐩存帴鎺ㄩ�
                 if (TaskHelper.SendTaskFromAGV(task))
                 {
diff --git a/HH.WCS.Mobox3.RiDong/wms/WCSHelper.cs b/HH.WCS.Mobox3.RiDong/wms/WCSHelper.cs
index 87a153f..c53ad03 100644
--- a/HH.WCS.Mobox3.RiDong/wms/WCSHelper.cs
+++ b/HH.WCS.Mobox3.RiDong/wms/WCSHelper.cs
@@ -184,6 +184,19 @@
             }
         }
     }
+    
+    internal static void Begin2(Task task)
+    {
+        var db = new SqlHelper<Task>().GetInstance();
+        if (task != null)
+        {
+            if (task.N_B_STATE == 1)
+            {
+                task.T_START_TIME = DateTime.Now;
+                db.Updateable(task).UpdateColumns(it => new { it.T_START_TIME }).ExecuteCommand();
+            }
+        }
+    }
     internal static void End(Task task)
     {
         var db = new SqlHelper<Task>().GetInstance();

--
Gitblit v1.9.1