| | |
| | | { |
| | | try |
| | | { |
| | | #region 浠诲姟涓嬪彂 |
| | | List<Dt_Task> UpnewTasks = new List<Dt_Task>(); |
| | | var newTasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskInStatusEnum.InNew).ToList().OrderBy(x => x.Grade).ThenBy(x => x.CreateDate).ToList(); |
| | | foreach (var agvTaskDTO in GetAGVTaskDTOs(newTasks)) |
| | | { |
| | | var ResultData = HttpHelper.PostAsync(AGVInterfaceAddress.taskSent, agvTaskDTO.ToJson(), headers: new Dictionary<string, string>()); |
| | | if (ResultData.Result == null) throw new Exception($"AGV浠诲姟涓嬪彂鎺ュ彛璇锋眰瓒呮椂"); |
| | | var content = JsonConvert.DeserializeObject<AGVReturnInfo>(ResultData.Result); |
| | | if (content.code == "20000") |
| | | { |
| | | var task = newTasks.Where(x => x.TaskNum == agvTaskDTO.outID.ObjToInt()).First(); |
| | | task.TaskState = TaskInStatusEnum.AGV_InSend.ObjToInt(); |
| | | UpnewTasks.Add(task); |
| | | } |
| | | else |
| | | { |
| | | var task = newTasks.Where(x => x.TaskNum == agvTaskDTO.outID.ObjToInt()).First(); |
| | | task.ExceptionMessage = content.message; |
| | | UpnewTasks.Add(task); |
| | | } |
| | | Thread.Sleep(1000); |
| | | } |
| | | if (UpnewTasks.Count > 0) _taskService.Db.Updateable(UpnewTasks).ExecuteCommand(); |
| | | #endregion |
| | | |
| | | #region 浠诲姟鏇存柊 |
| | | var Tasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState > (int)TaskInStatusEnum.InNew && x.TaskState < (int)TaskInStatusEnum.AGV_InFinish).ToList().OrderBy(x => x.Grade).ThenBy(x => x.CreateDate).ToList(); |
| | |
| | | } |
| | | _taskService.Db.Updateable(Tasks).ExecuteCommand(); |
| | | #endregion |
| | | |
| | | #region 浠诲姟涓嬪彂 |
| | | List<Dt_Task> UpnewTasks = new List<Dt_Task>(); |
| | | var newTasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskInStatusEnum.InNew).ToList().OrderBy(x => x.Grade).ThenBy(x => x.CreateDate).ToList(); |
| | | foreach (var agvTaskDTO in GetAGVTaskDTOs(newTasks)) |
| | | { |
| | | var ResultData = HttpHelper.PostAsync(AGVInterfaceAddress.taskSent, agvTaskDTO.ToJson(), headers: new Dictionary<string, string>()); |
| | | if (ResultData.Result == null) throw new Exception($"AGV浠诲姟涓嬪彂鎺ュ彛璇锋眰瓒呮椂"); |
| | | var content = JsonConvert.DeserializeObject<AGVReturnInfo>(ResultData.Result); |
| | | if (content.code == "20000") |
| | | { |
| | | var task = newTasks.Where(x => x.TaskNum == agvTaskDTO.outID.ObjToInt()).First(); |
| | | task.TaskState = TaskInStatusEnum.AGV_InSend.ObjToInt(); |
| | | UpnewTasks.Add(task); |
| | | } |
| | | else |
| | | { |
| | | var task = newTasks.Where(x => x.TaskNum == agvTaskDTO.outID.ObjToInt()).First(); |
| | | task.ExceptionMessage = content.message; |
| | | UpnewTasks.Add(task); |
| | | } |
| | | Thread.Sleep(1000); |
| | | } |
| | | if (UpnewTasks.Count > 0) _taskService.Db.Updateable(UpnewTasks).ExecuteCommand(); |
| | | #endregion |
| | | } |
| | | catch (Exception ex) |
| | | { |