private void createAirline()
        {
            string name = txtName.Text.Trim();
            string iata = txtIATA.Text.Trim().ToUpper();
            string ceo  = txtCEO.Text.Trim();

            Airline tAirline = Airlines.GetAirline(iata);

            if (tAirline != null)
            {
                Airlines.RemoveAirline(tAirline);
            }

            Country country = (Country)cbCountry.SelectedItem;
            string  color   = ((PropertyInfo)cbColor.SelectedItem).Name;

            AirlineProfile profile = new AirlineProfile(name, iata, color, ceo, false, 1950, 2199);

            profile.Countries = new List <Country>()
            {
                country
            };
            profile.Country = country;
            profile.addLogo(new AirlineLogo(logoPath));
            profile.PreferedAirport = cbAirport.SelectedItem != null ? (Airport)cbAirport.SelectedItem : null;

            Route.RouteType focus = rbPassengerType.IsChecked.Value ? Route.RouteType.Passenger : Route.RouteType.Cargo;

            Airline airline = new Airline(profile, Airline.AirlineMentality.Aggressive, Airline.AirlineFocus.Local, Airline.AirlineLicense.Domestic, focus);

            Airlines.AddAirline(airline);

            WPFMessageBox.Show(Translator.GetInstance().GetString("MessageBox", "2405"), Translator.GetInstance().GetString("MessageBox", "2405", "message"), WPFMessageBoxButtons.Ok);
        }
        public ActionResult EditAirlines(Airlines airlines)
        {
            string kstr      = "";
            bool   IsSuccess = true;

            if (string.IsNullOrEmpty(airlines.AirlinesName))
            {
                kstr      = "名称不能为空";
                IsSuccess = false;
            }
            if (airlines.State != 0 && airlines.State != 1)
            {
                kstr      = "状态不能为空";
                IsSuccess = false;
            }
            airlines.CreateDateTime = System.DateTime.Now;
            if (IsSuccess)
            {
                manager.UpdateAirlines(airlines);
                return(RedirectToAction("AirlinesIndex"));
            }
            else
            {
                string js = "<script>alert(\"" + kstr + "\");location='AirlinesIndex';</script>";
                return(Content(js));
            }
        }
Exemplo n.º 3
0
        public void AddAirline(string departedDaT, string arrivedDaT, string departedCity, string arrivedCity,
                               int terminalNumber, int gateNumber, byte plane)
        {
            var number = _helpers.NumberGenerator <Airline>(Airlines);

            Airlines.Add(number, new Airline(number, departedDaT, arrivedDaT, departedCity, arrivedCity, terminalNumber, gateNumber, (PlaneEnum)plane));
        }
        private void txtIATA_TextChanged(object sender, TextChangedEventArgs e)
        {
            Boolean IATAExits       = Airlines.GetAllAirlines().Find(a => a.Profile.IATACode == txtIATA.Text.ToUpper()) != null;
            Boolean airportSelected = cbAirport.SelectedItem != null;

            btnOk.IsEnabled = txtIATA.Text.Trim().Length == 2 && txtAirlineName.Text.Trim().Length > 2 && !IATAExits && airportSelected;
        }
Exemplo n.º 5
0
        public Airline GetFavoriteAirline(Person person)
        {
            var countDict = new Dictionary <string, int>();

            foreach (var a in Airlines)
            {
                countDict.Add(a.AirlineCode, 0);
            }

            foreach (var t in person.Trips)
            {
                foreach (var p in t.PlanItems)
                {
                    var f = p as Flight;
                    if (f != null)
                    {
                        countDict[f.Airline.AirlineCode]++;
                    }
                }
            }

            var    max = -1;
            string favoriteAirlineCode = null;

            foreach (var record in countDict)
            {
                if (max < record.Value)
                {
                    favoriteAirlineCode = record.Key;
                    max = record.Value;
                }
            }

            return(Airlines.Single(a => a.AirlineCode.Equals(favoriteAirlineCode)));
        }
Exemplo n.º 6
0
        private void cbContinent_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            Continent continent = (Continent)cbContinent.SelectedItem;

            if (continent.Regions.Count == 0)
            {
                cbRegion.Items.Clear();

                cbRegion.Items.Add(Regions.GetRegion("100"));
                foreach (Region region in Regions.GetRegions().FindAll(r => Airlines.GetAirlines(r).Count > 0).OrderBy(r => r.Name))
                {
                    cbRegion.Items.Add(region);
                }
            }
            else
            {
                cbRegion.Items.Clear();

                if (continent.Regions.Count > 1)
                {
                    cbRegion.Items.Add(Regions.GetRegion("100"));
                }

                foreach (Region region in continent.Regions.FindAll(r => Airlines.GetAirlines(r).Count > 0).OrderBy(r => r.Name))
                {
                    cbRegion.Items.Add(region);
                }
            }
        }
 public int AddAirLine(Airlines obj)
 {
     ent.AddToAirlines(obj);
     ent.SaveChanges();
     //to return the primary id//
     return(obj.AirlineId);
 }
        public void DeleteAirline(int AirlineId)
        {
            Airlines obj = ent.Airlines.Where(x => x.AirlineId == AirlineId).FirstOrDefault();

            ent.DeleteObject(obj);
            ent.SaveChanges();
        }
 public static bool DetectSegmentLine(string formattedLine, List <Airlines> lstAirline)
 {
     try
     {
         string[] splitted = formattedLine.Split(' ');
         if (splitted.Length > 3)
         {
             Int32 firstDigit = Convert.ToInt32(splitted[0]);
             if (firstDigit == 0)
             {
                 return(false);
             }
             if (splitted[2].Length == 2)
             {
                 Airlines airline = lstAirline.Where(a => a.Code == splitted[2]).FirstOrDefault();
                 return(airline != null ? true : false);
             }
             else if (splitted[2].Length == 6)
             {
                 splitted[2] = splitted[2].Substring(0, 2);
                 Airlines airline = lstAirline.Where(a => a.Code == splitted[2]).FirstOrDefault();
                 return(airline != null ? true : false);
             }
         }
         else
         {
             return(false);
         }
     }
     catch (Exception ex)
     {
         return(false);
     }
     return(false);
 }
Exemplo n.º 10
0
        public ActionResult Create([FromForm] AddAirlinesViewModel m)
        {
            ViewBag.IsLoggedIn = true;
            bool            exists     = false;
            List <Airlines> airlineAll = uow.Airlines.GetAll();

            if (airlineAll.Any(item => item.Name == m.Name))
            {
                exists = true;
            }
            if (exists == true)
            {
                ModelState.AddModelError(string.Empty, "Airline already exists");
            }
            if (ModelState.IsValid)
            {
                Airlines a = new Airlines
                {
                    Name           = m.Name,
                    YearFounded    = m.YearFounded,
                    NumberOfPlanes = m.NumberOfPlanes,
                    CountryId      = m.CountryID
                };
                uow.Airlines.Add(a);
                uow.Commit();
                return(RedirectToAction(nameof(Index)));
            }
            else
            {
                return(Create());
            }
        }
Exemplo n.º 11
0
        private void btnUpdate_Click(object sender, RoutedEventArgs e)
        {
            valid = App.IsSuperUser() &&
                    App.ListBoxHasItem(lstBoxA, 'u') &&
                    App.HasCompleteInput(2, txtName.Text, txtSeats.Text) &&
                    App.IsInt(txtSeats.Text) &&
                    App.SureAction('u');

            if (valid)
            {
                bool     inList = App.NameInAList(txtName.Text);
                Airlines aRec   = App.SelectedARec(lstBoxA);

                if (aRec.Name.Equals(txtName.Text) ||
                    !aRec.Name.Equals(txtName.Text) && !inList)
                {
                    aRec.Name           = txtName.Text;
                    aRec.SeatsAvailable = int.Parse(txtSeats.Text);
                    aRec.Airplane       = airplane;
                    aRec.MealAvailable  = meal;

                    RefreshListBox(lstBoxA.SelectedIndex);
                }
                else if (inList)
                {
                    App.GetError("nameInList");
                }
            }
        }
Exemplo n.º 12
0
        public PageFlights()
        {
            this.Entries = Airlines.GetAllAirlines().SelectMany(a => a.Routes.SelectMany(r => r.TimeTable.Entries)).ToList();//.OrderBy(e => e.Time).ToList();
            sortCriteria = "Time";

            InitializeComponent();

            this.Uid   = "1000";
            this.Title = Translator.GetInstance().GetString("PageFlights", this.Uid);

            StackPanel flightsPanel = new StackPanel();

            flightsPanel.Margin = new Thickness(10, 0, 10, 0);

            flightsPanel.Children.Add(createDaysButtonsPanel());
            flightsPanel.Children.Add(createFlightsPanel());

            //  StandardContentPanel panelContent = new StandardContentPanel();

            //  panelContent.setContentPage(flightsPanel, StandardContentPanel.ContentLocation.Left);

            //   StackPanel panelSideMenu = new PanelAirport(this.Airport);

            //   panelContent.setContentPage(panelSideMenu, StandardContentPanel.ContentLocation.Right);

            base.setContent(flightsPanel);

            base.setHeaderContent(this.Title);

            showPage(this);

            day = GameObject.GetInstance().GameTime.DayOfWeek;
            showDayEntries();
        }
Exemplo n.º 13
0
 /// <summary>
 /// Constructor.
 /// @hide
 /// </summary>
 public ReferenceData(Amadeus client)
 {
     this.client    = client;
     this.Urls      = new Urls(client);
     this.Locations = new Locations(client);
     this.Airlines  = new Airlines(client);
 }
Exemplo n.º 14
0
        public PageFlights()
        {
            this.AllFlights = Airlines.GetAllAirlines().SelectMany(a => a.Routes.SelectMany(r => r.TimeTable.Entries)).ToList();
            InitializeComponent();

            this.Loaded += PageFlights_Loaded;
        }
Exemplo n.º 15
0
        //sets up the different scenario setting
        private static void SetupScenario()
        {
            Parallel.ForEach(Airports.GetAllAirports(), airport =>
            {
                foreach (Airline airline in Airlines.GetAllAirlines())
                {
                    foreach (AirportFacility.FacilityType type in Enum.GetValues(typeof(AirportFacility.FacilityType)))
                    {
                        AirportFacility noneFacility = AirportFacilities.GetFacilities(type).Find((delegate(AirportFacility facility) { return(facility.TypeLevel == 0); }));

                        airport.addAirportFacility(airline, noneFacility, GameObject.GetInstance().GameTime);
                    }
                }
                AirportHelpers.CreateAirportWeather(airport);
            });

            foreach (Airline airline in Airlines.GetAllAirlines())
            {
                if (airline.IsHuman)
                {
                    airline.Money = GameObject.GetInstance().StartMoney;
                }
                airline.StartMoney = airline.Money;
                airline.Fees       = new AirlineFees();
                airline.addAirlinePolicy(new AirlinePolicy("Cancellation Minutes", 150));
            }
        }
Exemplo n.º 16
0
        /// <summary>
        /// Get new airlines
        /// </summary>
        /// <returns>Airlines</returns>
        private static Airlines GetNewAirlines()
        {
            Airlines airline = Airlines.Airunes;

            CheckEnum(out airline, "airline");
            return(airline);
        }
Exemplo n.º 17
0
        /// <summary>
        /// Recieve all information from user about flight for adding or editing
        /// </summary>
        /// <returns>flight</returns>
        private static Flight AskForFlight()
        {
            string       temp = string.Empty, flightNumber;
            Terminals    terminal = Terminals.A;
            Airlines     airline = Airlines.Airunes;
            DateTime     departDate = DateTime.Now, arrivDate = DateTime.Now;
            Cities       arrival = Cities.Berlin, departure = Cities.Berlin;
            Gates        gate   = Gates.G1;
            FlightStatus status = FlightStatus.Unknown;

            Console.WriteLine("Enter the flight number");
            flightNumber = Console.ReadLine().Trim();

            CheckEnum(out airline, "airline");

            CheckDate(out departDate, "departure");

            CheckDate(out arrivDate, "arrival");

            CheckEnum(out departure, "departure port");

            CheckEnum(out arrival, "arrival port");

            CheckEnum(out terminal, "terminal");

            CheckEnum(out gate, "gate");

            CheckEnum(out status, "flight status");

            return(new Flight(airline, flightNumber, departDate, arrivDate, departure, arrival, terminal, gate, status));
        }
        public ActionResult Create()
        {
            AirLineFlightTaxMappingModel model = new AirLineFlightTaxMappingModel();
            var      listOfAirlines            = ent.Airlines.ToList();
            Airlines infoSelect = new Airlines()
            {
                AirlineId = -1, AirlineName = "--Select--"
            };

            listOfAirlines.Insert(0, infoSelect);

            var flightmappingList = ent.AirlineFlightTaxes.ToList();
            AirlineFlightTaxes flighttaxSelect = new AirlineFlightTaxes()
            {
                FlightTaxId = -1, FlightTaxName = "--Select--"
            };

            flightmappingList.Insert(0, flighttaxSelect);
            ViewData["CommissionValueType"] = new SelectList(ATLTravelPortal.Helpers.ChildFairTypes.GetChildFairType(), "ChildFairTypeID", "ChildFairType", "");

            ViewData["airLineList"]   = listOfAirlines;
            ViewData["FlightTaxList"] = flightmappingList;
            //model = LoadListData(model);
            return(View());
        }
Exemplo n.º 19
0
        //creates the airline
        private void createAirline()
        {
            Airline tAirline = Airlines.GetAirline(txtIATA.Text.Trim().ToUpper());

            if (tAirline != null)
            {
                Airlines.RemoveAirline(tAirline);
            }

            string  name    = txtAirlineName.Text.Trim();
            string  iata    = txtIATA.Text.Trim().ToUpper();
            Country country = (Country)cbCountry.SelectedItem;
            string  color   = ((PropertyInfo)cbColor.SelectedItem).Name;

            AirlineProfile profile = new AirlineProfile(name, iata, color, "Unknown", false, 1950, 2199);

            profile.Countries = new List <Country>()
            {
                country
            };
            profile.Country = country;
            profile.addLogo(new AirlineLogo(logoPath));

            Airline airline = new Airline(profile, Airline.AirlineMentality.Aggressive, Airline.AirlineFocus.Local, Airline.AirlineLicense.Domestic, airlinerType);

            Airlines.AddAirline(airline);


            PageNavigator.NavigateTo(new PageNewGame());
        }
Exemplo n.º 20
0
        public IObservable <IEnumerable <Flight> > GetFlightsFrom(Airport fromAirport)
        {
            var airports = new AirportNamesService().GetAirports();
            var airlines = new AirlineNamesService().GetAirlines();
            var statuses = new StatusService().GetStautses();


            var referenceData = airports
                                .ForkJoin(airlines, (allAirports, allAirlines) =>
            {
                Airports.AddRange(allAirports);
                Airlines.AddRange(allAirlines);
                return(new Unit());
            })
                                .ForkJoin(statuses, (nothing, allStatuses) =>
            {
                Statuses.AddRange(allStatuses);
                return(new Unit());
            });

            string url = string.Format(_serviceUrl, 1, 5, fromAirport.Code);

            var flights = from data in referenceData
                          from flight in GetFlightsFrom(url)
                          select flight;

            return(flights);
        }
Exemplo n.º 21
0
        //creates the page
        private void createPage(List <Airport> airports)
        {
            this.AllAirlines      = new List <Airline>();
            this.SelectedAirports = new ObservableCollection <AirportMVVM>();
            this.RoutesRanges     = new List <FilterValue>()
            {
                new FilterValue("0", 0, 0), new FilterValue("1-9", 1, 9), new FilterValue("10-24", 10, 24), new FilterValue("25+", 25, int.MaxValue)
            };
            this.OperatingRanges = new List <FilterValue>()
            {
                new FilterValue("0", 0, 0), new FilterValue("1-5", 1, 5), new FilterValue("6+", 5, int.MaxValue)
            };

            Airline dummyAirline = new Airline(new AirlineProfile("All Airlines", "99", "Blue", "", false, 1900, 1900), Airline.AirlineMentality.Safe, Airline.AirlineFocus.Domestic, Airline.AirlineLicense.Domestic, Route.RouteType.Passenger);

            dummyAirline.Profile.addLogo(new AirlineLogo(AppSettings.getDataPath() + "\\graphics\\airlinelogos\\default.png"));

            this.AllAirlines.Add(dummyAirline);

            foreach (Airline airline in Airlines.GetAllAirlines().Where(a => a != GameObject.GetInstance().HumanAirline).OrderBy(a => a.Profile.Name))
            {
                this.AllAirlines.Add(airline);
            }

            this.AllAirports = new List <AirportMVVM>();

            foreach (Airport airport in airports.OrderBy(a => a.Profile.Name))
            {
                this.AllAirports.Add(new AirportMVVM(airport));
            }

            AirlinerType dummyAircraft = new AirlinerCargoType(new Manufacturer("Dummy", "", null, false), "All Aircrafts", "", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, AirlinerType.BodyType.Single_Aisle, AirlinerType.TypeRange.Regional, AirlinerType.EngineType.Jet, new Period <DateTime>(DateTime.Now, DateTime.Now), 0, false);

            this.HumanAircrafts = new List <AirlinerType>();

            this.HumanAircrafts.Add(dummyAircraft);


            foreach (AirlinerType type in GameObject.GetInstance().HumanAirline.Fleet.Select(f => f.Airliner.Type).Distinct())
            {
                this.HumanAircrafts.Add(type);
            }

            InitializeComponent();


            TabControl tab_main = UIHelpers.FindChild <TabControl>(this.Tag as Page, "tabMenu");

            if (tab_main != null)
            {
                var matchingItem =
                    tab_main.Items.Cast <TabItem>()
                    .Where(item => item.Tag.ToString() == "Airports")
                    .FirstOrDefault();

                //matchingItem.IsSelected = true;
                tab_main.SelectedItem = matchingItem;
            }
        }
        public override global::System.Data.DataSet Clone()
        {
            Airlines cln = ((Airlines)(base.Clone()));

            cln.InitVars();
            cln.SchemaSerializationMode = this.SchemaSerializationMode;
            return(cln);
        }
        public ActionResult DeleteConfirmed(int id)
        {
            Airlines airlines = db.Airliness.Find(id);

            db.Airliness.Remove(airlines);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemplo n.º 24
0
        public PopUpInviteAlliance(Alliance alliance)
        {
            this.InviteAirlines = new List <Airline>();

            this.Alliance = alliance;
            InitializeComponent();

            this.Title = this.Alliance.Name;

            this.Width = 300;

            this.Height = 500;

            this.WindowStartupLocation = System.Windows.WindowStartupLocation.CenterScreen;

            StackPanel panelMain = new StackPanel();

            ScrollViewer scroller = new ScrollViewer();

            scroller.MaxHeight = this.Height - 50;
            scroller.VerticalScrollBarVisibility   = ScrollBarVisibility.Auto;
            scroller.HorizontalScrollBarVisibility = ScrollBarVisibility.Auto;

            panelMain.Children.Add(scroller);

            StackPanel panelAirlines = new StackPanel();

            scroller.Content = panelAirlines;

            var airlines = from a in Airlines.GetAllAirlines() where !this.Alliance.Members.ToList().Exists(m => m.Airline == a) select a;

            foreach (Airline airline in airlines)
            {
                WrapPanel panelAirline = new WrapPanel();
                panelAirline.Margin = new Thickness(0, 0, 0, 5);

                ContentControl ccAirline = new ContentControl();
                ccAirline.ContentTemplate = this.Resources["AirlineItem"] as DataTemplate;
                ccAirline.Content         = airline;

                panelAirline.Children.Add(ccAirline);

                CheckBox cbAirline = new CheckBox();
                cbAirline.IsChecked         = false;
                cbAirline.Tag               = airline;
                cbAirline.VerticalAlignment = System.Windows.VerticalAlignment.Bottom;
                cbAirline.Checked          += new RoutedEventHandler(cbAirline_Checked);
                cbAirline.Unchecked        += new RoutedEventHandler(cbAirline_Unchecked);

                panelAirline.Children.Add(cbAirline);

                panelAirlines.Children.Add(panelAirline);
            }

            panelMain.Children.Add(createButtonsPanel());

            this.Content = panelMain;
        }
Exemplo n.º 25
0
        public ActionResult Active(Airlines model, string chkAirLine, string Mode, int Type, int?pageNo, int?flag)
        {
            TempData["Flag"] = true;
            //int currentPageNo = 0; int numberOfPage = 0;Type =1 means domestic is been selected and in db 1 means International so conversion is necessay
            if (pageNo == null)
            {
                pageNo = 1;
            }
            var result = ser.GetAllAirline();

            if (chkAirLine == "")
            {
                ModelState.AddModelError("AirlineId", "please select Airline");
                return(RedirectToAction("Index"));
            }
            if (Request.IsAjaxRequest())
            {
                if (chkAirLine != "" || chkAirLine != null)
                {
                    int[] prodIds = chkAirLine.Split(',').Select(s => int.Parse(s)).ToArray();
                    foreach (int AirlineId in prodIds)
                    {
                        if (Mode == "Activate")
                        {
                            ser.ChangeStatusToActive(AirlineId, model);
                            // result = ser.GetAllAirlineByByPaging(pageNo.Value, out  currentPageNo, out numberOfPage, flag).ToList();
                            if (Type == 1)
                            {
                                result = ser.GetAllActiveAirLinesList(2);
                            }
                            else
                            {
                                result = ser.GetAllActiveAirLinesList(1);
                            }
                        }
                        else
                        {
                            ser.ChangeStatusToInActive(AirlineId, model);
                            if (Type == 1)
                            {
                                result = ser.GetAllInActiveAirlineList(2);//Since 2 will bring all domestic and 1 will brin all international
                            }
                            else
                            {
                                result = ser.GetAllInActiveAirlineList(1);
                            }
                            //result = ser.GetAllInActiveAirlineByByPaging(pageNo.Value, out  currentPageNo, out numberOfPage, flag).ToList();
                        }
                    }
                    //ViewData["TotalPages"] = numberOfPage;
                    //ViewData["CurrentPage"] = currentPageNo;
                    return(PartialView("AirlineSearchResult", result));
                }
                return(RedirectToAction("Index"));
            }
            return(RedirectToAction("Index"));
        }
        public ActionResult Edit(AirlineCappingModel model, Int64 id)
        {
            model.cappingId = id;

            var gdsList = ent.ServiceProviders.ToList();
            ServiceProviders gdsSelect = new ServiceProviders()
            {
                ServiceProviderId = -1, ServiceProviderName = "--Select--"
            };

            gdsList.Insert(0, gdsSelect);

            var      airLineList   = ent.Airlines.ToList();
            Airlines airlineSelect = new Airlines()
            {
                AirlineId = -1, AirlineName = "--Select--"
            };

            airLineList.Insert(0, airlineSelect);

            var   bankList   = ent.Banks.ToList();
            Banks bankSelect = new Banks()
            {
                BankId = -1, BankName = "--Select--"
            };

            bankList.Insert(0, bankSelect);

            var          paymentList   = ent.PaymentModes.ToList();
            PaymentModes paymentSelect = new PaymentModes()
            {
                PaymentModeId = -1, ModeName = "--Select--"
            };

            paymentList.Insert(0, paymentSelect);

            ViewData["GDSList"]         = gdsList;     //defaultProvider.GetGDSInformationList();
            ViewData["AirlineList"]     = airLineList; //defaultProvider.GetAirlineList();
            ViewData["BankList"]        = bankList;    //defaultProvider.GetBankList();
            ViewData["PaymentModeList"] = paymentList; //defaultProvider.GetPaymentModeList();

            //ViewData["GDSList"] = defaultProvider.GetGDSInformationList();
            //ViewData["AirlineList"] = defaultProvider.GetAirlineList();
            //ViewData["BankList"] = defaultProvider.GetBankList();
            //ViewData["PaymentModeList"] = defaultProvider.GetPaymentModeList();

            if (ModelState.IsValid)
            {
                airlineCappingProvider.Edit(model);
                return(View(model));
            }
            else
            {
                return(View());
            }
        }
 public ActionResult Edit([Bind(Include = "Id,Name,Code")] Airlines airlines)
 {
     if (ModelState.IsValid)
     {
         db.Entry(airlines).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(airlines));
 }
Exemplo n.º 28
0
        private void cbDestination_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (cbDestination1 != null && cbDestination2 != null && txtDistance != null)
            {
                Airport destination1 = (Airport)cbDestination1.SelectedItem;
                Airport destination2 = (Airport)cbDestination2.SelectedItem;

                if (destination1 != null && destination2 != null)
                {
                    foreach (MVVMRouteClass rClass in this.Classes)
                    {
                        rClass.FarePrice = PassengerHelpers.GetPassengerPrice(destination1, destination2) * GeneralHelpers.ClassToPriceFactor(rClass.Type);
                    }

                    txtDistance.Text = new DistanceToUnitConverter().Convert(MathHelpers.GetDistance(destination1, destination2)).ToString();

                    var codesharingRoutes     = GameObject.GetInstance().HumanAirline.Codeshares.Where(c => c.Airline2 == GameObject.GetInstance().HumanAirline || c.Type == Model.AirlineModel.CodeshareAgreement.CodeshareType.Both_Ways).Select(c => c.Airline1 == GameObject.GetInstance().HumanAirline ? c.Airline2 : c.Airline1).SelectMany(a => a.Routes);
                    var humanConnectingRoutes = GameObject.GetInstance().HumanAirline.Routes.Where(r => r.Destination1 == destination1 || r.Destination2 == destination1 || r.Destination1 == destination2 || r.Destination2 == destination2);

                    var codesharingConnectingRoutes = codesharingRoutes.Where(r => r.Destination1 == destination1 || r.Destination2 == destination1 || r.Destination1 == destination2 || r.Destination2 == destination2);

                    this.ConnectingRoutes.Clear();

                    foreach (Route route in humanConnectingRoutes)
                    {
                        this.ConnectingRoutes.Add(route);
                    }

                    foreach (Route route in codesharingConnectingRoutes)
                    {
                        this.ConnectingRoutes.Add(route);
                    }

                    var opponentRoutes = Airlines.GetAllAirlines().Where(a => !a.IsHuman).SelectMany(a => a.Routes).Where(r => (r.Destination1 == destination1 && r.Destination2 == destination2) || (r.Destination2 == destination1 && r.Destination1 == destination2));

                    if (opponentRoutes.Count() == 0)
                    {
                        this.RouteInformationText = "";
                    }
                    else
                    {
                        var airlines = opponentRoutes.Select(r => r.Airline).Distinct();

                        if (airlines.Count() == 1)
                        {
                            this.RouteInformationText = string.Format("{0} also operates a route between {1} and {2}", airlines.ElementAt(0).Profile.Name, destination1.Profile.Name, destination2.Profile.Name);
                        }
                        else
                        {
                            this.RouteInformationText = string.Format("{0} other airlines do also operate a route between {1} and {2}", airlines.Count(), destination1.Profile.Name, destination2.Profile.Name);
                        }
                    }
                }
            }
        }
Exemplo n.º 29
0
        private void btnBuyAsSubsidiary_Click(object sender, RoutedEventArgs e)
        {
            AirlinesMVVM airline = this.SelectedAirline;

            double buyingPrice = airline.Airline.getValue() * 100000 * 1.10;

            WPFMessageBoxResult result = WPFMessageBox.Show(Translator.GetInstance().GetString("MessageBox", "2113"), string.Format(Translator.GetInstance().GetString("MessageBox", "2113", "message"), airline.Airline.Profile.Name, buyingPrice), WPFMessageBoxButtons.YesNo);

            if (result == WPFMessageBoxResult.Yes)
            {
                List <AirlineLogo> oldLogos = airline.Airline.Profile.Logos;
                string             oldColor = airline.Airline.Profile.Color;

                //creates independent airlines for each subsidiary
                while (airline.Airline.Subsidiaries.Count > 0)
                {
                    SubsidiaryAirline subAirline = airline.Airline.Subsidiaries[0];

                    subAirline.Airline = null;

                    airline.Airline.removeSubsidiaryAirline(subAirline);
                }

                if (airline.Airline.License > GameObject.GetInstance().HumanAirline.License)
                {
                    GameObject.GetInstance().HumanAirline.License = airline.Airline.License;
                }

                SubsidiaryAirline sAirline = new SubsidiaryAirline(GameObject.GetInstance().HumanAirline, airline.Airline.Profile, airline.Airline.Mentality, airline.Airline.MarketFocus, airline.Airline.License, airline.Airline.AirlineRouteFocus);

                AirlineHelpers.SwitchAirline(airline.Airline, sAirline);

                GameObject.GetInstance().HumanAirline.addSubsidiaryAirline(sAirline);

                AirlineHelpers.AddAirlineInvoice(GameObject.GetInstance().HumanAirline, GameObject.GetInstance().GameTime, Invoice.InvoiceType.Airline_Expenses, -buyingPrice);

                Airlines.RemoveAirline(airline.Airline);
                Airlines.AddAirline(sAirline);

                sAirline.Profile.Logos = oldLogos;
                sAirline.Profile.Color = oldColor;

                foreach (AirlinePolicy policy in airline.Airline.Policies)
                {
                    sAirline.addAirlinePolicy(policy);
                }

                sAirline.Money      = airline.Airline.Money;
                sAirline.StartMoney = airline.Airline.Money;

                sAirline.Fees = new AirlineFees();

                PageNavigator.NavigateTo(new PageAirline(GameObject.GetInstance().HumanAirline));
            }
        }
Exemplo n.º 30
0
        public PageAirlines()
        {
            var airlines = Airlines.GetAllAirlines();

            this.MostGates    = airlines.OrderByDescending(a => a.Airports.Sum(c => c.AirlineContracts.Where(ac => ac.Airline == a).Sum(ac => ac.NumberOfGates))).Take(Math.Min(5, airlines.Count)).ToList();
            this.MostRoutes   = airlines.OrderByDescending(a => a.Routes.Count).Take(Math.Min(airlines.Count, 5)).ToList();
            this.LargestFleet = airlines.OrderByDescending(a => a.Fleet.Count).Take(Math.Min(airlines.Count, 5)).ToList();

            this.Loaded += PageAirlines_Loaded;
            InitializeComponent();
        }
Exemplo n.º 31
0
 internal void ConvertToSubAirlines(Airlines airlines)
 {
     this.service.CreateSubAirlines(airlines);
     this.RefreshView();
 }
Exemplo n.º 32
0
 internal void ConvertToMasterAirlines(Airlines airlines)
 {
     this.service.RemoveSubAirlines(airlines);
     this.RefreshView();
 }
Exemplo n.º 33
0
 /// <summary>
 /// 创建分公司
 /// </summary>
 /// <param name="airlines"></param>
 /// <param name="service"></param>
 /// <returns></returns>
 internal Airlines CreateFilialeAirlines(Airlines airlines, IFleetService service)
 {
     // 创建并添加分公司
     var air = new Airlines
         {
             OwnerID = Guid.NewGuid(),
             MasterID = airlines.OwnerID,
             IATACode = airlines.IATACode,
             ICAOCode = airlines.ICAOCode,
             SubType = 0,
             IsValid = true,
             Status = (int)FilialeStatus.InUse,
         };
     airlines.SubAirlines.Add(air);
     service.EntityContainer.GetEntitySet<Owner>().Add(air);
     return air;
 }
Exemplo n.º 34
0
 /// <summary>
 /// 创建子公司
 /// </summary>
 /// <param name="airlines"></param>
 /// <param name="service"></param>
 internal void CreateSubAirlines(Airlines airlines, IFleetService service)
 {
     airlines.MasterID = service.CurrentAirlines.OwnerID;
     airlines.SubType = 1;
 }
Exemplo n.º 35
0
 /// <summary>
 /// 移除子公司
 /// </summary>
 /// <param name="airlines"></param>
 /// <param name="service"></param>
 internal void RemoveSubAirlines(Airlines airlines, IFleetService service)
 {
     airlines.SubType = 0;
     airlines.MasterID = null;
 }
Exemplo n.º 36
0
 /// <summary>
 /// 移除分公司
 /// </summary>
 /// <param name="airlines"></param>
 /// <param name="service"></param>
 internal void RemoveFilialeAirlines(Airlines airlines, IFleetService service)
 {
     // 如果分公司已经有相关操作,只能假删除
     if (airlines.SubOperationHistories.Any())
     {
         airlines.Status = (int)FilialeStatus.Deleted;
     }
     else
     {
         service.EntityContainer.GetEntitySet<Owner>().Remove(airlines);
     }
 }