private void Initial(Guid ID, Flight flight, Passenger passenger, Staff salesman, uint seatNumber, DateTime time, ReservationState state, Nullable<DateTime> cancelTime)
 {
     this.ID = ID;
     this.flight = flight;
     this.passenger = passenger;
     this.salesman = salesman;
     this.reservationDate = time;
     this.seatNumber = seatNumber;
     this.reservationState = state;
     this.cancelTime = cancelTime;
 }
        public void AddFlight( Guid planeID, Guid originAirportID, Guid destinationAirportID, DateTime departureDate, DateTime arrivalDate, uint cost)
        {
            Airport origin = ServiceFactory.GetAirports().GetAirportByID(originAirportID);
            Airport destination = ServiceFactory.GetAirports().GetAirportByID(destinationAirportID);

            Airplane plane = ServiceFactory.GetAirplanes().GetPlaneByID(planeID);

            Flight flight = new Flight(plane, origin, destination, departureDate, arrivalDate,cost);

            ServiceFactory.GetFlights().AddFlight(flight);

            Guid flightID = DBFacade.InsertFlightAndReturnID(planeID, originAirportID, destinationAirportID, departureDate, arrivalDate, cost);
            flight.SetID(flightID);
            MessageBox.Show("پرواز با موفقیت اضافه شد");
        }
 public Reservation(Guid ID, Flight flight, Passenger passenger, Staff saleman, uint seatNumber, DateTime time, ReservationState state, Nullable<DateTime> cancelTime)
 {
     Initial(ID, flight, passenger, salesman, seatNumber, time, state, cancelTime );
 }
 public void AddFlight(Flight flight)
 {
     flights.Add(flight);
 }
 public void AddFlight(Flight flight)
 {
     flights.Add(flight);
 }
        private void CreateAndInsertReservation(Flight flight, Passenger passenger, Staff salesman, uint seatNumber)
        {
            //TODO: I must set time to time inserted in DB
            Reservation reservation = new Reservation(flight, passenger, salesman, seatNumber,new DateTime(),ReservationState.Resereved, null);

            ServiceFactory.GetReservations().AddReservation(reservation);

            Nullable<Guid> reservationID = DBFacade.InsertReservationAndReturnID(flight.GetID(), passenger.GetID(), currentStaff.GetID(), seatNumber);
            if (reservationID != null)
            {
                reservation.SetID((Guid)reservationID);
                MessageBox.Show("رزرو با موافقیت انجام شد");
            }
            else
                MessageBox.Show("خطا در رزرو");
        }