From 7a70c16d9fb28646a0f22e9f699746df6c651e8c Mon Sep 17 00:00:00 2001
From: Admin <Admin@ADMIN>
Date: 星期一, 15 十二月 2025 20:14:04 +0800
Subject: [PATCH] 最新

---
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs |   93 +++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 79 insertions(+), 14 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs"
index 23ed508..4d3922f 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs"
@@ -125,15 +125,65 @@
         {
             //椤舵ゼ妤艰緭閫佺嚎鍒ゆ柇
 
-            //ProcessConveyorEvent(conveyorLine, "PLC_WCS_D._01_PLC_EVENT", "PLC_WCS_D._01_PLC_LPN", "R01-003-041-011-01", "WCS_PLC_D._01_WCS_TO");// 澶勭悊 1宸烽亾 绔欏彴浜嬩欢鍏ョ┖ (鏈兘浣跨敤)
+            ProcessConveyorEvent(conveyorLine, "PLC_WCS_D._01_PLC_EVENT", "PLC_WCS_D._01_PLC_LPN", "R01-003-041-011-01", "WCS_PLC_D._01_WCS_TO");// 澶勭悊 1宸烽亾 绔欏彴浜嬩欢鍏ョ┖ (鏈兘浣跨敤)
             ProcessConveyorEvent(conveyorLine, "PLC_WCS_D._03_PLC_EVENT", "PLC_WCS_D._03_PLC_LPN", "R02-003-027-011-01", "WCS_PLC_D._03_WCS_TO");// 澶勭悊 2宸烽亾 绔欏彴浜嬩欢 鍏ョ┖
         }
 
         public void RequestInbound3(CommonConveyorLine conveyorLine)
         {
-            ProcessConveyorEvent(conveyorLine, "PLC_WCS_A._02_PLC_EVENT", "PLC_WCS_A._02_PLC_LPN", "R01-002-043-001-01", "WCS_PLC_A._02_WCS_TO");// 澶勭悊 A21 绔欏彴浜嬩欢鍏ュ簱
+            
 
-            ProcessConveyorEvent(conveyorLine, "PLC_WCS_A._03_PLC_EVENT", "PLC_WCS_A._03_PLC_LPN", "R01-002-042-001-01", "WCS_PLC_A._03_WCS_TO");// 澶勭悊 A22 绔欏彴浜嬩欢 鍏ユ枡
+            HandleEvent2(conveyorLine, "PLC_WCS_A._05_PLC_EVENT", "PLC_WCS_A._05_PLC_LPN", "WCS_PLC_A._05_WCS_TO", "鎴愬搧U鍨嬪集鎵爜绔欏彴");  //鍒ゆ柇宸烽亾
+
+            CheckForEmptyPallet(conveyorLine, "PLC_WCS_A._02_PLC_EVENT", "PLC_WCS_A._02_PLC_LPN", "PLC_WCS_A._02_PLC_PUT", "R01-002-043-001-01"); //鍒ゆ柇鏄惁鍙栫┖鎵樺嚭搴�
+
+            ProcessConveyorEvent(conveyorLine, "PLC_WCS_A._02_PLC_EVENT", "PLC_WCS_A._02_PLC_LPN", "R01-002-043-001-01", "WCS_PLC_A._02_WCS_TO");// 澶勭悊 A21 绔欏彴鍏ョ┖
+
+            ProcessConveyorEvent(conveyorLine, "PLC_WCS_A._03_PLC_EVENT", "PLC_WCS_A._03_PLC_LPN", "R01-002-042-001-01", "WCS_PLC_A._05_WCS_TO");// 澶勭悊 A22 绔欏彴浜嬩欢 鍏ユ枡
+
+            //鍒ゆ柇鏄惁鏈�1妤煎嚭绌烘墭浠诲姟
+            MassiveOutboundShipments(conveyorLine, "WCS_PLC_A._01_WCS_TYPE");
+        }
+
+        public void MassiveOutboundShipments(CommonConveyorLine conveyorLine, string OutPLCAddress)
+        {
+            try
+            {
+                bool WetiOuttaskinfo = _taskService.ObtainOutTaskInfo();
+                if (WetiOuttaskinfo)
+                {
+                    bool result = conveyorLine.Communicator.Write(OutPLCAddress, (byte)1);   //鍐欏叆鍘诲悜涓虹煭宸烽亾
+                    if (result)
+                    {
+                        WriteLog.Write_Log("U鍨嬫垚鍝佸嚭搴�", "鎴愬搧鍑哄簱鍐欏叆淇℃伅", "鎴愬姛", new { 淇℃伅 = "鍐欏叆浜や簰淇℃伅锛屽啓鍏ユ垚鍔燂紝鍐欏叆鍊硷細1" });
+                        return;
+                    }
+                    else
+                    {
+                        WriteLog.Write_Log("U鍨嬫垚鍝佸嚭搴�", "鎴愬搧鍑哄簱鍐欏叆淇℃伅", "澶辫触", new { 淇℃伅 = $"鍐欏叆澶辫触锛屽湴鍧�锛歿OutPLCAddress}" });
+                        return;
+                    }
+                }
+                else
+                {
+                    bool result = conveyorLine.Communicator.Write(OutPLCAddress, (byte)0);   //鍐欏叆鍘诲悜涓虹煭宸烽亾
+                    if (result)
+                    {
+                        WriteLog.Write_Log("U鍨嬫垚鍝佸嚭搴�", "鎴愬搧鍑哄簱鍐欏叆淇℃伅", "鎴愬姛", new { 淇℃伅 = "鍐欏叆娓呴櫎淇℃伅锛屽啓鍏ユ垚鍔燂紝鍐欏叆鍊硷細0" });
+                        return;
+                    }
+                    else
+                    {
+                        WriteLog.Write_Log("U鍨嬫垚鍝佸嚭搴�", "鎴愬搧鍑哄簱鍐欏叆淇℃伅", "澶辫触", new { 淇℃伅 = $"鍐欏叆澶辫触锛屽湴鍧�锛歿OutPLCAddress}" });
+                        return;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                WriteLog.Write_Log("U鍨嬫垚鍝佸嚭搴�", "鎴愬搧鍑哄簱鍐欏叆淇℃伅", "澶辫触", new { 淇℃伅 = $"绯荤粺閿欒淇℃伅锛屽啓鍏ュけ璐ワ紝鍦板潃锛歿OutPLCAddress}" });
+                throw;
+            }
         }
 
         public void ConveyorLineInFinish(CommonConveyorLine conveyorLine, string SCAddress)
@@ -212,8 +262,22 @@
                         {
                             if (content.Data != null)
                             {
+
+                                if (Platform == "鎴愬搧U鍨嬪集鎵爜绔欏彴")
+                                {
+                                    // 鍐欏叆鍘诲悜2鍙峰爢鍨涙満
+                                    bool result = conveyorLine.Communicator.Write(writeTag, (byte)3);   //鍐欏叆鍘诲悜涓虹煭宸烽亾
+                                    if (result)
+                                    {
+                                        wcs_PLCto01(Platform + "锛氭垚鍔熶俊鎭�", "鎴愬姛", $"鏉$爜{barcode},鍐欏叆鍘诲悜锛�3");
+                                        return;
+                                    }
+                                }
+
+
                                 if (content.Data.ToString() == "1")
                                 {
+
                                     if (conveyorLine.Communicator.Read<string>("PLC_WCS_C._03_PLC_LPN") == "")
                                     {
                                         // 鍐欏叆鍘诲悜2鍙峰爢鍨涙満
@@ -257,14 +321,14 @@
                         }
                     }
                 }
-                else
+                /*else
                 {
                     wcs_PLCto01(Platform + "锛氶敊璇俊鎭�", "閿欒", $"璇诲彇鍒拌緭閫佺嚎,鐢宠锛歿events},鏉$爜锛歿barcode}");
-                }
+                }*/
             }
             catch (Exception ex)
             {
-
+                wcs_PLCto01(Platform + "锛氶敊璇俊鎭�", "閿欒", $"鏁呴殰淇℃伅锛歿ex.Message}");
                 throw;
             }
         }
@@ -289,10 +353,10 @@
                         wcs_PLCto02(Loc + "锛氶敊璇俊鎭�", "閿欒", $"鏈敓鎴愮┖鎵樺嚭搴撲换鍔★紝閿欒淇℃伅锛歿content.Message}");
                     }
                 }
-                else
+                /*else
                 {
                     wcs_PLCto02(Loc + "锛氶敊璇俊鎭�", "閿欒", $"璇诲彇鍒拌緭閫佺嚎,鐢宠锛歿events}");
-                }
+                }*/
             }
             catch (Exception ex)
             {
@@ -308,10 +372,10 @@
             try
             {
                 byte eventStatus = conveyorLine.Communicator.Read<byte>(eventTag);
-                if (eventStatus == 1)
+                if ((eventStatus == 1 && taskCode != "R01-002-043-001-01") ||  (eventStatus == 6 && taskCode== "R01-002-043-001-01"))
                 {
                     string barcode = conveyorLine.Communicator.Read<string>(barcodeTag).Trim();
-                    if (barcode != null)
+                    if (barcode != null && barcode != "0")
                     {
                         bool result = conveyorLine.Communicator.Write(writeTag, (byte)0);
                         wcs_PLCto03("鍘诲悜娓呴櫎", "鎴愬姛", $"鍦板潃锛歿writeTag}锛屽幓鍚戞竻闄や负锛�0");
@@ -334,12 +398,13 @@
                     }
                     else
                     {
-                        wcs_PLCto03(taskCode + "锛氶敊璇俊鎭�", "閿欒", $"璇诲彇鍒拌緭閫佺嚎淇℃伅涓虹┖");
+                        wcs_PLCto03(taskCode + "锛氶敊璇俊鎭�", "閿欒", $"璇诲彇鍒拌緭閫佺嚎淇℃伅鏉$爜淇℃伅涓虹┖鎴栦负0锛岃鍙栧埌杈撻�佺嚎淇℃伅锛歿barcode}");
                     }
                 }
-                else if (eventStatus == 6)
+                else if (eventStatus == 6 && taskCode != "R01-002-043-001-01")
                 {
-                    if (taskCode == "R02-003-027-011-01")
+                    //if (taskCode == "R02-003-027-011-01" )  涔嬪墠鐗堟湰閰嶅悎else杩涜浣跨敤
+                    if (taskCode == "R01-003-041-011-01" || taskCode == "R02-003-027-011-01")
                     {
                         WebResponseContent content = _taskService.RequestWMSTask4();
                         if (content != null)
@@ -389,7 +454,7 @@
                     {
                         if (conveyorLine.Communicator.Write(writeTag, (byte)1))
                         {
-                            wcs_PLCto04(taskCode + "锛氭垚鍔熶俊鎭�", "鎴愬姛", $"鍐欏叆澶辫触锛屽幓鍚戯細1");
+                            wcs_PLCto04(taskCode + "锛氭垚鍔熶俊鎭�", "鎴愬姛", $"鍐欏叆鎴愬姛锛屽幓鍚戯細1");
                         }
                         else
                         {

--
Gitblit v1.9.3