Administrator
21 小时以前 c135f22291c416fca9ffbfe1904a304835574d80
Admin.NET/WCS.Application/PLC/PLCService.cs
@@ -165,6 +165,8 @@
                break;
            case "1":
                {
                    Thread.Sleep(500);
                    sysCacheService.HashAddOrUpdate("AlarmInfo_Car", plcConn.PlcIP, -1);
                    var modPosTaskStatus = modDevice.listStation.FirstOrDefault(s => s.Text == "任务状态");
                    var (resultTaskStatus, valueTaskStatus) = plcConn.GetDBValue(modPosTaskStatus.PosType, modPosTaskStatus.PlcPos);
@@ -210,7 +212,19 @@
                            }
                            //获取路径2的任务 下发
                            carTaskNext = _db.Queryable<WcsCarTasks>().Where(m => m.IsDelete == false && m.TaskNo == carTask.TaskNo && m.CarNo == modDevice.PlcIdIP && m.Status <= TaskStatusEnum.Doing).OrderBy(m => m.CreateTime).First();
                            //carTaskNext = _db.Queryable<WcsCarTasks>().Where(m => m.IsDelete == false && m.TaskNo == carTask.TaskNo && m.CarNo == modDevice.PlcIdIP && m.CarTaskNo > valueTaskStr && m.Status <= TaskStatusEnum.Doing).OrderBy(m => m.CreateTime).First();
                            //carTaskNext = _db.Queryable<WcsCarTasks>().Where(m => m.IsDelete == false && m.TaskNo == carTask.TaskNo && m.CarNo == modDevice.PlcIdIP && m.Status <= TaskStatusEnum.Doing && m.CarTaskNo != valueTaskStr).OrderBy(m => m.CreateTime).First();
                            if (carTaskNext != null)
                            {
                                if (carTaskNext.CarTaskNo != null && carTaskNext.CarTaskNo < valueTaskStr)
                                {
                                    carTaskNext.Status = TaskStatusEnum.Complete;
                                    carTaskNext.UpdateTime = DateTime.Now;
                                    _db.Updateable(carTaskNext).ExecuteCommand();
                                    carTaskNext = null;
                                    Log.Error($"四向车第一条子任务没自动完成:{carTaskNext.TaskNo}");
                                }
                            }
                            //总任务下没有其他未执行小车的任务 变更总任务信息
                            if (carTaskNext == null && modFinshTask != null && modFinshTask.Status != TaskStatusEnum.Complete)
                            {