From e79cf581b2f0038a41de5da1c6eadb3541f4d69e Mon Sep 17 00:00:00 2001
From: IPC-610 <IPC-610@DESKTOP-6LEOOS3>
Date: 星期六, 28 九月 2024 08:10:13 +0800
Subject: [PATCH] 问题修改

---
 Admin.NET/WCS.Application/PLC/PLCService.cs |   22 +++++++++++++++++-----
 1 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/Admin.NET/WCS.Application/PLC/PLCService.cs b/Admin.NET/WCS.Application/PLC/PLCService.cs
index e0ef176..1be1883 100644
--- a/Admin.NET/WCS.Application/PLC/PLCService.cs
+++ b/Admin.NET/WCS.Application/PLC/PLCService.cs
@@ -861,6 +861,10 @@
         var plcConn = modDevice.PLCUtil;
         // 鑾峰彇妤煎眰鏁癱eshi
         var louCeng = PLCCommon.GetRoadwayByStationNew(modDevice.StationNum);
+        if (louCeng == "") 
+        {
+            return;
+        }
         switch (modDevice.Value.ToString())
         {
             case "320":
@@ -1799,14 +1803,22 @@
                                 if (taskModel != null)
                                 {
                                     // 鑾峰彇鍏ュ簱鍙栬揣宸ヤ綅
-                                    string endLocatVlue = PLCCommon.RoadwayToStationNum(taskModel.EndRoadway, "2");     
+                                    string endLocatVlue = PLCCommon.RoadwayToStationNum(taskModel.EndRoadway, "2");
 
-                                    // 鍐欏叆鎵樼洏杈撻�佺嚎鐮佸灈宸ヤ綅 鐩殑宸ヤ綅锛屽啓鍏ヤ氦浜掓祦绋嬬粍鎵樻垚鍔� 鎵ц鍏ュ簱{鑻ラ渶瑕佸彲浠ュ啓鍏ヤ换鍔″彿绛夌瓑鍏朵粬淇℃伅}
-                                    var retVal = plcConn.SetPlcDBValue(posModel.PosType, numModel.DbNumber, posModel.PlcPos, endLocatVlue);
-                                    if (retVal.IsSucceed)
+                                    var listResult = new List<Result>();
+                                    // 鍐欏叆鎵樼洏杈撻�佺嚎鐮佸灈宸ヤ綅 鐩殑宸ヤ綅銆佷换鍔″彿锛屽啓鍏ヤ氦浜掓祦绋嬬粍鎵樻垚鍔� 鎵ц鍏ュ簱{鑻ラ渶瑕佸彲浠ュ啓鍏ヤ换鍔″彿绛夌瓑鍏朵粬淇℃伅}
+                                    listResult.Add(plcConn.SetPlcDBValue(posModel.PosType, numModel.DbNumber, posModel.PlcPos, endLocatVlue));
+                                    var modPosTask = PLCTaskAction.plcPositions.First(s => s.Text == "浠诲姟鍙�");
+                                    listResult.Add(plcConn.SetPlcDBValue(modPosTask.PosType, modDevice.DbNumber, modPosTask.PlcPos, TaskNo));
+                                    var modPosTaskType = PLCTaskAction.plcPositions.First(s => s.Text == "浠诲姟绫诲瀷");
+                                    var taskTypeStr = (int)taskModel.TaskType;
+                                    listResult.Add(plcConn.SetPlcDBValue(modPosTaskType.PosType, modDevice.DbNumber, modPosTaskType.PlcPos, taskTypeStr.ToString()));
+
+
+                                    if (listResult.All(s => s.IsSucceed))
                                     {
                                         // 鍐欏叆缁勬墭鍥炲娴佺▼瀛�
-                                        retVal = plcConn.SetPlcDBValue(modDevice.PosType, modDevice.DbNumber, modDevice.WcsPos, "50");
+                                        var retVal = plcConn.SetPlcDBValue(modDevice.PosType, modDevice.DbNumber, modDevice.WcsPos, "50");
                                         if (retVal.IsSucceed) 
                                         {
                                             // 灏嗗叆搴撲换鍔$敱姝e湪鎵ц鏀逛负姝e湪鎵ц

--
Gitblit v1.8.0