From 9db9cd04a1a9971220438ccb856a6896b4a399ac Mon Sep 17 00:00:00 2001 From: pulg <plg@Haninfo> Date: 星期二, 01 七月 2025 14:32:11 +0800 Subject: [PATCH] 1 --- HH.WCS.QingXiNongfu/dispatch/NDC.cs | 22 +++++++++++ HH.WCS.QingXiNongfu/wms/TaskHelper.cs | 74 +++++++++++++++++++++--------------- HH.WCS.QingXiNongfu/core/Monitor.cs | 12 +++++ HH.WCS.QingXiNongfu/process/TaskProcess.cs | 2 4 files changed, 77 insertions(+), 33 deletions(-) diff --git a/HH.WCS.QingXiNongfu/core/Monitor.cs b/HH.WCS.QingXiNongfu/core/Monitor.cs index dd45dcf..daf39e8 100644 --- a/HH.WCS.QingXiNongfu/core/Monitor.cs +++ b/HH.WCS.QingXiNongfu/core/Monitor.cs @@ -1135,6 +1135,17 @@ continue; } } + if (CDlist.Contains(EdnRarea)) + { + var ls = LocationHelper.GetList<Location>(x => x.S_AREA_CODE == EdnRarea && x.S_LOCK_STATE == "鍏ュ簱閿�); + //var ls = LocationHelper.GetList<Location>(x => x.S_AREA_CODE == EdnRarea && (x.S_LOCK_STATE == "鍏ュ簱閿�)); + if (ls.Count() > 2) + { + LogHelper.Info($"{EdnRarea}浠诲姟鏁�绠″埗3"); + continue; + } + } + //else if (CDlist.Contains(EdnRarea)) //{ // var ls = LocationHelper.GetList<Location>(x => x.S_AREA_CODE == EdnRarea && (x.S_LOCK_STATE == "鍏ュ簱閿�)).ToList(); @@ -1487,7 +1498,6 @@ if (tklist.Count() > 0) { var tk = tklist.FirstOrDefault(); - var loc = LocationHelper.GetLoc(plc.location[0]); if (loc.N_CURRENT_NUM > 0 && loc.S_LOCK_STATE == "鏃�) { diff --git a/HH.WCS.QingXiNongfu/dispatch/NDC.cs b/HH.WCS.QingXiNongfu/dispatch/NDC.cs index 77eca17..e85ea83 100644 --- a/HH.WCS.QingXiNongfu/dispatch/NDC.cs +++ b/HH.WCS.QingXiNongfu/dispatch/NDC.cs @@ -82,6 +82,28 @@ return false; } } + + /// <summary> + /// 淇敼浼樺厛绾�+ /// </summary> + /// <param name="taskNo">浠诲姟鍙�/param> + /// <param name="paramNo">浼樺厛绾�/param> + /// <returns></returns> + public static bool ChangeParamPri(string taskNo, int paramNo = 0) + { + bool bResult = false; + var dic = new Dictionary<string, string>(); + dic.Add("No", taskNo); + if (paramNo >= 0) + { + dic.Add("Pri", paramNo.ToString()); + } + dic.Add("IKey", ""); + var result = ChangeOrder(dic); + if (result.Res.ErrCode == 0) { bResult = true; } + return bResult; + } + public static AGVResult AddNewOrderNew(int ts, int pri, string taskNo, Dictionary<string, string> param) { //< Req >< Order TS = '1' Pri = '1' No = 'TN2302020001' Ext1 = '' Ext2 = '' N_CNTR_COUNT = '' >< Param Name = 'From' Value = '2' />< Param Name = 'To' Value = '1' /></ Order ></ Req > diff --git a/HH.WCS.QingXiNongfu/process/TaskProcess.cs b/HH.WCS.QingXiNongfu/process/TaskProcess.cs index 9636f3c..48f649f 100644 --- a/HH.WCS.QingXiNongfu/process/TaskProcess.cs +++ b/HH.WCS.QingXiNongfu/process/TaskProcess.cs @@ -1114,9 +1114,9 @@ } if (state == 9) { + CacheBitUpdate(mst, load: true); var g = LocationHelper.UnLockLoc(mst.S_END_LOC.Trim()); var T = LocationHelper.UnLockLoc(mst.S_START_LOC.Trim()); - CacheBitUpdate(mst, load: true); } return r; } diff --git a/HH.WCS.QingXiNongfu/wms/TaskHelper.cs b/HH.WCS.QingXiNongfu/wms/TaskHelper.cs index c314fd7..fb28716 100644 --- a/HH.WCS.QingXiNongfu/wms/TaskHelper.cs +++ b/HH.WCS.QingXiNongfu/wms/TaskHelper.cs @@ -1,4 +1,4 @@ -锘縰sing HH.WCS.QingXigongchang.process; +锘縰sing HH.WCS.QingXigongchang.dispatch; using HH.WCS.QingXigongchang.util; using Newtonsoft.Json; using SqlSugar; @@ -239,43 +239,55 @@ } internal static void End(WMSTask task) { - var db = new SqlHelper<WMSTask>().GetInstance(); + var db = new SqlHelper<object>().GetInstance(); - - //plg 2025骞�鏈�3鏃�10:42:24 - if (task.S_END_LAREA == "YWLWJJB" && task.S_START_LAREA != "YWLRGDD" && !string.IsNullOrEmpty(task.S_TWO_END_LOC)) + if (task.S_END_LAREA == "YWLYLTKQ" || task.S_END_LAREA == "YWLTKKTQ") { - var model = db.Queryable<Location>().Where(a => a.S_LOC_CODE == task.S_TWO_END_LOC).First(); - if (model != null) + //鏌ヨ鍑哄簱閿乊WLWJJB + var ls = LocationHelper.GetList<Location>(x => x.S_AREA_CODE == "YWLWJJB" && x.S_LOCK_STATE == "鍑哄簱閿�); + if (ls.Any()) { - //鍏堣В閿佺粓鐐�鍦ㄩ攣瀹�- db.Ado.BeginTran(); - try + var tas = db.Queryable<WMSTask>().Where(a => a.S_START_LOC == ls.First().S_LOC_CODE).ToList().FirstOrDefault(); + if (tas.S_B_STATE == "宸叉帹閫�) { - model.S_LOCK_STATE = "鏃�; - var res = db.Updateable(model).UpdateColumns(it => new { it.S_LOCK_STATE }).ExecuteCommand() > 0; - LogHelper.Info(task.S_TWO_END_LOC + "LockLoc:閿佺粨鏋� + res); - db.Ado.CommitTran(); + NDC.ChangeParamPri(tas.S_TASK_NO, 70); } - catch (Exception ex) - { - db.Ado.RollbackTran(); - LogHelper.Info("CreateTask 澶辫触 " + ex.Message); - } - - LogHelper.Info(task.S_TWO_END_LOC + "浜屾浠诲姟 寮�銆�"); - var b = TaskProcess.CreateTransport(task.S_SRC_NO, task.S_END_LOC, task.S_TWO_END_LOC, "鍘熺墿鏂欐惉杩�绾哥", task.S_CNTRS.Split(',').ToList(), task.N_START_LAYER, 1, task.N_CNTR_COUNT, task.N_PRIORITY); - //if (b) - //{ - // if (task != null) - // { - // task.S_B_STATE = "瀹屾垚"; - // task.T_END_TIME = DateTime.Now; - // db.Updateable(task).UpdateColumns(it => new { it.S_B_STATE, it.T_END_TIME }).ExecuteCommand(); - // } - //} } } + ////plg 2025骞�鏈�3鏃�10:42:24 + //if (task.S_END_LAREA == "YWLWJJB" && task.S_START_LAREA != "YWLRGDD" && !string.IsNullOrEmpty(task.S_TWO_END_LOC)) + //{ + // var model = db.Queryable<Location>().Where(a => a.S_LOC_CODE == task.S_TWO_END_LOC).First(); + // if (model != null) + // { + // //鍏堣В閿佺粓鐐�鍦ㄩ攣瀹�+ // db.Ado.BeginTran(); + // try + // { + // model.S_LOCK_STATE = "鏃�; + // var res = db.Updateable(model).UpdateColumns(it => new { it.S_LOCK_STATE }).ExecuteCommand() > 0; + // LogHelper.Info(task.S_TWO_END_LOC + "LockLoc:閿佺粨鏋� + res); + // db.Ado.CommitTran(); + // } + // catch (Exception ex) + // { + // db.Ado.RollbackTran(); + // LogHelper.Info("CreateTask 澶辫触 " + ex.Message); + // } + + // LogHelper.Info(task.S_TWO_END_LOC + "浜屾浠诲姟 寮�銆�"); + // var b = TaskProcess.CreateTransport(task.S_SRC_NO, task.S_END_LOC, task.S_TWO_END_LOC, "鍘熺墿鏂欐惉杩�绾哥", task.S_CNTRS.Split(',').ToList(), task.N_START_LAYER, 1, task.N_CNTR_COUNT, task.N_PRIORITY); + // //if (b) + // //{ + // // if (task != null) + // // { + // // task.S_B_STATE = "瀹屾垚"; + // // task.T_END_TIME = DateTime.Now; + // // db.Updateable(task).UpdateColumns(it => new { it.S_B_STATE, it.T_END_TIME }).ExecuteCommand(); + // // } + // //} + // } + //} if (task != null) { task.S_B_STATE = "瀹屾垚"; -- Gitblit v1.9.1