From 5b9da592f9bc117c88244f469418d5a5b29e4266 Mon Sep 17 00:00:00 2001 From: 海波 张 <2956280567@qq.com> Date: 星期三, 16 七月 2025 17:31:52 +0800 Subject: [PATCH] mes取消修改 --- api/MoboxController.cs | 90 ++++++++++++++++++++++++++++++++++++++------- 1 files changed, 76 insertions(+), 14 deletions(-) diff --git a/api/MoboxController.cs b/api/MoboxController.cs index 08a5103..dc3b880 100644 --- a/api/MoboxController.cs +++ b/api/MoboxController.cs @@ -1,9 +1,12 @@ -锘縰sing HH.WCS.ZhongCeJinTan.device; +锘縰sing HH.WCS.Mobox3.ZhongCeJinTan.dispatch; +using HH.WCS.ZhongCeJinTan.device; using HH.WCS.ZhongCeJinTan.dispatch; using HH.WCS.ZhongCeJinTan.process; using HH.WCS.ZhongCeJinTan.util; using HH.WCS.ZhongCeJinTan.wms; +using Newtonsoft.Json; using System.Linq; +using System.Threading.Tasks; using System.Web.Http; using static HH.WCS.ZhongCeJinTan.api.ApiModel; @@ -12,7 +15,7 @@ /// <summary> /// mobox璋冪敤 /// </summary> - [RoutePrefix("mobox")] + //[RoutePrefix("mobox")] public class MoboxController : System.Web.Http.ApiController { [HttpPost] @@ -23,13 +26,27 @@ if (task != null) { if (task.S_B_STATE.Trim() == "鏈墽琛�) { //鏈墽琛岀洿鎺ヤ慨鏀圭姸鎬佷负鍙栨秷 - TaskHelper.UpdateStatus(model.TaskNo, "鍙栨秷"); + + LogHelper.Info($"mobox鍙栨秷agv浠诲姟{task.S_CODE}锛�, "鍙栨秷"); + TaskHelper.Fail(task); + TaskProcess.CacheBitCancelUpdate(task); + TaskHelper.opMesTask(task, 3); } else if(task.S_B_STATE.Trim() != "鍙栨秷"&& task.S_B_STATE.Trim() != "瀹屾垚") { - //if (GZRobot.CancelOrder(task.GZ_ID)) - //{ - // result.resultMsg = "浠诲姟鍙栨秷宸茬粡鍙戦�缁欏皬杞�; - //} + var db = new SqlHelper<object>().GetInstance(); + var qhflag = db.Queryable<WmsTaskAction>().Where(a => a.S_TASK_CODE == task.S_CODE && a.S_ACTION == "4").First(); + + + if (qhflag != null) + { + LogHelper.Info($"mobox鍙栨秷锛岃浠诲姟{task.S_CODE}宸茬粡鍙栬揣瀹屾垚,锛屼笉鍏佽鍙栨秷", "鍙栨秷"); + return result; + } + TaskHelper.opMesTask(task, 3); + //宸叉帹閫佷絾鏄病鏈夊畬鎴愭垨鑰呭彇娑堬紝閫氱煡hosttoagv + TaskHelper.Fail(task); + NDCApi.CancelOrder(task.S_CODE.Trim()); + TaskProcess.CacheBitCancelUpdate(task); } else { result.resultCode = 1; @@ -46,9 +63,10 @@ //浣滀笟浠诲姟寮哄埗瀹屾垚 [HttpPost] - //[Route("CompleteTask")] public SimpleResult CompleteTask(MoboxTaskBase model) { + LogHelper.Info("CompleteTask 鍙傛暟锛� + JsonConvert.SerializeObject(model), "寮哄埗瀹屾垚"); + var result = new SimpleResult(); var task = TaskHelper.GetTask(model.TaskNo); if (task != null) @@ -57,13 +75,55 @@ { result.resultMsg = "浠诲姟鏈墽琛岋紝涓嶅厑璁稿己鍒跺畬鎴愶紒"; } - - else if (task.S_B_STATE.Trim() != "鏈墽琛�) + else if (task.S_B_STATE.Trim() != "瀹屾垚"&& task.S_B_STATE.Trim() != "鍙栨秷") { - //宸叉帹閫佷絾鏄病鏈夊畬鎴愭垨鑰呭彇娑堬紝閫氱煡hosttoagv - TaskHelper.UpdateStatus(model.TaskNo.Trim(), "瀹屾垚"); - - + + + if (task.S_SCHEDULE_TYPE.Contains("agv")) + { + //鐪嬪皬杞︽湁娌℃湁4鍙栬揣瀹屾垚 + WmsTaskAction ac4 = TaskHelper.GetActionRecord(task.S_CODE, "4"); + if (ac4 != null) + { + + LogHelper.Info("CompleteTask agv浠诲姟宸茬粡鍙栬揣瀹屾垚,浠诲姟寮哄埗瀹屾垚澶勭悊", "寮哄埗瀹屾垚"); + + + TaskHelper.UpdateStatus(task, "鍗歌揣瀹屾垚"); + LocationHelper.UnLockLoc(task.S_END_LOC); + TaskProcess.OperateStatus(task, 6); + + //濡傛灉鏄簩娈典换鍔″垯涓嬪彂绔嬪簱浠诲姟 + var wcsTask = TaskHelper.GetTaskByState("鏈墽琛�, "wcs", task.S_OP_CODE, "鍏ュ簱"); + if (wcsTask != null) + { + LocationHelper.LockLoc(wcsTask.S_START_LOC, "鍑哄簱閿�, 2); + WcsTask.WcsTaskEntity(wcsTask); + } + TaskHelper.End(task); + } + else + { + + LogHelper.Info("CompleteTask agv浠诲姟娌℃湁鍙栬揣瀹屾垚,浠诲姟鍙栨秷澶勭悊", "寮哄埗瀹屾垚"); + var cancle = new cancleTaskParme(); + cancle.task_no = task.S_CODE; + TaskProcess.cancelTask1(cancle); + } + } + + + if (task.S_SCHEDULE_TYPE.Contains("wcs")) { + LogHelper.Info("CompleteTask wcs浠诲姟寮哄埗瀹屾垚澶勭悊", "寮哄埗瀹屾垚"); + LocationHelper.UnLockLoc(task.S_START_LOC); + TaskProcess.OperateStatus(task, 4); + LocationHelper.UnLockLoc(task.S_END_LOC); + TaskProcess.OperateStatus(task, 6); + TaskHelper.End(task); + LocationHelper.CreateUpAndDown(task); + } + + } else { @@ -76,6 +136,8 @@ result.resultCode = 1; result.resultMsg = "浠诲姟涓嶅瓨鍦�; } + + LogHelper.Info("CompleteTask 杩斿洖锛� + JsonConvert.SerializeObject(model), "寮哄埗瀹屾垚"); return result; } -- Gitblit v1.9.1