| | |
| | | UpdateShuttleCar(dt_Task.ShuttleCarCode, dt_Task.CurrentAddress); |
| | | _taskService.AddTask_Hty(dt_Task, TaskOperateTypeEnum.AutoComplete); |
| | | } |
| | | dt_Task = GetTask(CarChargingTaskEnum.SC_CarFinish.ObjToInt(), TaskOtherTypeEnum.RelocationCarCharging.ObjToInt());//移车å
çµä»»å¡ |
| | | dt_Task = GetTask(CarChargingTaskEnum.CarChargingSC_CarFinish.ObjToInt(), TaskOtherTypeEnum.RelocationCarCharging.ObjToInt());//移车å
çµä»»å¡ |
| | | if (dt_Task != null) |
| | | { |
| | | UpdateShuttleCar(dt_Task.ShuttleCarCode, dt_Task.CurrentAddress); |
| | |
| | | { |
| | | |
| | | #region è·åæ°å»ºç§»è½¦å
çµä»»å¡ |
| | | Dt_Task dt_Task = GetTask((int)CarChargingTaskEnum.CarNew, (int)TaskOtherTypeEnum.RelocationCarCharging); |
| | | Dt_Task dt_Task = GetTask((int)CarChargingTaskEnum.CarChargingNew, (int)TaskOtherTypeEnum.RelocationCarCharging); |
| | | if (dt_Task != null && dt_Task.ShuttleCarCode == shuttleCar.DeviceCode) |
| | | { |
| | | if (!string.IsNullOrEmpty(dt_Task.SourceAddress) && !string.IsNullOrEmpty(dt_Task.TargetAddress) && !string.IsNullOrEmpty(dt_Task.ShuttleCarCode)) |
| | |
| | | if (command.Status == (short)ShuttleCarStatus.Standby && command.TaskTypeComplete == (short)ShuttleCarTaskComplete.Standby && command.Err_Status == (short)ShuttleCarErr.Normal) |
| | | { |
| | | #region 夿å½åç©¿æ¢è½¦æ¯å¦åå¨ä»»å¡ |
| | | Dt_Task? _Task = _taskRepository.QueryFirst(x => |
| | | x.SourceAddress == _ShuttleCar.ShuttleCarPosition || |
| | | x.TargetAddress == _ShuttleCar.ShuttleCarPosition && |
| | | (!_taskService.TaskOutboundTypes.Contains(x.TaskType))); |
| | | if (_Task != null) return (ok, _ShuttleCar); |
| | | Dt_Task? _Task = _taskRepository.QueryFirst(x => x.SourceAddress == _ShuttleCar.ShuttleCarPosition); |
| | | if (_Task != null) |
| | | { |
| | | if (_Task.TaskState == TaskOutStatusEnum.OutNew.ObjToInt() || |
| | | _Task.TaskState == TaskRelocationStatusEnum.RelocationNew.ObjToInt() || |
| | | _Task.TaskState == TaskCarStatusEnum.CarNew.ObjToInt() || |
| | | _Task.TaskState == CarChargingTaskEnum.CarChargingNew.ObjToInt()) |
| | | { |
| | | _Task.ShuttleCarCode = shuttleCar.DeviceCode; |
| | | SendTask(_Task); |
| | | return (ok, _ShuttleCar); |
| | | } |
| | | } |
| | | _Task = _taskRepository.QueryFirst(x => x.TargetAddress == _ShuttleCar.ShuttleCarPosition); |
| | | if (_Task != null) |
| | | { |
| | | if (_Task.TaskState == TaskInStatusEnum.SC_InFinish.ObjToInt() || |
| | | _Task.TaskState == TaskRelocationStatusEnum.SC_RelocationFinish.ObjToInt() || |
| | | _Task.TaskState == CarChargingTaskEnum.CarChargingSC_CarFinish.ObjToInt()) |
| | | { |
| | | _Task.ShuttleCarCode = shuttleCar.DeviceCode; |
| | | SendTask(_Task); |
| | | return (ok, _ShuttleCar); |
| | | } |
| | | } |
| | | _Task = _taskRepository.QueryData(x => x.ShuttleCarCode == _ShuttleCar.ShuttleCarCode && _taskService.TaskOutboundTypes.Contains(x.TaskType)).OrderByDescending(x => x.CreateDate).FirstOrDefault(); |
| | | if (_Task != null) |
| | | { |
| | |
| | | } |
| | | else if (task.TaskType == (int)TaskOtherTypeEnum.RelocationCarCharging) |
| | | { |
| | | shuttleCarTaskCommand.TaskType = task.TaskState == CarChargingTaskEnum.CarNew.ObjToInt() ? |
| | | shuttleCarTaskCommand.TaskType = task.TaskState == CarChargingTaskEnum.CarChargingNew.ObjToInt() ? |
| | | (short)GetCarTaskType(task.TaskType, shuttleCarTaskCommand.Direction) : |
| | | (short)GetCarTaskType(ShuttleCarTaskType.Charging.ToString()); |
| | | } |
| | |
| | | { |
| | | if (shuttleCar.SendCommand(shuttleCarTaskCommand, shuttleCar.DeviceCode)) |
| | | { |
| | | if (!string.IsNullOrEmpty(task.Remark) && task.TaskState == CarChargingTaskEnum.CarNew.ObjToInt()) |
| | | if (!string.IsNullOrEmpty(task.Remark) && task.TaskState == CarChargingTaskEnum.CarChargingNew.ObjToInt()) |
| | | task.Remark = task.Remark + "å·²ä¸å"; |
| | | task.TaskState = GetTaskState(task.TaskType, task.TaskState); |
| | | _taskService.UpdateData(task); |
| | |
| | | state = (int)TaskCarStatusEnum.ShuttleCar_Executing; |
| | | break; |
| | | case (int)TaskOtherTypeEnum.RelocationCarCharging: |
| | | state = state < (int)CarChargingTaskEnum.SC_CarFinish ? |
| | | (int)CarChargingTaskEnum.ShuttleCar_Executing : |
| | | (int)CarChargingTaskEnum.ShuttleCar_Charging; |
| | | state = state < (int)CarChargingTaskEnum.CarChargingSC_CarFinish ? |
| | | (int)CarChargingTaskEnum.CarCharging_Executing : |
| | | (int)CarChargingTaskEnum.CarCharging_Charging; |
| | | break; |
| | | default: |
| | | break; |