From cff60cb1cccf70fe33ed9c951c46143fe41fc43a Mon Sep 17 00:00:00 2001
From: IPC-610 <IPC-610@DESKTOP-6LEOOS3>
Date: 星期四, 26 九月 2024 19:09:52 +0800
Subject: [PATCH] 设备呼叫空托跺

---
 Admin.NET/WCS.Application/Hub/PlcHub.cs |   44 ++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 42 insertions(+), 2 deletions(-)

diff --git a/Admin.NET/WCS.Application/Hub/PlcHub.cs b/Admin.NET/WCS.Application/Hub/PlcHub.cs
index 3788047..282d65e 100644
--- a/Admin.NET/WCS.Application/Hub/PlcHub.cs
+++ b/Admin.NET/WCS.Application/Hub/PlcHub.cs
@@ -74,7 +74,7 @@
             if (PLCTaskAction.boDemo)
             {
                 //鍒ゆ柇鍒嗘嫞鐮佸灈鏈夋病鏈夌粦瀹氫换鍔�
-                var checkTask = await _wcsCheckTaskRep.Context.Queryable<WcsCheckTask>().Where(w => w.Status == "1").ToListAsync();
+                var checkTask = await _wcsCheckTaskRep.Context.Queryable<WcsCheckTask>().Where(w => w.Status == "1" && w.RoboatType == PLCTypeEnum.RobotPalletizer).ToListAsync();
                 if (checkTask.Count > 0)
                 {
                     PLCTaskAction.boDemo = false;
@@ -99,16 +99,56 @@
                 var ret = plcStackeConn.SetPlcDBValue(PLCDataTypeEnum.Bit, "DB119", "0", PLCTaskAction.boDemo == true ? "1" : "0");
                 if (ret.IsSucceed)
                 {
-                    await _sysConfigService.UpdateConfigValue("sys_demo", context.BoDemo.Value);
+                    if (PLCTaskAction.boDemo)
+                    {
+                        // 鍐欏叆plc鎶撶鍝佺
+                        var rett = plcStackeConn.SetPlcDBValue(PLCDataTypeEnum.Short, "DB111", "0", "1");
+                        if (rett.IsSucceed)
+                        {
+                            await _sysConfigService.UpdateConfigValue("sys_demo", context.BoDemo.Value);
+                        }
+                    }
+                    else 
+                    {
+                        var rett = plcStackeConn.SetPlcDBValue(PLCDataTypeEnum.Short, "DB111", "0", "0");
+                        if (rett.IsSucceed)
+                        {
+                            await _sysConfigService.UpdateConfigValue("sys_demo", context.BoDemo.Value);
+                        }
+                    }                 
                 }
                 else
                 {
                     PLCTaskAction.boDemo = !PLCTaskAction.boDemo;
+
+                    await _plcHubContext.Clients.All.UpdateService(
+                       new PLCServiceModel()
+                       {
+                           BoRunningState = PLCTaskAction.boRunningState,
+                           BoRefresh = PLCTaskAction.boRefresh,
+                           BoOffline = PLCTaskAction.boOffline,
+                           BoDemo = PLCTaskAction.boDemo,
+                           BoDrumReversal = PLCTaskAction.boDrumReversal,
+                           Error = "涓嶱CL浜や簰澶辫触锛屾搷浣滃け璐ワ紒"
+                       });
+                    return;
                 }
             }
             else
             {
                 PLCTaskAction.boDemo = !PLCTaskAction.boDemo;
+
+                await _plcHubContext.Clients.All.UpdateService(
+                   new PLCServiceModel()
+                   {
+                       BoRunningState = PLCTaskAction.boRunningState,
+                       BoRefresh = PLCTaskAction.boRefresh,
+                       BoOffline = PLCTaskAction.boOffline,
+                       BoDemo = PLCTaskAction.boDemo,
+                       BoDrumReversal = PLCTaskAction.boDrumReversal,
+                       Error = "PCL鏈繛鎺ワ紝鎿嶄綔澶辫触锛�"
+                   });
+                return;
             }
         }
         //婊氱瓛鍙嶈浆

--
Gitblit v1.8.0