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 | 138 ++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 133 insertions(+), 5 deletions(-) diff --git a/wms/TaskHelper.cs b/wms/TaskHelper.cs index 5dddfea..489a7b9 100644 --- a/wms/TaskHelper.cs +++ b/wms/TaskHelper.cs @@ -58,6 +58,13 @@ } + internal static WmsWork GetWmsWork(string no) { + var db = new SqlHelper<WmsWork>().GetInstance(); + return db.Queryable<WmsWork>().Where(it => it.S_CODE == no).First(); + } + + + internal static WMSTask GetTaskByCntrCode(string cntrCode) { var db = new SqlHelper<WMSTask>().GetInstance(); @@ -243,6 +250,8 @@ { var tasks = new List<Task>(); + + // 浠诲姟1 var task1 = new WMSTask() { @@ -278,6 +287,10 @@ N_PRIORITY = operation.N_PRIORITY, //宸ヨ绫诲瀷 TOOLSTYPE = operation.TOOLSTYPE, + + + + }; try @@ -546,6 +559,7 @@ var db = new SqlHelper<WmsTaskAction>().GetInstance(); var action = new WmsTaskAction() { S_ACTION = state.ToString(), + N_ACTION_CODE = state, S_TASK_CODE = no, S_EQ_CODE = forkliftNo, S_EQ_TYPE = "agv", @@ -590,6 +604,7 @@ var action = new WmsTaskAction() { S_ACTION = state.ToString(), + N_ACTION_CODE = int.Parse(state), S_TASK_CODE = no, S_EQ_CODE = forkliftNo, S_EQ_TYPE = "wcs", @@ -707,12 +722,12 @@ 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") ) + + 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.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(); @@ -847,6 +862,79 @@ } + /// <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> + /// <param name="state"></param> + /// <returns></returns> + internal static WMSTask GetTaskByWork(string eq, string opCode) + { + try + { + var db = new SqlHelper<object>().GetInstance(); + return db.Queryable<WMSTask>().Where(a => a.S_SCHEDULE_TYPE.Contains(eq) && a.S_OP_CODE.Contains(opCode)).First(); + } + catch (Exception ex) + { + LogHelper.Error(ex.Message, ex); + return new WMSTask(); + } + + } + + /// <summary> + /// 杩斿洖褰撳墠鎺ラ┏浣嶆墽琛屼腑浠诲姟鏁伴噺 + /// </summary> + internal static int GetConnectionTask(string Connection) + { + var db = new SqlHelper<object>().GetInstance(); + + + var ConnectionList = 0; + ConnectionList = db.Queryable<WMSTask>().Where(a => a.S_END_LOC.Contains(Connection) && a.S_TYPE.Contains("鍑哄簱") && a.S_B_STATE != "瀹屾垚" && a.S_B_STATE != "鍙栨秷" && a.S_B_STATE != "鏈墽琛�).ToList().Count(); + + return ConnectionList; + } + + + //internal static bool CreateAgvState(AgvState agvState) + //{ + // try + // { + // var db = new SqlHelper<object>().GetInstance(); + + // return db.Insertable<AgvState>(agvState).ExecuteCommand() > 0; + // } + // catch (Exception ex) + // { + // LogHelper.Info($"娣诲姞Agv鍔ㄤ綔缂撳瓨寮傚父" + ex.Message, "NDC"); + // throw; + // } + //} + + internal static bool CreateMesKtTask(MesKtTask cntr) { try @@ -857,12 +945,52 @@ } catch (Exception ex) { - Console.WriteLine(ex.Message); LogHelper.Info($"娣诲姞Mes绌烘墭缂撳瓨寮傚父" + ex.Message, "Mes浠诲姟涓嬪彂"); throw; } } - + internal static MesKtTask GetMesKtTask(string end) + { + + var db = new SqlHelper<object>().GetInstance(); + + return db.Queryable<MesKtTask>().Where(a => a.Location_To==end && a.Status=="N").First(); + } + + internal static bool ChangeMesKtTask(MesKtTask kt) + { + + var db = new SqlHelper<object>().GetInstance(); + kt.Status = "Y"; + return db.Updateable(kt).UpdateColumns(it => new { + it.Status + }).ExecuteCommand()>0; + + + } + + internal static List<UnlimitedLoc> GetMesKtLoc() + { + + var db = new SqlHelper<object>().GetInstance(); + + 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