From b7a89c248b9dcbbe99d4d7a84f4677c73e46dd93 Mon Sep 17 00:00:00 2001 From: chengsc <11752@DESKTOP-DS49RCP> Date: 星期二, 29 四月 2025 15:14:33 +0800 Subject: [PATCH] 修改测试问题 --- Admin.NET/WCS.Application/PLC/PLCTaskAction.cs | 31 ++++++++++++++++++++++++++----- 1 files changed, 26 insertions(+), 5 deletions(-) diff --git a/Admin.NET/WCS.Application/PLC/PLCTaskAction.cs b/Admin.NET/WCS.Application/PLC/PLCTaskAction.cs index f22caec..6e57018 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.Dl) + { + //鍐欏叆缁撴潫鍏呯數鍛戒护 + var modCdEnd = plcPosition.FirstOrDefault(s => s.Text == "鍏呯數鍛戒护"); + var resultDl22 = modbusUtil.SetDBValue(modCdEnd.PosType, modCdEnd.PlcPos.ToString(), "3") ; + carErr = true; + break; //鏆傜紦鍒嗛厤锛岄槻姝㈠悓灞傚皬杞﹀叧鏈烘垨澶辫仈瀵艰嚧闃绘尅璺緞 + } + } //灏忚溅绌洪棽鍔犲叆闆嗗悎 if (value == 1) { @@ -468,7 +482,7 @@ continue;//娌℃湁绌洪棽灏忚溅 } - if (assignCar.Level != 0) + if (assignCar.Level != 1) { //鍒ゆ柇灏忚溅浣嶇疆鏄惁涓庝换鍔$殑璧峰鍌ㄤ綅鐩稿悓,涓嶇浉鍚岋細鑾峰彇灏忚溅鍒板彇璐у偍浣嶈矾寰� var carLocate = assignCar.X.ToString().PadLeft(2, '0')+assignCar.Y.ToString().PadLeft(2, '0')+ assignCar.Z.ToString().PadLeft(2, '0'); @@ -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