コード例 #1
0
        private void SaveFlight()
        {
            if (SelectedTrip != null && SelectedDate != null && Passengers.Count != 0)
            {
                List <PassengersInFlightModel> passList = new List <PassengersInFlightModel>(Passengers);
                Passengers.Clear();
                foreach (var p in passList)
                {
                    p.Date = SelectedDate.ToShortDateString();
                    PassengersInFlightModel pass = PassengersViewModel.AddNewPassenger(p);
                    Passengers.Add(pass);
                }

                FlightsViewModel.NewFlight = new TripModel(SelectedTrip.TripNumber, SelectedDate.ToShortDateString(), SelectedTrip.AirwayCompany, SelectedTrip.Plane, SelectedTrip.TownFrom, SelectedTrip.TownTo, SelectedTrip.DepTime, SelectedTrip.ArrTime, null, Passengers);
            }
            else if (SelectedTrip == null)
            {
                MessageBox.Show("Trip is not selected!");
            }
            else if (SelectedDate == null)
            {
                MessageBox.Show("Date for trip is not selected!");
            }
            else if (Passengers.Count == 0)
            {
                MessageBox.Show("Passengers list is empty! Please,add passengers.");
            }
            else
            {
                MessageBox.Show("Check entered data! Something is wrong.");
            }
        }
コード例 #2
0
        public static Passenger ConvertToPassengerType(PassengersInFlightModel passenger)
        {
            Passenger p = new Passenger()
            {
                ID_psg = passenger.Id, name = passenger.PassengerName
            };

            return(p);
        }
コード例 #3
0
 public EditPassengerDataViewModel(List <PassengersInFlightModel> list, PassengersInFlightModel pass)
 {
     InitialiseCollections(list);
     FillInCollections();
     if (pass != null)
     {
         PassengerName = pass.PassengerName;
         PassengerSeat = pass.SeatNumber;
     }
 }
コード例 #4
0
        private void AddPassenger()
        {
            PassengersInFlightModel NewPassenger = PassengersViewModel.AddNewPassenger(SelectedTrip, "newFlight");

            if (NewPassenger != null)
            {
                int n = Trips.IndexOf(SelectedTrip);
                Trips[n].PassengersList.Add(NewPassenger);
            }
        }
コード例 #5
0
        private static Pass_in_trip ConvertToPassInTripType(PassengersInFlightModel pass, TripModel trip)
        {
            Pass_in_trip pass_In_Trip = new Pass_in_trip
            {
                trip_no = trip.TripNumber,
                date    = DateTime.Parse(trip.Date),
                ID_psg  = pass.Id,
                place   = pass.SeatNumber
            };

            return(pass_In_Trip);
        }
コード例 #6
0
 private void EditPassengerData()
 {
     if (SelectedPassenger != null)
     {
         PassengersInFlightModel newData = PassengersViewModel.EditPassengerData(SelectedPassenger, SelectedTrip, "new flight");
         newData.Id   = SelectedPassenger.Id;
         newData.Date = SelectedPassenger.Date;
         int n = Trips.IndexOf(SelectedTrip);
         int m = Trips[n].PassengersList.IndexOf(SelectedPassenger);
         Trips[n].PassengersList.RemoveAt(m);
         Trips[n].PassengersList.Insert(m, newData);
     }
 }
コード例 #7
0
        public static PassengersInFlightModel AddNewPassenger(PassengersInFlightModel pass)
        {
            List <Passenger> list = new List <Passenger>(GetData.GetAllPassengersData());

            list.ForEach(p => { if (p.name.Trim().Equals(pass.PassengerName.Trim()))
                                {
                                    pass.Id = p.ID_psg;
                                }
                         });
            if (pass.Id == 0 && list.Count > 0)
            {
                pass.Id = list.Max(p => p.ID_psg) + 1;
                Passenger newPass = ConvertToPassengerType(pass);
                DAL.EditDB.AddNewPassenger(newPass);
            }
            return(pass);
        }
コード例 #8
0
        public static PassengersInFlightModel EditPassengerData(PassengersInFlightModel pass, TripModel trip, string param)
        {
            EditPassengerData EPD = new EditPassengerData(trip.PassengersList.ToList(), pass);

            EPD.ShowDialog();
            if (EPD.DialogResult == true)
            {
                if (param.Equals("new flight"))
                {
                    return(NewPassengerData);
                }
                else
                {
                    DAL.EditDB.EditPassengerData(ConvertToPassInTripType(pass, trip), NewPassengerData.SeatNumber, pass.PassengerName, NewPassengerData.PassengerName);
                }
            }
            return(NewPassengerData);
        }
コード例 #9
0
 public EditPassengerData(List <PassengersInFlightModel> passList, PassengersInFlightModel pass)
 {
     InitializeComponent();
     DataContext = new EditPassengerDataViewModel(passList, pass);
 }
コード例 #10
0
        public static void DeletePassenger(PassengersInFlightModel pass, TripModel trip)
        {
            Pass_in_trip passToDelete = ConvertToPassInTripType(pass, trip);

            DAL.EditDB.DeletePassengerFromFlight(passToDelete);
        }