diff --git a/src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs b/src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs index 509c126..e7dbbf1 100644 --- a/src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs +++ b/src/Khd.Core.Wcs/Wcs/FiveFloorCTU.cs @@ -10,6 +10,7 @@ using Masuit.Tools; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Newtonsoft.Json; +using System.Diagnostics; using Z.EntityFramework.Plus; namespace Khd.Core.Wcs.Wcs @@ -151,6 +152,13 @@ namespace Khd.Core.Wcs.Wcs if (task.taskType == StaticTaskType.FiveAccessoryOut) { dbContext.WcsTask.Where(t => t.objid == task.objid).Delete(); + #region 如果已经开始入库,还有出库任务,删除出库任务 + List outTasks = dbContext.WcsTask.Where(t => t.taskType == StaticTaskType.FiveAccessoryOut && t.taskStatus == 6).ToList(); + if(outTasks!=null && outTasks.Count > 0) + { + dbContext.RemoveRange(outTasks); + } + #endregion //根据rfid找到库位 //生成入库任务 var wmsBaseLocation = dbContext.WmsBaseLocation.FirstOrDefault(t => t.containerCode == rfid); @@ -398,13 +406,7 @@ namespace Khd.Core.Wcs.Wcs Console.WriteLine(DateTime.Now + ":五楼CTU线程开始任务" + item.currPointNo + "," + item.endPointNo); item.taskCode = reponseMessage.data; item.taskStatus = 1; - #region 如果已经开始入库,还有出库任务,删除出库任务 - var outTaskList = taskList.Where(x => x.taskType == 30).ToList(); - if (outTaskList.Count > 0) - { - dbContext.Remove(outTaskList); - } - #endregion + dbContext.Update(item); dbContext.WcsTaskLog.Where(t => t.objid == item.objid).Update(t => new WcsTaskLog() { taskStatus = 1 }); dbContext.SaveChanges(); @@ -460,6 +462,7 @@ namespace Khd.Core.Wcs.Wcs ExecuteInTask(baseEquip); } } + dbContext.SaveChanges(); } else diff --git a/src/Khd.Core.Wcs/Wcs/SystemTimer.cs b/src/Khd.Core.Wcs/Wcs/SystemTimer.cs index b499983..80410cc 100644 --- a/src/Khd.Core.Wcs/Wcs/SystemTimer.cs +++ b/src/Khd.Core.Wcs/Wcs/SystemTimer.cs @@ -563,7 +563,7 @@ namespace Khd.Core.Wcs.Wcs CtuCmdLogic(); UpdatePlcPointValue(); BasePlcPointUpdateLogic(); - Thread.Sleep(3000); + Thread.Sleep(500); } }