| | |
| | | } |
| | | |
| | | |
| | | 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(); |
| | |
| | | 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 != "已完成").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 != "已完成" && a.S_B_STATE != "未执行").OrderByDescending(b => b.T_CREATE).First(); |
| | | return task; |
| | | } |
| | | /// <summary> |
| | |
| | | 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 != "已完成").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 != "已完成" && a.S_B_STATE != "未执行").OrderByDescending(b => b.T_CREATE).First(); |
| | | return task; |
| | | } |
| | | |
| | |
| | | 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", |
| | |
| | | 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", |
| | |
| | | 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(); |
| | | //} |
| | | } |
| | | |
| | | |
| | |
| | | |
| | | } |
| | | |
| | | /// <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) |
| | | { |
| | |
| | | } |
| | | 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(); |
| | | } |
| | | } |
| | | } |