From 2d2342157638cab98a4c59b0c687808cc2f98ea1 Mon Sep 17 00:00:00 2001
From: 杨张扬 <634643841@qq.com>
Date: 星期五, 25 七月 2025 17:24:57 +0800
Subject: [PATCH] 增加空托堆叠和空托入货架的新逻辑,增加拆盘入库和回炉胶和废料的逻辑

---
 core/WCSCore.cs |   29 ++++++++++++++++++-----------
 1 files changed, 18 insertions(+), 11 deletions(-)

diff --git a/core/WCSCore.cs b/core/WCSCore.cs
index 0d76837..041a691 100644
--- a/core/WCSCore.cs
+++ b/core/WCSCore.cs
@@ -69,7 +69,19 @@
                                     WCSHelper.Begin(tN_Task, model.forklift_no);//宸叉帹閫佺殑浠诲姟鐨勭姸鎬佹敼鎴愭墽琛�                                     Task task4 = Task.Run(() =>
                                     {
-                                        OpenScanCode(model.task_no, model.forklift_no);//寮�惎鎵爜
+                                        if (tN_Task.S_TYPE.Contains("鐐瑰鐐�) 
+                                        || tN_Task.S_TYPE.Contains("婊℃墭鍑哄簱涓婄嚎")
+                                        || tN_Task.S_TYPE.Contains("婊℃墭鍑哄簱澶嶆")
+                                        || tN_Task.S_TYPE.Contains("绌烘墭")
+                                        )
+                                        {
+                                            //涓嶅紑鍚壂鐮�+                                        }
+                                        else
+                                        {
+                                            OpenScanCode(model.task_no, model.forklift_no);//寮�惎鎵爜
+                                        }
+                                       
                                     });
                                     break;
                                 case 3:
@@ -81,7 +93,7 @@
                                     
                                     Task task3 = Task.Run(() =>
                                     {
-                                        EmptyInStackArea(tN_Task);
+                                        EmptyInStackArea(tN_Task);//绌烘墭涓嬬嚎鍫嗗彔
                                     });
 
                                     Task task1 = Task.Run(() =>
@@ -102,6 +114,8 @@
                                 case 6:
                                     WCSHelper.UpdateStatus(tN_Task, "鍗歌揣瀹屾垚");//浠诲姟鐘舵�鏀规垚鍗歌揣瀹屾垚
                                     TaskProcess.OperateStatus(tN_Task, 6);//缁堢偣瀹瑰櫒璐т綅缁戝畾,瑙i攣缁堢偣
+
+                                    SpecHelper.RestEndLoc(tN_Task);
 
                                     Task task2 = Task.Run(() =>
                                     {
@@ -139,7 +153,6 @@
                                         }
                                     });
 
-
                                     Task task12 = Task.Run(() =>
                                     {
                                         if (tN_Task.S_TYPE == "PDA婊℃墭涓嬬嚎鍏ュ簱" || tN_Task.S_TYPE == "PLC婊℃墭涓嬬嚎鍏ュ簱")
@@ -163,11 +176,6 @@
                                     break;
                                 case 2:
                                     WCSHelper.End(tN_Task);//浠诲姟鐘舵�鏀规垚缁撴潫
-
-                                    Task task16 = Task.Run(() =>
-                                    {
-                                        SpecHelper.RestEndLoc(tN_Task);
-                                    });
 
                                     break;
                                 case 7:
@@ -203,9 +211,8 @@
                         else
                         {
                             //瀹夊叏璇锋眰绛�-                            TaskProcess.OperateReq(model.task_no, model.state, model.forklift_no, model.ext_data);
+                            //TaskProcess.OperateReq(model.task_no, model.state, model.forklift_no, model.ext_data);
                         }
-                       
                     }
                     else
                     {
@@ -584,7 +591,7 @@
                         //鏌ヨ绗﹀悎鐨勬湭閿佸畾宸插惎鐢ㄦ寚瀹氳揣鍖虹殑褰撳墠鏁伴噺鍚堣鍚庢渶鎺ヨ繎瀹归噺鐨勮揣浣嶏紝缁堢偣
                         var endLoc = db.Queryable<TN_Location>().
                             Where(a => a.N_CURRENT_NUM + item.N_CURRENT_NUM <= a.N_CAPACITY && a.S_AREA_CODE == Settings.Areas[3] && a.N_LOCK_STATE == 0 && a.S_LOCK_STATE == "鏃� && a.C_ENABLE == "Y").
-                            OrderBy(a => a.N_CURRENT_NUM + item.N_CURRENT_NUM - a.N_CAPACITY, OrderByType.Desc).First();
+                            ToList().OrderByDescending(a => a.N_CURRENT_NUM + item.N_CURRENT_NUM - a.N_CAPACITY).ThenBy(a=>a.N_ROW).ThenBy(a => a.N_COL).ToList().First();
 
                         if (endLoc == null)
                         {

--
Gitblit v1.9.1