public async Task <WatchListModel> NewWatchList(NewWatchListModel watchListModel, CancellationToken cancellationToken)
        {
            var userId    = this.currentPrincipal.GetUserId();
            var watchList = new WATCH_LIST
            {
                WATCH_LIST_NAME = watchListModel.Name,
                TIRIRIT_USER_ID = userId.Value
            };

            dbContext.WatchLists.Add(watchList);

            if (watchListModel.Stocks.Any())
            {
                var stocks = await dbContext.Stocks
                             .Where(stock => watchListModel.Stocks.Contains(stock.SYMBOL))
                             .ToListAsync();

                stocks.ForEach(stock =>
                {
                    var stocks = new WATCH_LIST_STOCK
                    {
                        Ref_WatchList = watchList,
                        STOCK_ID      = stock.STOCK_ID
                    };
                    dbContext.WatchListStocks.Add(stocks);
                });
            }

            await dbContext.SaveChangesAsync(cancellationToken);

            return(await GetWatchList(watchList.WATCH_LIST_ID, cancellationToken));
        }
Exemple #2
0
 public void Watch(params string[] properties)
 {
     if (properties.Length > 1)
     {
         foreach (string i in properties)
         {
             WATCH_LIST.Add(i);
         }
     }
 }