| | |
| | | using HH.WCS.Mobox3.DoubleCoin.util; |
| | | using HH.WCS.Mobox3.DoubleCoin.models; |
| | | using HH.WCS.Mobox3.DoubleCoin.process; |
| | | using HH.WCS.Mobox3.DoubleCoin.util; |
| | | using Newtonsoft.Json; |
| | | using System; |
| | | using System.Collections.Generic; |
| | |
| | | var db = new SqlHelper<object>().GetInstance(); |
| | | return db.Queryable<TN_Task>().Where(a => a.N_B_STATE == 0 && (a.S_B_STATE == "等待" || a.S_B_STATE == "待推送")).ToList(); |
| | | } |
| | | |
| | | |
| | | public static void CancleTaskInfo(TN_Task tN_Task) |
| | | { |
| | | var HJ = Settings.Areas[1]; |
| | | if (tN_Task.S_END_AREA == HJ || tN_Task.S_TYPE.Contains("满托下线入库"))//终点是满托缓存库区 |
| | | { |
| | | LogHelper.Info($"取消任务: {tN_Task.S_CODE} 终点是满托缓存库区: {tN_Task.S_END_AREA}"); |
| | | |
| | | TaskProcess.OperateStatus(tN_Task, 7);//异常处理 |
| | | } |
| | | else if (tN_Task.S_START_AREA == HJ || tN_Task.S_TYPE.Contains("满托出库上线"))//起点是满托缓存库区 |
| | | { |
| | | LogHelper.Info($"取消任务: {tN_Task.S_CODE} 起点是满托缓存库区: {tN_Task.S_START_AREA}"); |
| | | |
| | | if (!WCSHelper.CheckActionRecordExist(tN_Task.S_CODE, 4))//未取货完成 |
| | | { |
| | | WCSHelper.Fail(tN_Task);//任务状态改成错误 |
| | | |
| | | LogHelper.Info($"取消任务: {tN_Task.S_CODE} 未取货完成,任务状态改成错误"); |
| | | } |
| | | else |
| | | { |
| | | WCSHelper.End(tN_Task);//任务状态改成结束 |
| | | LocationHelper.BindingLoc(tN_Task.S_END_LOC, tN_Task.S_CNTR_CODE.Split(',').ToList());// 绑定终点容器货位 |
| | | |
| | | LogHelper.Info($"取消任务: {tN_Task.S_CODE} 取货完成,任务状态改成结束,绑定终点容器货位"); |
| | | } |
| | | LocationHelper.UnLockLoc(tN_Task.S_END_LOC); |
| | | LocationHelper.UnLockLoc(tN_Task.S_START_LOC);//解锁起点终点 |
| | | } |
| | | else |
| | | { |
| | | LogHelper.Info($"取消任务: {tN_Task.S_CODE} 起点终点都不是满托缓存库区: {tN_Task.S_START_AREA} {tN_Task.S_END_AREA}"); |
| | | |
| | | if (!WCSHelper.CheckActionRecordExist(tN_Task.S_CODE, 4))//未取货完成 |
| | | { |
| | | WCSHelper.Fail(tN_Task);//任务状态改成错误 |
| | | |
| | | 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) |
| | | { |
| | | 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(); |
| | | } |
| | | LogHelper.Info($"取消任务: {tN_Task.S_CODE} 未取货完成,任务状态改成错误,删除改容器号的所有库存{tN_Task.S_CNTR_CODE}"); |
| | | } |
| | | else |
| | | { |
| | | WCSHelper.End(tN_Task);//任务状态改成结束 |
| | | LocationHelper.BindingLoc(tN_Task.S_END_LOC, tN_Task.S_CNTR_CODE.Split(',').ToList()); |
| | | |
| | | LogHelper.Info($"取消任务: {tN_Task.S_CODE} 未取货完成,任务状态改成结束,绑定终点容器货位"); |
| | | } |
| | | LocationHelper.UnLockLoc(tN_Task.S_END_LOC); |
| | | LocationHelper.UnLockLoc(tN_Task.S_START_LOC);//解锁起点终点 |
| | | } |
| | | } |
| | | } |
| | | |
| | | public class CreateTasks |