From d93440432c13c75f798427be327cde02cfe7f301 Mon Sep 17 00:00:00 2001
From: kazelee <1847801760@qq.com>
Date: 星期日, 20 七月 2025 17:00:29 +0800
Subject: [PATCH] 增加无称重的指定货位入库流程,添加指定卸货位解绑接口备用

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

diff --git a/core/WCSCore.cs b/core/WCSCore.cs
index dbc691f..661647d 100644
--- a/core/WCSCore.cs
+++ b/core/WCSCore.cs
@@ -14,8 +14,9 @@
 
 namespace HH.WCS.Mobox3.AnGang.core
 {
-    internal class WCSCore
-    {
+    internal class WCSCore {
+        public static string AgvState = string.Empty;
+
         public static ReturnResult OperateAgvTaskStatus(AgvTaskState model) {
             var result = new ReturnResult();
             try {
@@ -70,7 +71,7 @@
                 case 4: // 鍙栬揣瀹屾垚
                     WCSHelper.UpdateStatus(TN_Task, "鍙栬揣瀹屾垚"); // 浠诲姟鐘舵�鏀规垚鍙栬揣瀹屾垚
 
-                    if (TN_Task.S_TYPE == TaskName.浜у搧鍏ュ簱 || TN_Task.S_TYPE == TaskName.浜у搧閮ㄥ垎鍥炲簱) {
+                    if (TN_Task.S_TYPE == TaskName.浜у搧鍏ュ簱 || TN_Task.S_TYPE == TaskName.浜у搧閮ㄥ垎鍥炲簱 || TN_Task.S_TYPE == TaskName.鎸囧畾璐т綅鍏ュ簱 || TN_Task.S_TYPE == TaskName.鐩樼偣鐞嗚揣鍥炲簱) {
                         var captureTask = Task.Run(() => {
                             CapturePic(TN_Task);
                             LogHelper.Info($"{TN_Task}锛氭媿鐓ask缁撴潫");
@@ -85,7 +86,7 @@
                         });
                     }
 
-                    if (TN_Task.S_TYPE == TaskName.浜у搧閮ㄥ垎鍥炲簱) {
+                    if (TN_Task.S_TYPE == TaskName.浜у搧閮ㄥ垎鍥炲簱 || TN_Task.S_TYPE == TaskName.鎸囧畾璐т綅鍏ュ簱 || TN_Task.S_TYPE == TaskName.鐩樼偣鐞嗚揣鍥炲簱) {
                         var weightTask = Task.Run(() => {
                             UpdateWeight(TN_Task);
                             LogHelper.Info("绉伴噸Task缁撴潫");
@@ -127,9 +128,8 @@
                     return;
                 }
 
-                if (db.Updateable<TN_Loc_Container>()
-                    .SetColumns(d => d.S_IMG_URL == filepath)
-                    .Where(d => d.S_CNTR_CODE == model.S_CNTR_CODE).ExecuteCommand() <= 0) {
+                if (db.Updateable<TN_Loc_Container>().SetColumns(d => d.S_IMG_URL == filepath).Where(d => d.S_CNTR_CODE == model.S_CNTR_CODE).ExecuteCommand() <= 0 &&
+                    db.Updateable<TN_CG_Detail>().SetColumns(d => d.S_EXT_ATTR5 == filepath).Where(d => d.S_CNTR_CODE == model.S_CNTR_CODE).ExecuteCommand() <= 0) { // FIX: SNAP
 
                     LogHelper.Info($"鍥剧墖URL '{filepath}' 鍐欏叆鏁版嵁搴撳け璐�);
                     return;
@@ -368,22 +368,18 @@
         /// <summary>
         /// 浠诲姟鍒嗗彂锛屾牴鎹皟搴︾被鍨嬪彂缁欎笉鍚岀殑璋冨害绯荤粺
         /// </summary>
-        internal static void Dispatch()
-        {
+        internal static void Dispatch() {
             //鏌ヨ浠诲姟
             //鑾峰彇鎵�湁绛夊緟鐨勪换鍔�             var list = WCSHelper.GetWaitingTaskList();
             LogHelper.Info("绛夊緟浠诲姟淇℃伅" + JsonConvert.SerializeObject(list), "API");
-            if (list.Count > 0)
-            {
-                list.ForEach(task =>
-                {
+            if (list.Count > 0) {
+                list.ForEach(task => {
                     //浣跨敤鑷畾涔変换鍔℃帹閫�                     TaskProcess.SendTask(task);//璋冨害NDC鎴栨澀濂ユ垨鍥借嚜璁惧
                 });
             }
-            else
-            {
+            else {
                 LogHelper.Info("鏆傛棤浠诲姟");
             }
         }
@@ -397,5 +393,23 @@
             // 鐩墠璇ラ」鐩病鏈夌珯鍙板畨鍏ㄤ氦浜掔殑鍔熻兘
             return gzResult;
         }
+
+        public static string agvRealtimeStateReport(agvRealtimeStateReportInfo model) {
+            var res = string.Empty;
+            switch (model.agvStatusID) {
+                case 1: res = "in_system"; break;
+                case 2: res = "out_system"; break;
+                case 3: res = "online"; break;
+                case 4: res = "offline"; break;
+                case 5: res = "ready"; break;
+                case 6: res = "not_ready"; break;
+                case 7: res = "in_dispatch"; break;
+                case 8: res = "out_dispatch"; break;
+                case 9: res = "running"; break;
+                case 10: res = "not_running"; break;
+            }
+            AgvState = res;
+            return res;
+        }
     }
 }

--
Gitblit v1.9.1