public BookingConfirmationForm(string _cabinType, int _passengerNum, FlightDetails _outboundFlight, FlightDetails _returnFlight = null) { InitializeComponent(); outboundFlight = _outboundFlight; returnFlight = _returnFlight; cabinType = _cabinType; passengerNum = _passengerNum; }
private void btnBook_Click(object sender, EventArgs e) { BookingConfirmationForm booking; FlightDetails _o; FlightDetails _r; var outboundCurrent = dgvOutbound.CurrentRow; _o = new FlightDetails { From = outboundCurrent.Cells["From"].Value.ToString(), To = outboundCurrent.Cells["To"].Value.ToString(), Date = DateTime.ParseExact(outboundCurrent.Cells["Date"].Value.ToString(), @"dd-MMM-yy hh\:mm\:ss", null).Date, Time = TimeSpan.ParseExact(outboundCurrent.Cells["Time"].Value.ToString(), @"hh\:mm\:ss", null), CabinPrice = int.Parse(outboundCurrent.Cells["CabinPrice"].Value.ToString()), FlightNumber = outboundCurrent.Cells["FlightNumber"].Value.ToString(), NumberOfStops = int.Parse(outboundCurrent.Cells["NumberOfStops"].Value.ToString()) }; if (rbReturn.Checked) { var returnCurrent = dgvReturn.CurrentRow; _r = new FlightDetails { From = returnCurrent.Cells["From"].Value.ToString(), To = returnCurrent.Cells["To"].Value.ToString(), Date = DateTime.ParseExact(returnCurrent.Cells["Date"].Value.ToString(), @"dd-MMM-yy hh\:mm\:ss", null).Date, Time = TimeSpan.ParseExact(returnCurrent.Cells["Time"].Value.ToString(), @"hh\:mm\:ss", null), CabinPrice = int.Parse(returnCurrent.Cells["CabinPrice"].Value.ToString()), FlightNumber = returnCurrent.Cells["FlightNumber"].Value.ToString(), NumberOfStops = int.Parse(returnCurrent.Cells["NumberOfStops"].Value.ToString()) }; booking = new BookingConfirmationForm(cbCabin.Text, (int)nudPassenger.Value, _o, _r); } else { booking = new BookingConfirmationForm(cbCabin.Text, (int)nudPassenger.Value, _o); } booking.Owner = this; booking.ShowDialog(); }
private void btnApply_Click(object sender, EventArgs e) { if (rbOne.Checked) { outboundDate = dtpOutbound.Value.Date; qOutbound = flight.GetFlightDetails(cbFrom.Text, cbTo.Text, cbCabin.Text, outboundDate); if (qOutbound.Count > 0) { if (qOutbound.Select(x => x.FlightNumber).Distinct().Count() > 1) { FlightDetails flight = new FlightDetails { From = cbFrom.Text, To = cbTo.Text, Date = qOutbound[0].Date, Time = qOutbound[0].Time, CabinPrice = qOutbound.Sum(x => x.CabinPrice), FlightNumber = string.Join(" - ", qOutbound.Select(x => x.FlightNumber).ToList()), NumberOfStops = qOutbound.Count - 1 }; qOutbound = new List <FlightDetails> { flight }; } } else { MessageBox.Show("No Flights to the destination found (pick either different route, date, or even tick 'One way')"); } q[0] = qOutbound; q[1] = null; DisplayOutbound(); } else { outboundDate = dtpOutbound.Value.Date; returnDate = dtpReturn.Value.Date; qOutbound = flight.GetFlightDetails(cbFrom.Text, cbTo.Text, cbCabin.Text, outboundDate); qReturn = flight.GetFlightDetails(cbTo.Text, cbFrom.Text, cbCabin.Text, returnDate); if (qOutbound.Count > 0) { if (qOutbound.Select(x => x.FlightNumber).Distinct().Count() > 1) { FlightDetails flight = new FlightDetails { From = cbFrom.Text, To = cbTo.Text, Date = qOutbound[0].Date, Time = qOutbound[0].Time, CabinPrice = qOutbound.Sum(x => x.CabinPrice), FlightNumber = string.Join(" - ", qOutbound.Select(x => x.FlightNumber).ToList()), NumberOfStops = qOutbound.Count - 1 }; qOutbound = new List <FlightDetails> { flight }; } } else { MessageBox.Show("No Flights to destination found"); } if (qReturn.Count > 0) { if (qReturn.Select(x => x.FlightNumber).Distinct().Count() > 1) { FlightDetails flight = new FlightDetails { From = cbTo.Text, To = cbFrom.Text, Date = qReturn[0].Date, Time = qReturn[0].Time, CabinPrice = qReturn.Sum(x => x.CabinPrice), FlightNumber = string.Join(" - ", qReturn.Select(x => x.FlightNumber).ToList()), NumberOfStops = qReturn.Count - 1 }; qReturn = new List <FlightDetails> { flight }; } } else { MessageBox.Show("No Flights to home found (pick either different route, date, or even tick 'One way')"); } q[0] = qOutbound; q[1] = qReturn; DisplayOutbound(); DisplayReturn(); } }