public async Task Add(Flight flight)
        {
            var departureAirport = await _airportRepository.GetById(flight.DepartureAirport.Id);

            var arriveAirport = await _airportRepository.GetById(flight.ArriveAirport.Id);

            var distance = GeolocationUtils.CalculateDistanceByCoordinates(
                departureAirport.Longitude,
                departureAirport.Latitude,
                arriveAirport.Longitude,
                arriveAirport.Latitude
                );

            var hours = distance / 840;

            flight.ArriveDate = flight.DepartureDate.AddHours(hours);
            flight.FlightTime = hours;

            var createdFlight = await _flightRepository.Add(flight);

            _outputPort.Created(createdFlight);
        }