Ejemplo n.º 1
0
        private async void AddStock_Click()
        {
            StockInfoItem stockItem = null;

            try
            {
                string localStockNum = StockNumber;

                stockItem = _localStockService.Get(localStockNum);
                var stockData = await _queryService.GetMultipleRealTimeStockAsync(new List <StockInfoItem> {
                    stockItem
                });

                // check if the stock is exist in the list
                if (stockData.Count > 0)
                {
                    StockListViewModel.AddStock(stockData);
                }

                stockItem.Order = _favoriteStockService.GetLastOrder(0);
                _favoriteStockService.Add(stockItem);
            }
            catch (FavoriteStockExistException e)
            {
                Dialog.ShowError(string.Format("目前 {0}({1}) 已經存在於清單內!", stockItem.Name, stockItem.Id));
            }
            catch (Exception e)
            {
                Dialog.ShowError(e.Message +
                                 (e.InnerException == null ? string.Empty :  " (detail : " + e.InnerException + ")"));
            }
            StockNumber = string.Empty;
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Start to load data
        /// </summary>
        public async Task LoadData()
        {
            StringBuilder str = new StringBuilder();

            try
            {
                var allFavorite = _favoriteStockService.GetAll();

                if (allFavorite.Count > 0)
                {
                    allFavorite = allFavorite.OrderBy(x => x.Order).ToList();

                    List <RealTimeStockItem> realTimeStockList = await _queryService.GetMultipleRealTimeStockAsync(allFavorite);

                    StockListViewModel.AddStock(realTimeStockList);
                }
            }
            catch (Exception e)
            {
                str.AppendLine(e.Message);
            }

            if (str.Length != 0)
            {
                Dialog.ShowError(str.ToString());
            }
        }
Ejemplo n.º 3
0
        private void RibbonWindow_Loaded(object sender, RoutedEventArgs e)
        {
            string dir = @"data/";

            if (!Directory.Exists(dir))
            {
                Directory.CreateDirectory(dir);
            }

            var csvLoader = new CsvLoader();

            string[] files = Directory.GetFiles(dir, "*.csv");
            foreach (var file in files)
            {
                string csvName = file.Split('/').Last();
                string symbol  = csvName.Substring(0, csvName.Length - 4);

                var data = csvLoader.LoadData(symbol);
                rawDataDict.Add(symbol, new ObservableCollection <StockInfo>(data));
                stockListVM.AddStock(data);
            }
        }