public OrdersVM(OrderManagerModel model)
        {
            this.model = model;
            model.OrderUpdateSuccess += this.UpdateResultsSuccess;
            model.OrderUpdateFailed  += this.UpdateResultsFailed;
            updaterVM = new UpdaterVM(model.UpdaterModel);


            States = new ObservableCollection <OrderState>()
            {
                new OrderState(OrderStates.Open),
                new OrderState(OrderStates.Export),
                new OrderState(OrderStates.Archive),
                new OrderState(OrderStates.ShipReady),
                new OrderState(OrderStates.Shipped),
                new OrderState(OrderStates.Service),
                new OrderState(OrderStates.OnHold),
                new OrderState(OrderStates.ASAP),
                new OrderState(OrderStates.Cancelled),
                new OrderState(OrderStates.Reorders)
            };

            StatesList = new ObservableCollection <string>(model.StringStates);

            MarketList.Add("Amazon US");
            MarketList.Add("Amazon CA");
            MarketList.Add("Amazon UK");
            MarketList.Add("Website");
            MarketList.Add("eBay");

            SelectedState         = States[(int)OrderStates.Open];
            this.PropertyChanged += OrdersVM_PropertyChanged;
        }
Exemple #2
0
 /// <summary>
 /// Adds the products.
 /// </summary>
 /// <param name="index">The index.</param>
 /// <param name="count">The count.</param>
 private void AddProducts(int index, int count)
 {
     for (int i = index; i < index + count; i++)
     {
         MarketList.Add(tempMarketList[i]);
     }
 }
Exemple #3
0
        public void Init()
        {
            Accounts.Init();

            // Open websocket connection to get Market lists for all accounts
            Task.Run(() => Bws.Connect()).Wait();
            Task.Run(() => Bws.SendRequest("{\"trading_times\":\"2015-09-14\"}")).Wait();
            var jsonTradingTimesResponse = Task.Run(() => Bws.StartListen()).Result;
            var tradingTime = JsonConvert.DeserializeObject <TradingTimesResponse>(jsonTradingTimesResponse);

            foreach (var market in tradingTime.trading_times.markets)
            {
                MarketList.Add(new MarketSubmarket(market));
                foreach (var submarket in market.submarkets)
                {
                    MarketList.Add(new MarketSubmarket(submarket));
                }
            }
            SelectedMarket = MarketList[0];
        }
Exemple #4
0
        /// <summary>
        /// Extract the results of a Betfair GetAllMarketsResp.data string to a MarketList object
        /// </summary>
        /// <param name="marketData"></param>
        /// <returns></returns>
        public MarketList ConvertToObject(string marketData)
        {
            if (marketData != null)
            {
                //Step 1 - Create the response object
                var marketList = new MarketList();

                //Step 2 - Clean up the break characters
                marketData = HelperMethods.ProtectBreakChars(marketData);

                //Step 3 - Split the markets out
                string[] marketStringArray = marketData.Split(":".ToCharArray());

                //Step 4 - Loop through the markets and split out the market items
                for (int x = 0; x < marketStringArray.Length; x++)
                {
                    //Check that the array is not empty
                    if (marketStringArray[x].Length > 0)
                    {
                        //Create the market object
                        var market = new Market();

                        //Step 5 - Split out the markets component items
                        string[] marketItemsStringArray = marketStringArray[x].Split("~".ToCharArray());

                        //Step 6 - Check that the array is equal or greater than 15
                        if (marketItemsStringArray.Length >= 15)
                        {
                            //Step 7 - Restore the break characters
                            for (int y = 0; y < marketItemsStringArray.Length; y++)
                            {
                                marketItemsStringArray[y] = HelperMethods.RestoreBreakChars(marketItemsStringArray[y]);
                            }

                            //Step 8 - Update the market values
                            market.marketId  = Convert.ToInt32(marketItemsStringArray[0]);
                            market.name      = marketItemsStringArray[1];
                            market.type      = marketItemsStringArray[2];
                            market.status    = (MarketStatus)Enum.Parse(typeof(MarketStatus), marketItemsStringArray[3]);
                            market.eventDate =
                                new DateTimeCalculations().UnixTimeStampToDateTime(
                                    Convert.ToDouble(marketItemsStringArray[4]));
                            market.menuPath                 = marketItemsStringArray[5];
                            market.eventHierarchy           = HelperMethods.SplitToInt32Array("/", marketItemsStringArray[6]);
                            market.betDelay                 = Convert.ToInt32(marketItemsStringArray[7]);
                            market.exchangeId               = Convert.ToInt32(marketItemsStringArray[8]);
                            market.country                  = marketItemsStringArray[9];
                            market.apiMarketDataLastRefresh = Convert.ToInt64(marketItemsStringArray[10]);
                            market.numberOfRunners          = Convert.ToInt32(marketItemsStringArray[11]);
                            market.numberOfWinners          = Convert.ToInt32(marketItemsStringArray[12]);
                            market.totalAmountMatched       = Convert.ToDouble(marketItemsStringArray[13]);
                            if (marketItemsStringArray[14].ToLower() == "y")
                            {
                                market.bspMarket = true;
                            }
                            if (marketItemsStringArray[15].ToLower() == "y")
                            {
                                market.turningInPlay = true;
                            }

                            //Step 9 - Add the new market item to the response object
                            marketList.Add(market);
                        }
                    }
                }

                //Step 10 - Sort the list items
                marketList.Sort(new MarketDateComparer());

                //Step 11 - Done
                return(marketList);
            }
            return(null);
        }