From a93b0e99036c24b9bd58c79bf5e7364b1ba28bae Mon Sep 17 00:00:00 2001 From: 杨前锦 <1010338399@qq.com> Date: 星期二, 01 七月 2025 16:02:33 +0800 Subject: [PATCH] 福建佳通-流程优化 --- HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/core/WCSCore.cs | 88 ++++++++++++++++++++------------------------ 1 files changed, 40 insertions(+), 48 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 90f2243..c5e9168 100644 --- a/HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/core/WCSCore.cs +++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/core/WCSCore.cs @@ -54,7 +54,7 @@ case 3: WCSHelper.UpdateStatus(cst, "寮�鍙栬揣"); var locCntrRels = LocationHelper.GetLocCntr(cst.S_START_LOC); - if (locCntrRels.Count > 0) + if (locCntrRels.Count > 0) { cst.S_CNTR_CODE = locCntrRels[0].S_CNTR_CODE; WCSHelper.UpdateWcsTask(cst); @@ -90,9 +90,9 @@ WMSHelper.addRfidAnomalyRecord(cst.S_CNTR_CODE, 2, cst.S_START_LOC, null); // 鏌ヨ鎵弿鐨凴FID // 鍙戦� 00 04 71 02鍒版壂鐮佸櫒 锛屾帴鍙楄繑鍥炴暟鎹苟瑙f瀽 - /* 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);*/ + /* 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) { @@ -103,28 +103,26 @@ if (container != null) { LogHelper.Info($"瀹瑰櫒鐨勫紓甯哥姸鎬佷负锛歿container.N_E_STATE}", "AGV"); - string agvEndLoc = null; if (container.N_E_STATE == 0) { - agvEndLoc = ApiHelper.AGVApplyDest(model.No, cst.S_START_LOC, cst.S_CNTR_CODE, "1"); + ApiHelper.AGVApplyDest(model.No, cst.S_START_LOC, cst.S_CNTR_CODE, "1"); } else { - agvEndLoc = ApiHelper.AGVApplyDest(model.No, cst.S_START_LOC, cst.S_CNTR_CODE, "2"); + ApiHelper.AGVApplyDest(model.No, cst.S_START_LOC, cst.S_CNTR_CODE, "2"); } - ChangeParamModel paramModel = new ChangeParamModel() + ChangeParamModel paramModel = new ChangeParamModel() { task_no = model.No, param_no = 0, param = $"{model.No};{cst.S_START_LOC};{cst.S_END_LOC};4;512;0;1" }; NDCApi.ChangeOrderParam(paramModel); - LogHelper.Info($"鍙樻洿AGV缁堢偣锛歿agvEndLoc}", "AGV"); } else { - WMSHelper.addAlarmRecord("娴佺▼寮傚父", "涓�, $"AGV浠诲姟鍥炴姤,浠诲姟瀹瑰櫒缂栫爜:{cst.S_CNTR_CODE}鐨勫鍣ㄦ病鏈夊綍鍏ュ埌WMS绯荤粺","AGV"); + WMSHelper.addAlarmRecord("娴佺▼寮傚父", "涓�, $"AGV浠诲姟鍥炴姤,浠诲姟瀹瑰櫒缂栫爜:{cst.S_CNTR_CODE}鐨勫鍣ㄦ病鏈夊綍鍏ュ埌WMS绯荤粺", "AGV"); } } else @@ -136,39 +134,9 @@ // AGV浠诲姟瀹屾垚 if (model.State == 2) { - // 妫�祴鐗╂枡鏄惁鍚堟牸,濡備笉鍚堟牸锛�- // 鍒ゆ柇鐗╂枡鏄惁鏄幆甯﹀簱鐗╂枡锛屾槸鍒欏洖鐜甫搴擄紝骞惰鐜甫涓嬪彂鏂扮殑鐗╂枡 - // 闈炵幆甯﹀簱鐗╂枡锛屽垯閫�嚭绔嬪簱锛屽悓鏃朵笅鍙戞柊鐨勭墿鏂欏嚭搴撲换鍔�- if (cst.S_TYPE.Contains("鍙枡鍑哄簱浠诲姟")) - { - var cntrItemRels = ContainerHelper.GetCntrItemRel(cst.S_CNTR_CODE); - if (cntrItemRels != null && cntrItemRels.Count > 0) - { - if (cntrItemRels[0].S_ITEM_STATE == "2") - { - // 涓嶅悎鏍煎搧鍥炲簱 - ApiHelper.rejectReturnStock(mst, cst); - } - } - } - - // 妫�祴鏄惁鏄鐮佷綅锛岄潪璇荤爜浣嶏紝鍙互婵�椿棰勫垱寤轰换鍔�- var transfe = WMSHelper.GetTransfeRelevance(cst.S_END_LOC); // 鎺ラ┏浣嶅睘鎬�- 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("銆愬紓甯搞�")) - { - WCSHelper.ActivatePreCreateTask(mst.S_CODE,1); - } - else - { - WCSHelper.ActivatePreCreateTask(mst.S_CODE); - } - } + // 婵�椿棰勫垱寤轰换鍔�+ // 鍦烘櫙锛�.璇荤爜浣嶆縺娲婚鍒涘缓浠诲姟 2.绌哄伐瑁呭嚭搴撴縺娲绘弧鏂欎笅绾夸换鍔�闈炵洿杩� + WCSHelper.ActivatePreCreateTask(mst.S_CODE); // 鏌ヨ鏄惁鏈夋湭瀹屾垚鐨勪换鍔� if (WMSHelper.isFinishTask(mst.S_CODE)) @@ -180,16 +148,40 @@ // 鏇存柊浠诲姟涓棿琛ㄧ姸鎬� WMSHelper.updateMesTaskStatus(mst.S_CODE, "3"); + } - // 濡傛灉浣滀笟鍚嶇О涓烘垚鍨嬫満鍙枡鍑哄簱浠诲姟锛屽垯瑙﹀彂浣欐枡/绌烘墭鎼繍浠诲姟 - string locCode = WMSHelper.getReturnMaterialLocCode(mst.S_END_LOC); - ApiHelper.returnMaterialOrEmptyTray(locCode); - } + // 妫�祴鐗╂枡鏄惁鍚堟牸,濡備笉鍚堟牸锛�+ // 鍒ゆ柇鐗╂枡鏄惁鏄幆甯﹀簱鐗╂枡锛屾槸鍒欏洖鐜甫搴擄紝骞惰鐜甫涓嬪彂鏂扮殑鐗╂枡 + // 闈炵幆甯﹀簱鐗╂枡锛屽垯閫�嚭绔嬪簱锛屽悓鏃朵笅鍙戞柊鐨勭墿鏂欏嚭搴撲换鍔�+ if (cst.S_TYPE.Contains("鍙枡鍑哄簱浠诲姟")) + { + var bo = int.TryParse(mst.S_OP_DEF_CODE, out int mesId); + if (bo) + { + var mesTask = WMSHelper.GetLjMesTaskById(mesId); + var cntrItemRels = ContainerHelper.GetCntrItemRel(cst.S_CNTR_CODE); + if (cntrItemRels != null && cntrItemRels.Count > 0) + { + if (cntrItemRels[0].S_ITEM_STATE == "2") + { + mesTask.AWAIT_MSG = "鐗╂枡妫�獙鐘舵�涓轰笉鍚堟牸锛岄噸鏂板彨鏂欎腑"; + WMSHelper.updateLjMesTask(mesTask); + + // 涓嶅悎鏍煎搧鍥炲簱 + ApiHelper.rejectReturnStock(mst, cst); + } + } + + // 濡傛灉浣滀笟鍚嶇О涓烘垚鍨嬫満鍙枡鍑哄簱浠诲姟锛屽垯瑙﹀彂浣欐枡/绌烘墭鎼繍浠诲姟 + var sideLocConfig = WMSHelper.getReturnMaterialLocCode(mst.S_END_LOC); + ApiHelper.returnMaterialOrEmptyTray(sideLocConfig.S_RETURN_LOC_CODE, sideLocConfig.EQP); + } + } } } else { - WMSHelper.addAlarmRecord("绯荤粺閿欒", "楂�, $"AGV浠诲姟鐘舵�鍥炴姤锛屼綔涓氬彿:{cst.S_OP_CODE}锛屾湭鏌ヨ鍒颁綔涓�,"AGV"); + WMSHelper.addAlarmRecord("绯荤粺閿欒", "楂�, $"AGV浠诲姟鐘舵�鍥炴姤锛屼綔涓氬彿:{cst.S_OP_CODE}锛屾湭鏌ヨ鍒颁綔涓�, "AGV"); } } else -- Gitblit v1.9.1