Esempio n. 1
0
        public void RemoveFromStock(int quantity, GamesImp game, StoreImp store)
        {
            var value = _db.Inventory.First(i => i.GameId == game.Id && i.StoreId == store.IDNumber);

            value.GameRemaining -= quantity;
            _db.SaveChanges();
        }
Esempio n. 2
0
 public static Stores Map(StoreImp Store) => new Stores
 {
     StoreId  = Store.IDNumber,
     Location = Store.Location,
     DeluxePackageRemaining = Store.DeluxeInStock,
     ShippingCosts          = Store.ShippingCosts
 };
        public ActionResult Create(OrderModel order, ICollection <OrderGamesImp> placeholder)
        {
            try
            {
                var stores = _db.Stores.ToList();
                stores.AddRange(_db.Stores.ToList());
                order.Stores = new List <StoreImp>();

                if (order.Stores == null)
                {
                    foreach (var s in stores)
                    {
                        var tempStore = new StoreImp
                        {
                            IDNumber      = s.StoreId,
                            Location      = s.Location,
                            DeluxeInStock = s.DeluxePackageRemaining,
                            //Items = Mapper.Map(s.Inventory.First(i => i.StoreId == order.OrderStoreId)),
                        };
                        order.Stores.Add(tempStore);
                    }
                }


                // TODO: Add insert logic here
                var ord = new OrderImp
                {
                    StoreId   = order.OrderStoreId,
                    OrderDate = DateTime.Now,
                };

                ord.GamesInOrder = new List <OrderGamesImp>();
                ord.GamesInOrder = order.OrderGames;
                ord.OrderCost    = 0.00m;
                for (int i = 0; i < ord.GamesInOrder.Count; i++)
                {
                    ord.GamesInOrder[i].Game = GameRepo.GetGameById(ord.GamesInOrder[i].GameId);
                    //ord.OrderCost += item.Price;
                }
                ord.OrderCost = ord.TotalOrderCost();

                if (TempData.ContainsKey("Current Customer"))
                {
                    ord.OrderCustomer = int.Parse(TempData.Peek("Current Customer").ToString());
                }
                Repo.AddOrder(ord);

                foreach (var item in ord.GamesInOrder)
                {
                    Repo.AddOrderItem(item);
                }

                return(RedirectToAction("Index", "Orders"));
            }
            catch (InvalidOperationException ex)
            {
                return(RedirectToAction("Index", "Orders"));
            }
        }
Esempio n. 4
0
        public void AddStore(StoreImp store)
        {
            var value = Mapper.Map(store);

            _db.Add(value);
            _db.SaveChanges();
            store.IDNumber = value.StoreId;
        }
 public IEnumerable <OrderImp> GetOrderByDateReverse(StoreImp store)
 {
     //foreach (OrderImp r in _Data)
     //{
     //    yield return r;
     //}
     return(Mapper.Map(_db.Orders.OrderByDescending(r => r.OrderDate).Where(r => r.OrderStoreId == store.IDNumber)));
 }
        // GET: Orders/Create
        public ActionResult Create(OrderModel order)
        {
            TempData.Keep();
            if (TempData.ContainsKey("Current Customer")) //populates the fields'  initial values
            {
                CustomerImp cust = CustomerRepo.GetCustomerById(int.Parse(TempData.Peek("Current Customer").ToString()));
                order.OrderStoreId    = StoreRepo.GetStoreByLocation(cust.DefaultStoreId).IDNumber;
                order.OrderDate       = DateTime.Now;
                order.OrderCustomerId = int.Parse(TempData.Peek("Current Customer").ToString());
                order.OrderId         = _db.Orders.Max(o => o.OrderId) + 1;
            }
            else
            {
                return(RedirectToAction("Create", "Customer"));
            }

            if (order.Stores == null)
            {
                var stores = _db.Stores.ToList();
                order.Stores = new List <StoreImp>();

                foreach (var s in stores)
                {
                    var tempStore = new StoreImp
                    {
                        IDNumber      = s.StoreId,
                        Location      = s.Location,
                        DeluxeInStock = s.DeluxePackageRemaining,
                        //Items = Mapper.Map(s.Inventory.First(i => i.StoreId == order.OrderStoreId)),
                    };
                    order.Stores.Add(tempStore);
                }
            }

            List <OrderGames> OrderItems = new List <OrderGames>();

            OrderItems.AddRange(_db.OrderGames.Where(o => o.OrderId == order.OrderId).ToList());
            order.OrderGames = new List <OrderGamesImp>();

            foreach (var i in OrderItems)
            {
                var tempOrderGames = new OrderGamesImp
                {
                    OrderId      = i.OrderId,
                    GameId       = i.GameId,
                    Price        = i.Price,
                    GameQuantity = i.GameQuantity,
                };
                order.OrderGames.Add(tempOrderGames);
            }

            return(View(order));
        }
        public ActionResult AddGames(OrderModel Order, ICollection <OrderImp> placeholder)
        {
            if (Order.OrderGames == null)
            {
                Order.OrderGames = new List <OrderGamesImp>();
            }

            Order.NextOrderGame.Game      = GameRepo.GetGameById(Order.NextOrderGame.GameId);
            Order.NextOrderGame.Price     = Order.NextOrderGame.GetCostOfPurchase();
            Order.NextOrderGame.Game.Name = Order.NextOrderGame.Game.Name;
            Order.NextOrderGame.OrderId   = _db.Orders.Max(o => o.OrderId) + 1;

            //var OrderItems = new List<OrderGames>();
            //OrderItems.AddRange(_db.OrderGames.Where(o => o.OrderId == _db.Orders.Max(r => r.OrderId) + 1).ToList());

            if (TempData.ContainsKey("Current Customer")) //populates the fields'  initial values
            {
                CustomerImp cust = CustomerRepo.GetCustomerById(int.Parse(TempData.Peek("Current Customer").ToString()));
                Order.OrderStoreId    = StoreRepo.GetStoreByLocation(cust.DefaultStoreId).IDNumber;
                Order.OrderDate       = DateTime.Now;
                Order.OrderCustomerId = int.Parse(TempData.Peek("Current Customer").ToString());
                Order.OrderId         = _db.Orders.Max(o => o.OrderId) + 1;
            }

            Order.OrderCost = Order.NextOrderGame.Price + Order.OrderCost;
            Order.OrderGames.Add(Order.NextOrderGame);

            if (Order.Stores == null)
            {
                var stores = _db.Stores.ToList();
                Order.Stores = new List <StoreImp>();

                foreach (var s in stores)
                {
                    var tempStore = new StoreImp
                    {
                        IDNumber      = s.StoreId,
                        Location      = s.Location,
                        DeluxeInStock = s.DeluxePackageRemaining,
                        //Items = Mapper.Map(s.Inventory.First(i => i.StoreId == order.OrderStoreId)),
                    };
                    Order.Stores.Add(tempStore);
                }
            }

            return(View("Create", Order));
        }
        public ActionResult SelectStore(StoreModel store)
        {
            try
            {
                // TODO: Add insert logic here
                var st = new StoreImp
                {
                    IDNumber = store.StoreId,
                    Location = store.Location
                };

                TempData["Store Selected"] = st.IDNumber;
                TempData.Keep();

                return(RedirectToAction("Details", "Orders"));
            }
            catch
            {
                return(RedirectToAction("Index", "Orders"));
            }
        }
Esempio n. 9
0
        public InventoryImp GetInventory(GamesImp game, StoreImp store)
        {
            var value = _db.Inventory.First(i => i.GameId == game.Id && i.StoreId == store.IDNumber);

            return(Mapper.Map(value));
        }
 public IEnumerable <OrderImp> GetOrderByCostReverse(StoreImp store)
 {
     return(Mapper.Map(_db.Orders.OrderByDescending(r => r.OrderCost).Where(r => r.OrderStoreId == store.IDNumber)));
 }