From 08eb1d72105662b301275fefd876be18df1b9fec Mon Sep 17 00:00:00 2001 From: chengsc <11752@DESKTOP-DS49RCP> Date: 星期二, 29 四月 2025 15:12:47 +0800 Subject: [PATCH] 修改小车充电流程 --- Admin.NET/WCS.Application/PLC/PLCTaskAction.cs | 29 +++++++++++++++++++++++++---- 1 files changed, 25 insertions(+), 4 deletions(-) diff --git a/Admin.NET/WCS.Application/PLC/PLCTaskAction.cs b/Admin.NET/WCS.Application/PLC/PLCTaskAction.cs index 18c7c4b..ab3e7b4 100644 --- a/Admin.NET/WCS.Application/PLC/PLCTaskAction.cs +++ b/Admin.NET/WCS.Application/PLC/PLCTaskAction.cs @@ -9,6 +9,7 @@ using OfficeOpenXml.FormulaParsing.Excel.Functions.Logical; using OfficeOpenXml.FormulaParsing.Excel.Functions.Text; using OnceMi.AspNetCore.OSS; +using Qiniu.Storage; using System; using System.Drawing.Drawing2D; using System.Net.NetworkInformation; @@ -377,7 +378,7 @@ try { // 鑾峰彇瀵嗛泦搴撴湭鎵ц浠诲姟 鏍规嵁鍒涘缓鏃堕棿鎺掑簭 - var waitTask = _db.Queryable<WcsTask>().Where(s => s.IsDelete == false && s.Status == TaskStatusEnum.Wait && s.Type == PLCTypeEnum.ShuttleCar).OrderBy(s => s.CreateTime).First(); + var waitTask = _db.Queryable<WcsTask>().Where(s => s.IsDelete == false && s.Status == TaskStatusEnum.Wait && s.Type == PLCTypeEnum.ShuttleCar).OrderBy(s => new {s.Levels, s.CreateTime}).First(); if (waitTask == null) { continue; @@ -386,7 +387,7 @@ var taskpai = int.Parse(waitTask.StartLocate.Substring(0, 2)); var tasklie = int.Parse(waitTask.StartLocate.Substring(2, 2)); var taskceng = int.Parse(waitTask.StartLocate.Substring(4, 2)); - + #region 鑾峰彇褰撳墠浠诲姟鎵�鍦ㄥ眰鎵�鏈夌┖闂插皬杞� // 鑾峰彇鏈変换鍔$殑灏忚溅缂栧彿 @@ -412,6 +413,19 @@ { //鑾峰彇宸ヤ綅WCSPLCPosition淇℃伅 var plcPosition = listPlcPosition.Where(s => s.DeviceId == modDevice.Id).ToList(); + if (value == 3) + { + var modCarDl = plcPosition.FirstOrDefault(s => s.Text == "鐢垫睜鐢甸噺"); + var (resultDl, valueDl) = modbusUtil.GetDBValue(modCarDl.PosType, modCarDl.PlcPos); + if (resultDl.IsSucceed && valueDl> (int)FourWayCarDLEnum.Dl3) + { + //鍐欏叆缁撴潫鍏呯數鍛戒护 + var modCdEnd = plcPosition.FirstOrDefault(s => s.Text == "鍏呯數鍛戒护"); + var resultDl22 = modbusUtil.SetDBValue(modCdEnd.PosType, modCdEnd.PlcPos.ToString(), "3") ; + carErr = true; + break; //鏆傜紦鍒嗛厤锛岄槻姝㈠悓灞傚皬杞﹀叧鏈烘垨澶辫仈瀵艰嚧闃绘尅璺緞 + } + } //灏忚溅绌洪棽鍔犲叆闆嗗悎 if (value == 1) { @@ -490,9 +504,16 @@ } } } + var typeStr = "1"; + var typeStr2 = 1; + if (waitTask.Levels == 888 ) + { + typeStr = "0";//灏忚溅浠诲姟鏄厖鐢典换鍔� + typeStr2 = 0; + } //鑾峰彇灏忚溅鍘绘斁璐у偍浣嶄换鍔¤矾寰� - var data2 = FourWayCarUtil.GetCarPath(waitTask.StartLocate, waitTask.EndLocate, "1"); - var datas2 = FourWayCarUtil.GetCarPathUp(data2, 1); + var data2 = FourWayCarUtil.GetCarPath(waitTask.StartLocate, waitTask.EndLocate, typeStr); + var datas2 = FourWayCarUtil.GetCarPathUp(data2, typeStr2); if (datas2 == null) { -- Gitblit v1.8.0