public void EditFlight(Guid flightId, string departureAirportInternalName, string arrivalAirportInternalName, double aircraftFuelConsumptionLitersPerKm, double aircraftFuelConsumptionTakeoffEffort) { var dbFlight = DbFlightsList.SingleOrDefault(f => f.Id == flightId); var departureDbAirport = DbAirportsList.SingleOrDefault(a => a.InternalName == departureAirportInternalName); var arrivalDbAirport = DbAirportsList.SingleOrDefault(a => a.InternalName == arrivalAirportInternalName); if (dbFlight == null) { //Log Console.WriteLine($"Flight \"{flightId}\" not present in database"); throw new InvalidOperationException($"Flight \"{flightId}\" not present in database"); } if (departureDbAirport == null) { //Log Console.WriteLine($"Departure airport \"{departureAirportInternalName}\" not present in database"); throw new InvalidOperationException($"Departure airport \"{arrivalAirportInternalName}\" not present in database"); } if (arrivalDbAirport == null) { //Log Console.WriteLine($"Departure airport \"{arrivalAirportInternalName}\" not present in database"); throw new InvalidOperationException($"Departure airport \"{arrivalAirportInternalName}\" not present in database"); } try { dbFlight.Departure = departureDbAirport; dbFlight.Destination = arrivalDbAirport; dbFlight.AircraftFuelConsumptionLitersPerKm = aircraftFuelConsumptionLitersPerKm; dbFlight.AircraftFuelConsumptionTakeoffEffort = aircraftFuelConsumptionTakeoffEffort; SaveFlights(); } catch (Exception ex) { //Log it Console.WriteLine(ex); throw; } }
public void CreateNewFlight(string departureAirportInternalName, string arrivalAirportInternalName, double aircraftFuelConsumptionLitersPerKm, double aircraftFuelConsumptionTakeoffEffort) { var departureDbAirport = DbAirportsList.SingleOrDefault(a => a.InternalName == departureAirportInternalName); var arrivalDbAirport = DbAirportsList.SingleOrDefault(a => a.InternalName == arrivalAirportInternalName); if (departureDbAirport == null) { //Log Console.WriteLine($"Departure airport \"{departureAirportInternalName}\" not present in database"); throw new InvalidOperationException($"Departure airport \"{departureAirportInternalName}\" not present in database"); } if (arrivalDbAirport == null) { //Log Console.WriteLine($"Departure airport \"{arrivalAirportInternalName}\" not present in database"); throw new InvalidOperationException($"Departure airport \"{arrivalAirportInternalName}\" not present in database"); } try { DbFlightsList .Add(new DbFlight( Guid.NewGuid(), departureDbAirport, arrivalDbAirport, aircraftFuelConsumptionLitersPerKm, aircraftFuelConsumptionTakeoffEffort)); SaveFlights(); } catch (Exception ex) { //Log it Console.WriteLine(ex); throw ex; } }