public async Task <ActionResult> Delete(string symbol = "test", bool saveChangesError = false) { ViewBag.Message = "Remove Stock From Watch List"; var stockSymbols = await StockSymbolProcessor.LoadSymbols(); bool stockExists = stockSymbols.Exists(x => x == symbol.Trim().ToUpper()); if (stockExists == false) { return(RedirectToAction("WatchList")); } if (saveChangesError) { ViewBag.ErrorMessage = "Delete failed. Try again, and if the problem persists see your system administrator."; } var stock = stockSymbols.Find(x => x == symbol.Trim().ToUpper()); StockSymbolModel stockToDelete = new StockSymbolModel { Symbol = stock }; return(View(stockToDelete)); }
public ActionResult Add(Models.StockSymbolModel stock) { if (ModelState.IsValid) { StockSymbolProcessor.SaveStockSymbol(stock.Symbol.Trim().ToUpper()); return(RedirectToAction("WatchList")); } return(View()); }
public ActionResult Delete(StockSymbolModel stock) { if (ModelState.IsValid) { StockSymbolProcessor.RemoveStockFromList(stock.Symbol); return(RedirectToAction("WatchList")); } return(View()); }
public ActionResult WatchList() { ViewBag.Message = "Stocks in Watch List"; var data = StockSymbolProcessor.LoadSymbols(); List <StockSymbolModel> stocks = new List <StockSymbolModel>(); foreach (var symbol in data) { stocks.Add(new StockSymbolModel { Symbol = symbol.StockSymbol }); } return(View(stocks)); }
public async Task <ActionResult> ListDetails() { ViewBag.Message = "Stock Watch List Details"; var stockSymbols = await StockSymbolProcessor.LoadSymbols(); //Return a list of StockModel from DashboardData.Library.Models var stockDetailList = new List <StockModel>(); try { stockDetailList = await StockDetailProcessor.GetStockDetails(stockSymbols); } catch (Exception ex) { Debug.WriteLine(ex); } //Map returned list to StockDetailModel List <StockDetailModel> stockDetailResults = new List <StockDetailModel>(); foreach (var stock in stockDetailList) { stockDetailResults.Add(new StockDetailModel { Symbol = stock.Symbol, DisplayName = stock.DisplayName, RegularMarketPrice = stock.RegularMarketPrice, FiftyDayAverage = stock.FiftyDayAverage, TwoHundredDayAverage = stock.TwoHundredDayAverage, MarketCap = stock.MarketCap, FullExchangeName = stock.FullExchangeName, FiftyTwoWeekLow = stock.FiftyTwoWeekLow, FiftyTwoWeekHigh = stock.FiftyTwoWeekHigh }); } //Sort list by market cap (descending) stockDetailResults.Sort((s1, s2) => s2.MarketCap.CompareTo(s1.MarketCap)); return(View(stockDetailResults)); }
public ActionResult ListDetails() { ViewBag.Message = "Stock Watch List Details"; var stockSymbols = StockSymbolProcessor.LoadSymbols(); List <string> stockSymbolStr = new List <string>(); foreach (var stock in stockSymbols) { stockSymbolStr.Add(stock.StockSymbol.Trim().ToUpper()); } //Return a list of StockModel from DashboardData.Library.Models var stockDetailList = StockDetailProcessor.GetStockDetails(stockSymbolStr).Result; //Map returned list to StockDetailModel List <StockDetailModel> stockDetailResults = new List <StockDetailModel>(); foreach (var stock in stockDetailList) { stockDetailResults.Add(new StockDetailModel { Symbol = stock.Symbol, DisplayName = stock.DisplayName, RegularMarketPrice = stock.RegularMarketPrice, FiftyDayAverage = stock.FiftyDayAverage, TwoHundredDayAverage = stock.TwoHundredDayAverage, MarketCap = stock.MarketCap, FullExchangeName = stock.FullExchangeName, FiftyTwoWeekLow = stock.FiftyTwoWeekLow, FiftyTwoWeekHigh = stock.FiftyTwoWeekHigh }); } //Sort list by market cap (descending) stockDetailResults.Sort((s1, s2) => s2.MarketCap.CompareTo(s1.MarketCap)); return(View(stockDetailResults)); }