in RobotOrchestrator.OrderManager/OrderManager.cs [170:198]
private async Task<Order> DispatchOrderAssignmentAsync(OrderAssignment assignment)
{
var order = assignment.Order;
var robot = assignment.Robot;
var job = new Job()
{
RobotId = robot.DeviceId,
OrderId = order.Id,
StartPosition = order.StartPosition,
EndPosition = order.EndPosition
};
var success = await dispatcherClient.SendJobAsync(job);
if (!success)
{
order.Status = OrderStatus.Failed;
job.Status = JobStatus.Failed;
}
else
{
order.Status = OrderStatus.InProgress;
job.Status = JobStatus.Queued;
}
order.Jobs.Add(job);
return order;
}