From fad1333a599e562c8fa7ee350852fee72b9a6a28 Mon Sep 17 00:00:00 2001 From: 杨张扬 <634643841@qq.com> Date: 星期三, 02 七月 2025 17:33:25 +0800 Subject: [PATCH] 出库任务取消在4之前不删除库存 --- core/WCSCore.cs | 81 +++++++++++++++++++++++++--------------- 1 files changed, 51 insertions(+), 30 deletions(-) diff --git a/core/WCSCore.cs b/core/WCSCore.cs index 68267f1..8403b7c 100644 --- a/core/WCSCore.cs +++ b/core/WCSCore.cs @@ -1,5 +1,6 @@ 锘縰sing HH.WCS.Mobox3.DoubleCoin.device; using HH.WCS.Mobox3.DoubleCoin.dispatch; +using HH.WCS.Mobox3.DoubleCoin.models; using HH.WCS.Mobox3.DoubleCoin.process; using HH.WCS.Mobox3.DoubleCoin.util; using HH.WCS.Mobox3.DoubleCoin.wms; @@ -86,7 +87,7 @@ { returnS7Ok(TN_Task); }); - + break; case 5: WCSHelper.UpdateStatus(TN_Task, "寮�鍗歌揣");//浠诲姟鐘舵�鏀规垚寮�鍗歌揣 @@ -141,6 +142,18 @@ } }); + Task task19 = Task.Run(() => + { + if (TN_Task.S_END_AREA == Settings.Areas[1]) + { + SpecHelper.UpdateInventoryM_RuKu(TN_Task.S_CNTR_CODE); + } + else + { + LogHelper.Info($"鏇存柊WMS搴撳瓨鏄庣粏鐨勫叆搴撴椂闂磋烦杩囷紝TN_Task.S_END_AREA锛�{TN_Task.S_END_AREA }涓嶇瓑浜�Settings.Areas[1]锛歿Settings.Areas[1]}"); + } + }); + break; case 2: WCSHelper.End(TN_Task);//浠诲姟鐘舵�鏀规垚缁撴潫 @@ -149,58 +162,66 @@ case 7: Task task10 = Task.Run(() => { - if (TN_Task.S_TYPE == "婊℃墭涓嬬嚎鍏ュ簱") + if (TN_Task.S_END_AREA == Settings.Areas[1])//缁堢偣鏄弧鎵樼紦瀛樺簱鍖� { TaskProcess.OperateStatus(TN_Task, 7);//寮傚父澶勭悊 } - else if(TN_Task.S_TYPE == "婊℃墭鍑哄簱涓婄嚎") + else if(TN_Task.S_START_AREA == Settings.Areas[1])//璧风偣鏄弧鎵樼紦瀛樺簱鍖� { - WCSHelper.Fail(TN_Task);//浠诲姟鐘舵�鏀规垚閿欒 - LocationHelper.UnLockLoc(TN_Task.S_END_LOC); - if (!WCSHelper.CheckActionRecordExist(TN_Task.S_CODE, 4)) + if (!WCSHelper.CheckActionRecordExist(TN_Task.S_CODE, 4))//鏈彇璐у畬鎴� { - LocationHelper.UnLockLoc(TN_Task.S_START_LOC); - } - } - }); - - break; - case 8: - - Task task11 = Task.Run(() => - { - if (TN_Task.S_TYPE == "婊℃墭涓嬬嚎鍏ュ簱") - { - var res = NDCApi.CancelOrder(TN_Task.S_CODE); - if (res != null && (res.err_code ==50002 || res.err_code == 0)) - { - TaskProcess.OperateStatus(TN_Task, 7);//寮傚父澶勭悊 + WCSHelper.Fail(TN_Task);//浠诲姟鐘舵�鏀规垚閿欒 } else { - LogHelper.Info($"寮傚父鍜屽彇娑堟搷浣�璇锋眰缁撴灉澶辫触{res}"); + WCSHelper.End(TN_Task);//浠诲姟鐘舵�鏀规垚缁撴潫 + LocationHelper.BindingLoc(TN_Task.S_END_LOC, TN_Task.S_CNTR_CODE.Split(',').ToList());// 缁戝畾缁堢偣瀹瑰櫒璐т綅 } + LocationHelper.UnLockLoc(TN_Task.S_END_LOC); + LocationHelper.UnLockLoc(TN_Task.S_START_LOC);//瑙i攣璧风偣缁堢偣 } else { - var res = NDCApi.CancelOrder(TN_Task.S_CODE); - if (res != null && (res.err_code == 50002 || res.err_code == 0)) + if (!WCSHelper.CheckActionRecordExist(TN_Task.S_CODE, 4))//鏈彇璐у畬鎴� { WCSHelper.Fail(TN_Task);//浠诲姟鐘舵�鏀规垚閿欒 - LocationHelper.UnLockLoc(TN_Task.S_END_LOC); - if (!WCSHelper.CheckActionRecordExist(TN_Task.S_CODE, 4)) + + var db = new SqlHelper<object>().GetInstance(); + var cginfo = db.Queryable<TN_CG_Detail>().First(a => a.S_CNTR_CODE == TN_Task.S_CNTR_CODE); + if (cginfo != null) { - LocationHelper.UnLockLoc(TN_Task.S_START_LOC); + db.Deleteable<TN_InventoryM>().Where(it => it.S_ID == cginfo.S_ID || it.RFID == TN_Task.S_CNTR_CODE).ExecuteCommand(); + } + else + { + db.Deleteable<TN_InventoryM>().Where(it => it.RFID == TN_Task.S_CNTR_CODE).ExecuteCommand(); } } else { - LogHelper.Info($"寮傚父鍜屽彇娑堟搷浣�璇锋眰缁撴灉澶辫触{res}"); + WCSHelper.End(TN_Task);//浠诲姟鐘舵�鏀规垚缁撴潫 + LocationHelper.BindingLoc(TN_Task.S_END_LOC, TN_Task.S_CNTR_CODE.Split(',').ToList()); + } - + LocationHelper.UnLockLoc(TN_Task.S_END_LOC); + LocationHelper.UnLockLoc(TN_Task.S_START_LOC);//瑙i攣璧风偣缁堢偣 } }); break; + + case 8: + + var res = NDCApi.CancelOrder(TN_Task.S_CODE); + if (res != null && (res.err_code == 50002 || res.err_code == 0)) + { + LogHelper.Info($"寮傚父鍜屽彇娑堟搷浣�璇锋眰缁撴灉鎴愬姛{res}"); + } + else + { + LogHelper.Info($"寮傚父鍜屽彇娑堟搷浣�璇锋眰缁撴灉澶辫触{res}"); + } + + break; } WCSHelper.AddActionRecord(model.task_no, model.state, model.forklift_no, model.ext_data); //璋冪敤绗笁鏂规帴鍙o紙濡傛灉鏈夛級TaskProcess.ReportStatus锛屾坊鍔犱换鍔″姩浣滃叧绯昏〃 -- Gitblit v1.9.1