From 987b9256e007825401cef4fe18f250566eedf3d5 Mon Sep 17 00:00:00 2001 From: 海波 张 <2956280567@qq.com> Date: 星期五, 06 六月 2025 17:28:15 +0800 Subject: [PATCH] 改道优化 --- wms/TaskHelper.cs | 62 +++++++++++++++++++++++++------ 1 files changed, 50 insertions(+), 12 deletions(-) diff --git a/wms/TaskHelper.cs b/wms/TaskHelper.cs index 77bc78b..489a7b9 100644 --- a/wms/TaskHelper.cs +++ b/wms/TaskHelper.cs @@ -111,7 +111,7 @@ internal static WMSTask GetTaskByStartLoc(string loc) { var db = new SqlHelper<WMSTask>().GetInstance(); - var task = db.Queryable<WMSTask>().Where(a => a.S_START_LOC == loc && a.S_B_STATE != "瀹屾垚" && a.S_B_STATE != "鍙栨秷" && a.S_B_STATE != "澶辫触" && a.S_B_STATE != "宸插畬鎴� && a.S_B_STATE != "鏈墽琛�).OrderByDescending(b => b.T_CREATE).First(); + var task = db.Queryable<WMSTask>().Where(a => a.S_START_LOC == loc && a.S_B_STATE != "瀹屾垚" && a.S_B_STATE != "鍙栨秷" && a.S_B_STATE != "澶辫触" && a.S_B_STATE != "宸插畬鎴�).OrderByDescending(b => b.T_CREATE).First(); return task; } /// <summary> @@ -122,7 +122,7 @@ internal static WMSTask GetTaskByEndLoc(string loc) { var db = new SqlHelper<WMSTask>().GetInstance(); - var task = db.Queryable<WMSTask>().Where(a => a.S_END_LOC == loc && a.S_B_STATE != "瀹屾垚" && a.S_B_STATE != "鍙栨秷" && a.S_B_STATE != "澶辫触" && a.S_B_STATE != "宸插畬鎴� && a.S_B_STATE != "鏈墽琛�).OrderByDescending(b => b.T_CREATE).First(); + var task = db.Queryable<WMSTask>().Where(a => a.S_END_LOC == loc && a.S_B_STATE != "瀹屾垚" && a.S_B_STATE != "鍙栨秷" && a.S_B_STATE != "澶辫触" && a.S_B_STATE != "宸插畬鎴�).OrderByDescending(b => b.T_CREATE).First(); return task; } @@ -722,16 +722,16 @@ if (task.S_TYPE.Contains("鍑哄簱") && task.S_SCHEDULE_TYPE.Contains("wcs")) { LocationHelper.LockLoc(task.S_END_LOC, "鍑哄簱閿�, 2); } - - //if (task.S_TYPE.Contains("鍑哄簱")&&task.S_SCHEDULE_TYPE.Contains("agv") ) - //{ - // var location = db.Queryable<Location>().Where(a => a.S_CODE == task.S_END_LOC).First(); - // location.N_CURRENT_NUM = 0; - // db.Updateable(location).UpdateColumns(it => new { it.N_CURRENT_NUM}).ExecuteCommand(); - // db.Deleteable<Container>().Where(it => it.S_CODE == task.S_CNTR_CODE).ExecuteCommand(); - // db.Deleteable<LocCntrRel>().Where(it => it.S_CNTR_CODE == task.S_CNTR_CODE).ExecuteCommand(); - // db.Deleteable<CntrItemRel>().Where(it => it.S_CNTR_CODE == task.S_CNTR_CODE).ExecuteCommand(); - //} + + if (task.S_TYPE.Contains("鍑哄簱") && task.S_SCHEDULE_TYPE.Contains("agv")) + { + var location = db.Queryable<Location>().Where(a => a.S_CODE == task.S_END_LOC).First(); + location.N_CURRENT_NUM = 0; + db.Updateable(location).UpdateColumns(it => new { it.N_CURRENT_NUM }).ExecuteCommand(); + db.Deleteable<Container>().Where(it => it.S_CODE == task.S_CNTR_CODE).ExecuteCommand(); + db.Deleteable<LocCntrRel>().Where(it => it.S_CNTR_CODE == task.S_CNTR_CODE).ExecuteCommand(); + db.Deleteable<CntrItemRel>().Where(it => it.S_CNTR_CODE == task.S_CNTR_CODE).ExecuteCommand(); + } } @@ -861,6 +861,29 @@ } + + /// <summary> + /// 鏍规嵁浠诲姟鐘舵�鍜岃捣鐐瑰拰绫诲瀷鏌ユ壘浠诲姟 + /// </summary> + /// <param name="state"></param> + /// <returns></returns> + internal static WMSTask GetTaskByType(string start,string type,string state) + { + try + { + var db = new SqlHelper<object>().GetInstance(); + return db.Queryable<WMSTask>().Where(a => a.S_B_STATE.Trim() == state && a.S_TYPE.Contains(type) && a.S_START_LOC.Contains(start)).First(); + } + catch (Exception ex) + { + LogHelper.Error(ex.Message, ex); + return new WMSTask(); + } + + } + + + /// <summary> /// 鏍规嵁浣滀笟缂栫爜鍜岃澶囩被鍨嬭幏鍙栧崟涓换鍔� /// </summary> @@ -954,5 +977,20 @@ return db.Queryable<UnlimitedLoc>().ToList(); } + + + /// <summary> + /// 鑾峰彇鍏ュ簱浼樺厛绾ц〃 + /// </summary> + /// <returns></returns> + internal static List<InPri> GetInPri() + { + + var db = new SqlHelper<object>().GetInstance(); + + return db.Queryable<InPri>().Where(a=>a.Enable=="Y") .ToList(); + } + + } } -- Gitblit v1.9.1