From af42a9904d1d3939da7fa0a00c3a7a2ced78258e Mon Sep 17 00:00:00 2001 From: lss <Lss@HanInfo> Date: 星期三, 21 五月 2025 17:26:18 +0800 Subject: [PATCH] 佳通问题优化 --- HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/process/TaskProcess.cs | 63 ++++++++++++++++++++++--------- 1 files changed, 44 insertions(+), 19 deletions(-) diff --git a/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/process/TaskProcess.cs b/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/process/TaskProcess.cs index 309042a..2655f71 100644 --- a/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/process/TaskProcess.cs +++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/process/TaskProcess.cs @@ -13,6 +13,7 @@ using System.IdentityModel.Protocols.WSTrust; using System.Linq; using System.Security.Cryptography; +using System.Threading; using static HH.WCS.JiaTong.api.ApiModel; using static HH.WCS.JiaTong.LISTA.process.HttpModel; @@ -32,15 +33,33 @@ var trayCarryCount = mst.N_CNTR_COUNT > 0 ? mst.N_CNTR_COUNT : 1; if (load) { - Console.WriteLine($"浠诲姟{mst.S_CODE} 璐т綅{mst.S_START_LOC}鍙栬揣瀹屾垚锛岃捣鐐硅В缁戝鍣▄mst.S_CNTR_CODE}"); - LogHelper.Info($"浠诲姟{mst.S_CODE} 璐т綅{mst.S_START_LOC}鍙栬揣瀹屾垚锛岃捣鐐硅В缁戝鍣▄mst.S_CNTR_CODE}"); - LocationHelper.UnBindingLoc(mst.S_START_LOC, mst.S_CNTR_CODE.Split(',').ToList()); + //Console.WriteLine($"浠诲姟{mst.S_CODE} 璐т綅{mst.S_START_LOC}鍙栬揣瀹屾垚锛岃捣鐐硅В缁戝鍣▄mst.S_CNTR_CODE}"); + + if (!string.IsNullOrEmpty(mst.S_CNTR_CODE)) + { + LogHelper.Info($"浠诲姟{mst.S_CODE} 璐т綅{mst.S_START_LOC}鍙栬揣瀹屾垚锛岃捣鐐硅В缁戝鍣▄mst.S_CNTR_CODE}"); + LocationHelper.UnBindingLoc(mst.S_START_LOC, mst.S_CNTR_CODE.Split(',').ToList()); + } + else + { + LogHelper.Info($"浠诲姟{mst.S_CODE} 鎵樼洏涓虹┖ ,鍙В閿佽揣浣�); + LocationHelper.UnlockLoc(mst.S_START_LOC); + } } else { - Console.WriteLine($"浠诲姟{mst.S_CODE} 璐т綅{mst.S_END_LOC}鍗歌揣瀹屾垚锛岀粓鐐圭粦瀹氬鍣▄mst.S_CNTR_CODE}"); - LogHelper.Info($"浠诲姟{mst.S_CODE} 璐т綅{mst.S_END_LOC}鍗歌揣瀹屾垚锛岃捣鐐硅В缁戝鍣▄mst.S_CNTR_CODE}"); - LocationHelper.BindingLoc(mst.S_END_LOC, mst.S_CNTR_CODE.Split(',').ToList()); + // Console.WriteLine($"浠诲姟{mst.S_CODE} 璐т綅{mst.S_END_LOC}鍗歌揣瀹屾垚锛岀粓鐐圭粦瀹氬鍣▄mst.S_CNTR_CODE}"); + + if (!string.IsNullOrEmpty(mst.S_CNTR_CODE)) + { + LogHelper.Info($"浠诲姟{mst.S_CODE} 璐т綅{mst.S_END_LOC}鍗歌揣瀹屾垚锛岃捣鐐硅В缁戝鍣▄mst.S_CNTR_CODE}"); + LocationHelper.BindingLoc(mst.S_END_LOC, mst.S_CNTR_CODE.Split(',').ToList()); + } + else + { + LogHelper.Info($"浠诲姟{mst.S_CODE} 鎵樼洏涓虹┖ ,鍙В閿佽揣浣�); + LocationHelper.UnlockLoc(mst.S_END_LOC); + } } } @@ -73,9 +92,9 @@ /// <summary> /// 瀹夊叏璇锋眰 /// </summary> - /// <param name="model"></param> - /// <param name="url"></param> - /// <param name="wcs"></param> + /// <param name="model">璇锋眰鍙傛暟</param> + /// <param name="url">鍦板潃</param> + /// <param name="TN_Task">浠诲姟</param> internal static void OperateReq(AgvTaskState model, string url, WCSTask TN_Task) { try @@ -103,7 +122,7 @@ else { //浜曟澗鍙犵洏鏈哄畨鍏ㄤ氦浜�- if ( TN_Task.S_NOTE == "绌烘墭鍥炲簱") + if (TN_Task.S_NOTE == "绌烘墭鍥炲簱") { if (S7Helper.WriteDpj(1002, 1)) { @@ -147,10 +166,17 @@ //NDCHelper.ChangeParam(TN_Task.S_CODE.Trim(), 1101, 18); } } - if (TN_Task.Z_TYPE == 2 && TN_Task.S_NOTE == "绌烘墭鍥炲簱") + if (TN_Task.S_NOTE == "绌烘墭鍥炲簱") { - S7Helper.WriteDpj(1001, 1); - S7Helper.WriteDpj(1002, 0); + //鍐欏叆澶辫触閲嶆柊鍐欏叆 + while (!S7Helper.WriteDpj(1001, 1)) + { + Thread.Sleep(1000); + } + while (!S7Helper.WriteDpj(1002, 0)) + { + Thread.Sleep(1000); + } } } if (model.state == 1103) @@ -828,11 +854,7 @@ //鍥炴姤鏁版嵁 Request<MesItemBackModel> request = new Request<MesItemBackModel>(); List<MesItemBackInfoModel> list = new List<MesItemBackInfoModel>(); - string TaskNumber = mst.S_EQ_NO; - if (!string.IsNullOrEmpty(mst.S_WMS_NO)) - { - TaskNumber = mst.S_WMS_NO; - } + //鑾峰彇鏃堕棿鎴� var time = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); //鐗╂枡鍒颁綅鎺ュ彛鍜岀姸鎬佸弽棣堝悓鏃惰皟IIOT锛屼负浜嗗尯鍒唅d锛岀墿鏂欏埌浣嶉暱搴﹀姞涓�尯鍒�@@ -842,7 +864,9 @@ MesItemBackModel mesItemBackModel = new MesItemBackModel(); mesItemBackModel.TaskNumber = mst.S_EQ_NO; mesItemBackModel.WmsTaskNumber = mst.S_WMS_NO; + mesItemBackModel.Rfid = mst.S_CNTR_CODE; mesItemBackModel.LocationNum = mst.S_END_LOC; + mesItemBackModel.Result = "1"; mesItemBackModel.ArricalTime = DateTime.Now.ToString("yyyy-MM-dd"); if (cntritem != null) { @@ -856,7 +880,8 @@ TyreType = cntritem.TyreType, ProduceTime = cntritem.D_PRD_DATE, Rfid = cntritem.S_CNTR_CODE, - Qty = cntritem.F_WEIGHT + Qty = cntritem.F_WEIGHT, + Level = cntritem.LEV }); -- Gitblit v1.9.1