From c87ea81736b138f3969ab58850830ede2f060212 Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <1247017146@qq.com>
Date: 星期四, 05 六月 2025 14:30:17 +0800
Subject: [PATCH] 1

---
 CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs |  112 ++++++++++++++++++++------------------------------------
 1 files changed, 40 insertions(+), 72 deletions(-)

diff --git a/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs b/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs
index a24ef13..17cd702 100644
--- a/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs
+++ b/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs
@@ -259,65 +259,27 @@
                     Platform platform = _platFormRepository.QueryFirst(x => x.DeviceCode == conveyorLine.DeviceCode && x.PlatCode == childDeviceCode && x.Status == "Active");
                     if (platform != null && !string.IsNullOrEmpty(platform.Location))
                     {
-                        if (platform.PlatCode == "1299" || platform.PlatCode == "1295" || platform.PlatCode == "1291" || platform.PlatCode == "1287" || platform.PlatCode == "1283")
+                        var strings = platform.Location.Split(',').ToList();
+                        foreach (var ite in strings)
                         {
-                            Platform platformJZ = _platFormRepository.QueryFirst(x => x.PlatCode == "10086" && x.Status == "Active");
-                            if (platformJZ != null)
+                            // 璇诲彇浠诲姟鍛戒护
+                            ConveyorLineTaskCommand command1 = conveyorLine.ReadCustomer<ConveyorLineTaskCommand>(ite);
+                            if (command1.InteractiveSignal != 2)
                             {
-                                var strings = platform.Location.Split(',').ToList();
-                                foreach (var ite in strings)
+                                command.InteractiveSignal = writeInteractiveSignal;
+                                int count = strings.Count;
+                                // 鑾峰彇澶勭悊鏂规硶
+                                MethodInfo? method = GetType().GetMethod(platform.ExecutionMethod);
+                                if (method != null)
                                 {
-                                    // 璇诲彇浠诲姟鍛戒护
-                                    ConveyorLineTaskCommand command1 = conveyorLine.ReadCustomer<ConveyorLineTaskCommand>(ite);
-                                    if (command1.InteractiveSignal != 2)
-                                    {
-                                        command.InteractiveSignal = writeInteractiveSignal;
-                                        int count = strings.Count;
-                                        // 鑾峰彇澶勭悊鏂规硶
-                                        MethodInfo? method = GetType().GetMethod(platform.ExecutionMethod);
-                                        if (method != null)
-                                        {
-                                            command.InteractiveSignal = commandWrite.WriteInteractiveSignal;
-                                            // 璋冪敤澶勭悊鏂规硶
-                                            method.Invoke(this, new object[] { conveyorLine, command, childDeviceCode, count, platform });
-                                        }
-                                        
-                                    }
+                                    command.InteractiveSignal = commandWrite.WriteInteractiveSignal;
+                                    // 璋冪敤澶勭悊鏂规硶
+                                    method.Invoke(this, new object[] { conveyorLine, command, childDeviceCode, count, platform });
                                 }
+
                             }
-                            //else
-                            //{
-                            //    //ConsoleHelper.WriteErrorLine("闈欑疆绌烘墭涓嶅厑璁稿嚭鏂�");
-                            //}
                         }
-                        else
-                        {
-                            var strings = platform.Location.Split(',').ToList();
-                            foreach (var ite in strings)
-                            {
-                                // 璇诲彇浠诲姟鍛戒护
-                                ConveyorLineTaskCommand command1 = conveyorLine.ReadCustomer<ConveyorLineTaskCommand>(ite);
-                                if (command1.InteractiveSignal != 2)
-                                {
-                                    command.InteractiveSignal = writeInteractiveSignal;
-                                    int count = strings.Count;
-                                    // 鑾峰彇澶勭悊鏂规硶
-                                    MethodInfo? method = GetType().GetMethod(platform.ExecutionMethod);
-                                    if (method != null)
-                                    {
-                                        command.InteractiveSignal = commandWrite.WriteInteractiveSignal;
-                                        // 璋冪敤澶勭悊鏂规硶
-                                        method.Invoke(this, new object[] { conveyorLine, command, childDeviceCode, count, platform });
-                                    }
-                                    
-                                }
-                            }
-                        } 
                     }
-                    //if (conveyorLine.DeviceCode == "1001")
-                    //{
-                    //    ConsoleHelper.WriteSuccessLine("ProcessDeviceAsync鏂规硶缁撴潫鏃堕棿锛�" + DateTime.Now.ToString("G") + $"鐐逛綅锛歿childDeviceCode}");
-                    //}
                 }
             }
             catch (Exception ex)
@@ -369,30 +331,31 @@
                         {
                             // 鑾峰彇浠诲姟鐨勪笅涓�鐩爣鍦板潃
                             var next = task.NextAddress;
-                        // 灏嗕换鍔℃槧灏勪负鍛戒护
-                        var taskCommand = MapTaskCommand(task, command);
-                        // 鎭㈠浠诲姟鐨勪笅涓�鐩爣鍦板潃
-                        task.NextAddress = next;
-                        // 鍙戦�佸懡浠ゅ埌瀛愯澶�
-                        conveyorLine.SendCommand(taskCommand, childDeviceCode);
+                            // 灏嗕换鍔℃槧灏勪负鍛戒护
+                            var taskCommand = MapTaskCommand(task, command);
+                            // 鎭㈠浠诲姟鐨勪笅涓�鐩爣鍦板潃
+                            task.NextAddress = next;
+                            // 鍙戦�佸懡浠ゅ埌瀛愯澶�
+                            conveyorLine.SendCommand(taskCommand, childDeviceCode);
 
-                        // 杈撳嚭璀﹀憡淇℃伅锛岃〃绀轰换鍔″凡鍒拌揪瀛愯澶囧苟璇锋眰鎵爜鍏ュ簱锛屼笅涓�鐩爣鍦板潃
-                        var logs = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�,涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�";
-                        ConsoleHelper.WriteWarningLine(logs);
+                            // 杈撳嚭璀﹀憡淇℃伅锛岃〃绀轰换鍔″凡鍒拌揪瀛愯澶囧苟璇锋眰鎵爜鍏ュ簱锛屼笅涓�鐩爣鍦板潃
+                            var logs = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�,涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�";
+                            ConsoleHelper.WriteWarningLine(logs);
 
-                        await _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = logs, time = DateTime.Now.ToString("G"), color = "red" });
-                        WriteInfo(conveyorLine.DeviceName, logs);
+                            await _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = logs, time = DateTime.Now.ToString("G"), color = "red" });
+                            WriteInfo(conveyorLine.DeviceName, logs);
 
-                        // 鍙戦�佷换鍔″畬鎴愰�氱煡
-                        ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true);
-                        // 鏇存柊浠诲姟鐘舵�佷负涓嬩竴鐘舵��
-                        _taskService.UpdateTaskStatusToNext(task);
+                            // 鍙戦�佷换鍔″畬鎴愰�氱煡
+                            ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true);
+                            // 鏇存柊浠诲姟鐘舵�佷负涓嬩竴鐘舵��
+                            _taskService.UpdateTaskStatusToNext(task);
                         }
                     }
                 }
                 else
                 {
-                    var taskInTray = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
+                    //var taskInTray = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
+                    var taskInTray = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode,command.Barcode);
                     if (taskInTray != null && taskInTray.TaskType == (int)TaskInboundTypeEnum.InTray)
                     {
                         RequestInNextAddress(conveyorLine, command, childDeviceCode, ProtocalDetailValue);
@@ -493,7 +456,8 @@
             _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" });
             WriteInfo(conveyorLine.DeviceName, log);
 
-            Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
+            //Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
+            Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode, command.Barcode);
             if (task != null)
             {
                 if (command.Barcode == task.PalletCode)
@@ -543,7 +507,8 @@
                 _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" });
                 WriteInfo(conveyorLine.DeviceName, log);
 
-                var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
+                //var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
+                var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode, command.Barcode);
                 if (task != null && task.TaskState != (int)TaskInStatusEnum.Line_InFinish)
                 {
                     if (command.Barcode == task.PalletCode && childDeviceCode == task.NextAddress)
@@ -601,6 +566,7 @@
             {
                 // 鏌ヨ杈撻�佺嚎浠诲姟锛屾牴鎹緭閫佺嚎璁惧鍜屽瓙璁惧浠g爜鑾峰彇浠诲姟淇℃伅
                 var task = _taskService.QueryConveyorLineTask(conveyorLine.DeviceCode, childDeviceCode);
+                //var task = _taskService.QueryConveyorLineTask(conveyorLine.DeviceCode, childDeviceCode, command.Barcode);
 
                 // 杈撳嚭鎴愬姛淇℃伅锛屽寘鎷緭閫佺嚎鍚嶇О銆佷换鍔″彿銆佹墭鐩樻潯鐮佸拰瀛愯澶囦唬鐮侊紝浠ュ強浠诲姟淇℃伅
                 var logs = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣緭閫佺嚎璇锋眰鍑哄簱,task{task.ToJsonString()}";
@@ -665,7 +631,8 @@
             WriteInfo(conveyorLine.DeviceName, log);
 
             // 鏌ヨ姝e湪鎵ц鐨勮緭閫佺嚎浠诲姟锛屾牴鎹换鍔″彿鍜屽瓙璁惧浠g爜鑾峰彇浠诲姟淇℃伅
-            Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
+            //Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
+            Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode, command.Barcode);
 
             // 濡傛灉浠诲姟瀛樺湪
             if (task != null)
@@ -726,7 +693,8 @@
                 WriteInfo(conveyorLine.DeviceName, logs);
 
                 // 鏌ヨ姝e湪鎵ц鐨勮緭閫佺嚎浠诲姟
-                var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
+                //var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode);
+                var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode, command.Barcode);
 
                 // 濡傛灉浠诲姟瀛樺湪
                 if (task != null)

--
Gitblit v1.9.3