Exemple #1
0
        public async Task PerformStockRequest(StockRequest s)
        {
            var ownerItem = await _context.OwnerInventory.
                            SingleOrDefaultAsync(r => r.ProductID == s.ProductID);

            var storeItem = await _context.StoreInventory.
                            Where(r => r.StoreID == s.StoreID).
                            SingleOrDefaultAsync(r => r.ProductID == s.ProductID);

            //Add product to store if not currently in Inventory.
            if (storeItem == null)
            {
                StoreInventory item = new StoreInventory {
                    StoreID = s.StoreID, ProductID = s.ProductID, StockLevel = s.Quantity
                };
                _context.StoreInventory.Add(item);
                await _context.SaveChangesAsync();
            }
            else
            {
                storeItem.StockLevel += s.Quantity;
            }

            //Decrease owner product stock level.
            ownerItem.StockLevel -= s.Quantity;

            // Remove stock request
            _context.StockRequests.Remove(s);

            await _context.SaveChangesAsync();
        }
Exemple #2
0
 public async Task SaveToCart(Purchase p)
 {
     p.DateOfPurchase = DateTime.Now;
     _context.Update(p);
     await _context.SaveChangesAsync();
 }