Beispiel #1
0
    public static Passengers defaultPassengers()
    {
        var passengers = new Passengers();

        foreach (var path in new List <string>()
        {
            "Images/Bee", "Images/Monkey", "Images/Mouse"
        })
        {
            var texture = Resources.Load <Texture2D>(path);
            passengers.Add(texture);
            passengers.Select(texture);
        }

        foreach (var path in new List <string>()
        {
            "Images/businessman", "Images/doctor", "Images/girl", "Images/girl2", "Images/girl3", "Images/man2", "Images/student", "Images/woman",
        })
        {
            var texture = Resources.Load <Texture2D>(path);
            passengers.Add(texture);
        }

        return(passengers);
    }
        // for existing request
        public RequestViewModel(Request request) : base(request)
        {
            InitializeCommands();
            Vehicle   = new VehicleViewModel(Model.getVehicle());
            VinNumber = Vehicle.VinNumber;
            Requestor = new UserViewModel(Model.getRequestor());
            if (Model.isApproved())
            {
                Approver = new UserViewModel(Model.getApprover());
            }
            Driver        = new UserViewModel(Model.getDriver());
            DriverLicense = Requestor.DriverLicense;
            var start = Model.getPlannedTripStart();
            var end   = Model.getPlannedTripEnd();

            this.plannedStartDate = start.ToString("MM/dd/yyyy");
            this.plannedEndDate   = end.ToString("MM/dd/yyyy");
            PlannedStartHour      = start.Hour;
            PlannedEndHour        = end.Hour;
            PlannedStartDateMask  = new DateMask();
            PlannedEndDateMask    = new DateMask();
            foreach (var passenger in Model.getPassengers())
            {
                Passengers.Add(new Tuple <string, Person>(passenger.getFullName(), passenger));
            }
        }
Beispiel #3
0
        public override void Embus(Passenger passenger)
        {
            if (Passengers.Count == Capacity)
            {
                Console.WriteLine($"{GetType().Name} maximum capacity reached. Consider start now.");
                return;
            }

            switch (passenger.GetType().Name)
            {
            case "AdultPassenger":
                if (passenger.Pay(Price) > 0)
                {
                    Passengers.Add(passenger);
                }

                break;

            case "ChildPassenger":
                if (ChildChair)
                {
                    if (passenger.Pay(Price) > 0)
                    {
                        Passengers.Add(passenger);
                        ChildChair = false;
                    }
                }
                else
                {
                    Console.WriteLine("No more child chair left.");
                }

                break;
            }
        }
Beispiel #4
0
        /// <summary>
        /// Picks passengers from the given floor.
        /// </summary>
        /// <param name="floorNumber">The number of the floor.</param>
        private void PickPassengers(int floorNumber)
        {
            var  floor = GetFloor(floorNumber);
            bool hasFloorsWithWaitingMechanics = HasFloorsWithWaitingMechanics();

            if (floor.IsEmpty() || (hasFloorsWithWaitingMechanics && !floor.HasWaitingMechanics()))
            {
                return;
            }

            var pickedUpPassangers = new List <Person>();

            var passengersToPick = floor.Passengers.Where(p => p.CurrentFloor != p.Destination).OrderBy(p => p.IsMechanic).ToList();

            foreach (var passenger in passengersToPick)
            {
                if (passenger.Destination != floorNumber && !IsFull())
                {
                    Passengers.Add(passenger);
                    pickedUpPassangers.Add(passenger);
                }
            }

            if (pickedUpPassangers.Any())
            {
                floor.LeaveFloor(pickedUpPassangers);
                AddHistoryRecord(floorNumber);
            }
        }
        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.");
            }
        }
Beispiel #6
0
 public void AddPassenger(Passenger pass)
 {
     if (IsSeatsExist)
     {
         Passengers.Add(pass);
     }
 }
Beispiel #7
0
        public Form1()
        {
            InitializeComponent();
            Calendar.MinDate = DateTime.Today.Date;
            List <string> lines = File.ReadAllLines(filePath).ToList();

            foreach (string line in lines)
            {
                string[]  entries      = line.Split(',');
                Passenger newPassenger = new Passenger(Convert.ToInt16(entries[0]), entries[1], entries[2], entries[3], entries[4], entries[5]);
                Passengers.Add(newPassenger);
                cmbList.Items.Add(newPassenger.PassengerName);
                flightNumber++;
            }
            clnTakeOff.MinDate = DateTime.Today.Date;
            List <string> lines2 = File.ReadAllLines(filePath2).ToList();

            txtAllFlights.Text = "Time".PadRight(8) + "Date".PadRight(22) + "From".PadRight(16) + "To".PadRight(12) + "Flight\n";
            foreach (string line in lines2)
            {
                string[] entries   = line.Split(',');
                Flight   newFlight = new Flight(Convert.ToString(entries[0]), entries[1], entries[2], entries[3], entries[4], Convert.ToString(entries[5]), Convert.ToInt16(entries[6]), Convert.ToInt16(entries[7]), Convert.ToString(entries[8]), Convert.ToInt16(entries[9]), entries[10]);
                Flights.Add(newFlight);
                if (newFlight.NumberOfWays == 2)
                {
                    cmbInToolStripFlights.Items.Add($"{newFlight.TakeOffPlace}-{newFlight.Destination}");
                }
                else
                {
                    cmbOneWay.Items.Add($"{newFlight.TakeOffPlace}-{newFlight.Destination}");
                }
                txtAllFlights.Text += newFlight.FlightTime.PadRight(8) + newFlight.TakeOffDate.PadRight(18) + newFlight.TakeOffPlace.PadRight(16) + newFlight.Destination.PadRight(12) + newFlight.FlightID + "\n";
            }
        }
Beispiel #8
0
        public override void Embus(Passenger passenger)
        {
            if (Passengers.Count == Capacity)
            {
                Console.WriteLine($"{GetType().Name} maximum capacity reached. Consider start now.");
                return;
            }

            switch (passenger.GetType().Name)
            {
            case "AdultPassenger":
                if (passenger.Pay(Price) > 0)
                {
                    Passengers.Add(passenger);
                }

                break;

            case "ChildPassenger":
                if (passenger.Pay(Price * 0.5f) > 0)
                {
                    Passengers.Add(passenger);
                }

                break;

            case "PrivilegedPassenger":
                Passengers.Add(passenger);
                break;
            }
        }
Beispiel #9
0
 public bool Register(string passengerId, int cargoCount)
 {
     lock (Passengers)
     {
         if (IsRegistrationOpened == false)
         {
             return(false);
         }
         if (Passengers.Any(x => x.Equals(passengerId)))
         {
             return(false);
         }
         if (Passengers.Count < PassengerCapacity)
         {
             Passengers.Add(passengerId);
             CargoCount += cargoCount;
             return(true);
         }
         else
         {
             IsRegistrationOpened = false;
             return(false);
         }
     }
 }
Beispiel #10
0
        public void AddPassenger()
        {
            Random    rnd       = new Random();
            SimpleMan simpleMan = new SimpleMan(rnd.Next(1, 2));

            BusEvent         += simpleMan.OnBus;
            simpleMan.BusStop = this;
            Passengers.Add(simpleMan);
        }
Beispiel #11
0
        public bool Embark(Person person)
        {
            if (Passengers.Count < Capacity)
            {
                Passengers.Add(person);
                return(true);
            }

            return(false);
        }
Beispiel #12
0
        public void OnLoad(ConfigNode node)
        {
            ArrivalTime      = double.Parse(node.GetValue(nameof(ArrivalTime)));
            DestinationBiome = node.GetValue(nameof(DestinationBiome));
            DestinationBody  = node.GetValue(nameof(DestinationBody));
            Duration         = double.Parse(node.GetValue(nameof(Duration)));
            EconomyBerths    = int.Parse(node.GetValue(nameof(EconomyBerths)));
            if (!node.HasValue(nameof(FlightNumber)))
            {
                FlightNumber = _registry.GetNewFlightNumber();
            }
            else
            {
                FlightNumber = node.GetValue(nameof(FlightNumber));
            }
            LuxuryBerths = int.Parse(node.GetValue(nameof(LuxuryBerths)));
            OriginBiome  = node.GetValue(nameof(OriginBiome));
            OriginBody   = node.GetValue(nameof(OriginBody));
            if (!node.HasValue(nameof(UniqueId)))
            {
                UniqueId = Guid.NewGuid().ToString("N");
            }
            else
            {
                UniqueId = node.GetValue(nameof(UniqueId));
            }

            if (node.HasNode(PASSENGERS_NODE_NAME))
            {
                var passengersNode = node.GetNode(PASSENGERS_NODE_NAME);
                var passengerNodes = passengersNode.GetNodes();
                foreach (var passengerNode in passengerNodes)
                {
                    var passenger = new Passenger();
                    passenger.OnLoad(passengerNode);
                    Passengers.Add(passenger);
                }
                Passengers.Sort(new PassengerComparer());
            }

            // We need to reset some things if flight status can't be loaded from the config
            var flightStatus = FlightStatus.Unknown;

            if (!node.TryGetEnum(nameof(FlightStatus), ref flightStatus, FlightStatus.Unknown) ||
                flightStatus == FlightStatus.Unknown)
            {
                flightStatus = FlightStatus.Boarding;
                Passengers.Clear();
                ArrivalTime = 0d;
            }
            FlightStatus = flightStatus;

            OriginDepot      = _registry.GetDepot(OriginBody, OriginBiome);
            DestinationDepot = _registry.GetDepot(DestinationBody, DestinationBiome);
        }
        public void addPassenger(Passenger passenger)
        {
            if (Passengers.Count < PassengerCapacity)
            {
                Passengers.Add(passenger);
            }

            else
            {
                System.Console.WriteLine("Too much passengers.");
            }
        }
        private async void GetPassengersCurrentFlight(string flightId)
        {
            HttpClient httpClient = new HttpClient();

            var res = await httpClient.GetStringAsync($"http://localhost:60177/api/User/flights/{flightId}/passengers/all");

            var passengers = JsonConvert.DeserializeObject <List <Passenger> >(res);

            foreach (Passenger passenger in passengers)
            {
                Passengers.Add(new PassengerViewModel(passenger));
            }
        }
Beispiel #15
0
 public virtual void Embus(Passenger passenger)
 {
     if (Passengers.Count < Capacity)
     {
         if (passenger.Pay(Price) > 0)
         {
             Passengers.Add(passenger);
         }
         else
         {
             throw new Exception("Passenger don't have enough money.");
         }
     }
     else
     {
         throw new Exception("Capacity limit exceed, no more passengers can embus.");
     }
 }
        public void EnterPassenger(Person person)
        {
            if (person == null)
            {
                throw new NullReferenceException("Person får inte vara null.");
            }
            if (Passengers.Count >= Capacity)
            {
                throw new Exception($"Något har gått fel med Capacity för {Name}.");
            }
            if (person.TargetFloor == CurrentFloor)
            {
                throw new Exception($"Personen har gått in i en hiss, fast den är på sin TargetFloor.");
            }

            Passengers.Add(person);
            TargetList.Add(person.TargetFloor);
        }
        private void AddPassenger()
        {
            var view = new NewPassengerView()
            {
                Owner = Application.Current.MainWindow,
            };

            if (view.ShowDialog() == true)
            {
                var firstName = view.edFirstName.Text.Trim();
                var lastName  = view.edLastName.Text.Trim();
                var passenger = new Person();
                passenger.setLastName(lastName);
                passenger.setFirstName(firstName);
                Model.addPassenger(passenger);
                var item = new Tuple <string, Person>(passenger.getFullName(), passenger);
                Passengers.Add(item);
                SelectedPassenger = item;
            }
        }
Beispiel #18
0
 public bool Embark(IPassenger passenger)
 {
     if (FlightStatus != FlightStatus.Boarding)
     {
         return(false);
     }
     if (passenger.IsTourist)
     {
         if (LuxuryBerths < 1)
         {
             return(false);
         }
         var crew            = Passengers.Count(p => !p.IsTourist);
         var availableBerths = LuxuryBerths;
         if (crew > EconomyBerths)
         {
             availableBerths -= (crew - EconomyBerths);
         }
         var tourists = Passengers.Count(p => p.IsTourist);
         if (tourists >= availableBerths)
         {
             return(false);
         }
         Passengers.Add(passenger);
     }
     else
     {
         var totalBerths = EconomyBerths + LuxuryBerths;
         if (totalBerths < 1)
         {
             return(false);
         }
         var passengers = Passengers.Count;
         if (passengers >= LuxuryBerths + EconomyBerths)
         {
             return(false);
         }
         Passengers.Add(passenger);
     }
     return(true);
 }
Beispiel #19
0
        private async void LoadData()
        {
            try
            {
                var json = await Client.GetStringAsync(new Uri("http://localhost:5000/api/User/passengers"));

                var passengers = JsonConvert.DeserializeObject <IList <Model.Passenger> >(json);
                if (passengers.Count == 0)
                {
                    ErrorMessage = "There are no passengers available!";
                }
                foreach (var passenger in passengers)
                {
                    Passengers.Add(passenger);
                }
            }
            catch (Exception)
            {
                ErrorMessage = "Something went wrong! Please try again later.";
            }
        }
 public void Apply(IReadModelContext context,
                   IDomainEvent <RestAirline.Booking.Domain.Booking.Booking, BookingId, PassengerAddedEvent> domainEvent)
 {
     Id = domainEvent.AggregateIdentity.Value;
     Passengers.Add(domainEvent.AggregateEvent.Passenger.ToReadModel());
 }
Beispiel #21
0
 public void AddPassenger(PassengerInfo passengerInfo)
 {
     Passengers.Add(passengerInfo);
 }
Beispiel #22
0
 public void On(PassengerAdded @event) => Passengers.Add(@event.Passenger);
 public void Apply(IReadModelContext context,
                   IDomainEvent <Domain.Booking.Booking, BookingId, PassengerAddedEvent> domainEvent)
 {
     Passengers.Add(domainEvent.AggregateEvent.Passenger.ToReadModel());
 }
Beispiel #24
0
 public void AddPassenger(IPassenger passenger)
 {
     // Potentially we could calculate load before adding passenger - but the corridor to plane relationship is amorphous
     Passengers.Add(passenger);
 }
        public void MakePassenger()
        {
            Passenger passenger = new Passenger();

            Passengers.Add(passenger);
        }
Beispiel #26
0
 public void AddPassenger(Unit unit)
 {
     Passengers.Add(unit);
     unit.Transport = this;
 }
Beispiel #27
0
 public void AddPassenger(Passenger passenger)
 {
     Passengers.Add(passenger);
 }