public async Task <ActionResult <IEnumerable <SituacaoDroneDTO> > > GetDrone() { var drones = _unitOfWork.Drones.GetAll(); IList <SituacaoDroneDTO> situacaoDrones = new List <SituacaoDroneDTO>(); foreach (var drone in drones) { SituacaoDroneDTO situacaoDrone = new SituacaoDroneDTO(); situacaoDrone.Drone = drone; DroneItinerario droneItinerario = _unitOfWork.DroneItinerario.GetAll().Where(i => i.DroneId == drone.Id).FirstOrDefault(); if (droneItinerario == null) { situacaoDrone.StatusDrone = EnumStatusDrone.Disponivel.ToString(); } else { situacaoDrone.StatusDrone = droneItinerario.StatusDrone.ToString(); } var pedidos = _unitOfWork.Pedidos.GetAll().Where(p => p.Drone != null && p.Status != EnumStatusPedido.Entregue && p.Drone.Id == drone.Id).ToList(); situacaoDrone.Pedidos = pedidos; situacaoDrones.Add(situacaoDrone); } return(Ok(situacaoDrones)); }
public async Task <ActionResult <IEnumerable <SituacaoDroneDTO> > > GetDrone() { var drones = await _droneRepository.GetAll(); IList <SituacaoDroneDTO> situacaoDrones = new List <SituacaoDroneDTO>(); foreach (var drone in drones) { SituacaoDroneDTO situacaoDrone = new SituacaoDroneDTO(); situacaoDrone.Drone = drone; var droneItinerario = _droneItinerarioRepository.GetAll().Result.SingleOrDefault(x => x.DroneId == drone.Id); if (droneItinerario == null) { situacaoDrone.StatusDrone = EnumStatusDrone.Disponivel.ToString(); } else { situacaoDrone.StatusDrone = droneItinerario.StatusDrone.ToString(); } var pedidos = await _pedidoRepository.GetAll(); situacaoDrone.Pedidos = pedidos.Where(p => p.Drone != null && p.Status != EnumStatusPedido.Entregue && p.Drone.Id == drone.Id).ToList();; situacaoDrones.Add(situacaoDrone); } return(Ok(situacaoDrones)); }