public List <StockMaster> GetActiveStock()
        {
            _StockDbEntities = new StockDbEntities();
            var stockmasters = _StockDbEntities.StockMasters.Where(x => x.IsActive == true).ToList();

            return(stockmasters);
        }
        public List <StockModel> GetStock()
        {
            _StockDbEntities = new StockDbEntities();
            List <StockModel> stockModels = new List <StockModel>();
            var query = _StockDbEntities.StockMasters.ToList();

            query.ForEach(x =>
            {
                StockModel stockModel = new StockModel();
                stockModel.StockId    = x.StockId;
                stockModel.StockName  = x.StockName;
                stockModels.Add(stockModel);
            });
            return(stockModels);
        }
コード例 #3
0
        public OfferProvider(StockDbEntities dbContext, IMapper mapper)
        {
            if (dbContext == null)
            {
                throw new ArgumentNullException(nameof(dbContext));
            }
            if (mapper == null)
            {
                throw new ArgumentNullException(nameof(mapper));
            }

            _dbContext = dbContext;
            _mapper    = mapper;

#if DEBUG
            _dbContext.Database.Log = (a) => Debug.Write(a);
#endif
        }
 public bool AddStock(StockModel stockModel)
 {
     try
     {
         _StockDbEntities = new StockDbEntities();
         StockMaster stockMaster = new StockMaster();
         stockMaster.StockId   = stockModel.StockId;
         stockMaster.StockName = stockModel.StockName;
         stockMaster.BuyPrice  = stockModel.BuyPrice;
         stockMaster.Qty       = stockModel.Qty;
         stockMaster.IsActive  = stockModel.IsActive;
         _StockDbEntities.StockMasters.Add(stockMaster);
         _StockDbEntities.SaveChanges();
     }
     catch (Exception ex)
     {
         return(false);
     }
     return(true);
 }
        public List <StockModel> GetDashboardPortfolioData()
        {
            _StockDbEntities = new StockDbEntities();
            var stockmasters = _StockDbEntities.StockMasters.Where(x => x.IsActive == true).ToList();
            List <StockModel> stockModels = new List <StockModel>();

            stockmasters.ForEach(x => {
                var period = "daily";
                var p      = Period.Daily;
                if (period.ToLower() == "weekly")
                {
                    p = Period.Weekly;
                }
                else if (period.ToLower() == "monthly")
                {
                    p = Period.Monthly;
                }
                var startDate = DateTime.Now.AddDays(-3);
                var endDate   = DateTime.Now;

                var stockData = Yahoo.GetHistoricalAsync(x.StockId, startDate, endDate, p).Result;
                if (stockData.Count > 0)
                {
                    StockModel stockModel    = new StockModel();
                    var lastRecord           = stockData.LastOrDefault();
                    stockModel.StockId       = x.StockId;
                    stockModel.StockName     = x.StockName;
                    stockModel.BuyPrice      = x.BuyPrice;
                    stockModel.Qty           = x.Qty;
                    stockModel.TotalInvested = x.Qty * x.BuyPrice;
                    stockModel.CurrentValue  = x.Qty * (int)lastRecord.AdjustedClose;
                    stockModel.TotalGain     = stockModel.CurrentValue - stockModel.TotalInvested;
                    stockModels.Add(stockModel);
                }
            });
            return(stockModels.OrderBy(c => c.TotalGain).ToList());
        }