From 10e84968f9c70ebf6c83893091a36863b1e27b2a Mon Sep 17 00:00:00 2001 From: 杨前锦 <1010338399@qq.com> Date: 星期三, 11 六月 2025 17:31:12 +0800 Subject: [PATCH] ... --- HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/core/WCSCore.cs | 38 +++++++++++++++----------------------- 1 files changed, 15 insertions(+), 23 deletions(-) diff --git a/HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/core/WCSCore.cs b/HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/core/WCSCore.cs index 1a802e0..d77c89c 100644 --- a/HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/core/WCSCore.cs +++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/core/WCSCore.cs @@ -11,6 +11,7 @@ using System.Web.Http; using static HH.WCS.Mobox3.FJJT.api.ApiHelper; using static HH.WCS.Mobox3.FJJT.api.ApiModel; +using HH.WCS.Mobox3.FJJT.util; namespace HH.WCS.Mobox3.FJJT.core { internal class WCSCore { @@ -61,6 +62,7 @@ break; case 4: WCSHelper.UpdateStatus(cst, "鍙栬揣瀹屾垚"); + LocationHelper.UnLockLoc(cst.S_START_LOC); TaskProcess.OperateStatus(cst, 4); break; case 5: @@ -68,6 +70,7 @@ break; case 6: WCSHelper.UpdateStatus(cst, "鍗歌揣瀹屾垚"); + LocationHelper.UnLockLoc(cst.S_END_LOC); TaskProcess.OperateStatus(cst, 6); break; #endregion @@ -83,26 +86,13 @@ else if (model.State == 1012) { LogHelper.Info("寮�杩涜RFID鎵弿", "AGV"); + ContainerHelper.UpdateCntrState(cst.S_CNTR_CODE, 1); + WMSHelper.addRfidAnomalyRecord(cst.S_CNTR_CODE, 2, cst.S_START_LOC, null); // 鏌ヨ鎵弿鐨凴FID // 鍙戦� 00 04 71 02鍒版壂鐮佸櫒 锛屾帴鍙楄繑鍥炴暟鎹苟瑙f瀽 - /* string hexString = TcpClient.SendHexOnce("127.0.0.1", 8080, "00 04 71 02"); - var rfid = hexString.Substring(6, 8);*/ - string rfid = ""; - LogHelper.Info($"鎵弿缁撴潫锛孯FID锛歿rfid}", "AGV"); - if (rfid == cst.S_CNTR_CODE) - { - LogHelper.Info($"鎵弿RFID锛歿rfid}涓庝换鍔FID涓�嚧", "AGV"); - // 淇敼1012鐨勫弬鏁�涓� - /* NDCApi.ChangeOrderParam(cst.S_CODE, 6, "1");*/ - } - else - { - WMSHelper.addAlarmRecord("娴佺▼寮傚父", "浣�, $"鎵弿RFID锛歿rfid}涓庝换鍔FID:{cst.S_CNTR_CODE}涓嶄竴鑷�, "AGV"); - // 淇敼鍙傛暟6涓� - /* NDCApi.ChangeOrderParam(cst.S_CODE, 6, "3");*/ - // 淇敼瀹瑰櫒寮傚父鐘舵� - ContainerHelper.UpdateCntrState(cst.S_CNTR_CODE, 2,$"{model.ForkliftNo}AGV鎵爜鍣�鎵弿RFID:{rfid}涓庝换鍔FID:{cst.S_CNTR_CODE}涓嶄竴鑷�); - } + byte[] bytes = new byte[] { 00, 04, 71, 02 }; + var plc = Settings.carDeviceInfos.Where(a => a.deviceNo == model.ForkliftNo && a.enable == 1).FirstOrDefault(); + TcpServer.TcpServerSend(plc.address, bytes); } else if (model.State == 1002) { @@ -130,7 +120,7 @@ param = $"{model.No};{cst.S_START_LOC};{cst.S_END_LOC};4;512;0;1" }; NDCApi.ChangeOrderParam(paramModel); - LogHelper.Info($"鑾峰彇AGV缁堢偣锛歿agvEndLoc}", "AGV"); + LogHelper.Info($"鍙樻洿AGV缁堢偣锛歿agvEndLoc}", "AGV"); } else { @@ -164,7 +154,11 @@ // 妫�祴鏄惁鏄鐮佷綅锛岄潪璇荤爜浣嶏紝鍙互婵�椿棰勫垱寤轰换鍔� var transfe = WMSHelper.GetTransfeRelevance(cst.S_END_LOC); // 鎺ラ┏浣嶅睘鎬�- if ((transfe == null || transfe.N_READ_LOC == 0)) + if (transfe != null && transfe.N_READ_LOC == 1) + { + WCSHelper.ActivatePreCreateTask(mst.S_CODE); + } + else if ( transfe.N_READ_LOC == 0) { if (cst.S_TYPE.Contains("銆愬紓甯搞�")) { @@ -190,9 +184,7 @@ // 濡傛灉浣滀笟鍚嶇О涓烘垚鍨嬫満鍙枡鍑哄簱浠诲姟锛屽垯瑙﹀彂浣欐枡/绌烘墭鎼繍浠诲姟 string locCode = WMSHelper.getReturnMaterialLocCode(mst.S_END_LOC); ApiHelper.returnMaterialOrEmptyTray(locCode); - } - - + } } } else -- Gitblit v1.9.1