コード例 #1
0
        public ActionResult LogIn(CustomerModel customer)
        {
            try
            {
                // TODO: Add insert logic here
                var cust = new CustomerImp
                {
                    Id        = Repo.GetCustomerByName(customer.FirstName + " " + customer.LastName).Id,
                    FirstName = customer.FirstName,
                    LastName  = customer.LastName,
                    //DefaultStoreId = StoreRepo.GetStoreByLocation(customer.DefaultStoreId).IDNumber
                };

                TempData["Current Customer"] = cust.Id;

                string name = Repo.GetCustomerById(cust.Id).FirstName + " " + Repo.GetCustomerById(cust.Id).LastName;

                TempData["Customer Name"] = name;
                TempData.Keep();


                return(RedirectToAction("Index", "Orders"));
            }
            catch
            {
                return(RedirectToAction("Create", "Customer"));
            }
        }
コード例 #2
0
 public static Customers Map(CustomerImp Customer) => new Customers
 {
     CustomerId     = Customer.Id,
     FirstName      = Customer.FirstName,
     LastName       = Customer.LastName,
     DefaultStoreId = Customer.DefaultStoreId
 };
コード例 #3
0
        public void AddCustomer(CustomerImp _customer)
        {
            var value = Mapper.Map(_customer);

            _db.Add(value);
            _db.SaveChanges();
            _customer.Id = value.CustomerId;
        }
コード例 #4
0
        // 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));
        }
コード例 #5
0
        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));
        }
コード例 #6
0
        public ActionResult Create(CustomerModel customer)
        {
            try
            {
                // TODO: Add insert logic here
                var cust = new CustomerImp
                {
                    FirstName      = customer.FirstName,
                    LastName       = customer.LastName,
                    DefaultStoreId = customer.DefaultStoreId
                };

                TempData["Current Customer"] = _db.Customers.Max(c => c.CustomerId) + 1;

                Repo.AddCustomer(cust);
                return(RedirectToAction("Index", "Orders"));
            }
            catch
            {
                return(View(customer));
            }
        }
コード例 #7
0
        public ActionResult Edit(CustomerModel Customer, IFormCollection collection)
        {
            try
            {
                int temp = int.Parse(TempData.Peek("Current Customer").ToString());
                Customer.Stores = StoreRepo.GetStores().ToList();
                // TODO: Add update logic here
                var customer = new CustomerImp
                {
                    Id             = Customer.CustomerId,
                    FirstName      = Customer.FirstName,
                    LastName       = Customer.LastName,
                    DefaultStoreId = Customer.DefaultStoreId
                };

                Repo.EditCustomer(customer);

                return(RedirectToAction("Index", "Orders"));
            }
            catch
            {
                return(View());
            }
        }
コード例 #8
0
 public void EditCustomer(CustomerImp _customer)
 {
     _db.Entry(_db.Customers.Find(_customer.Id)).CurrentValues.SetValues(Mapper.Map(_customer));
     _db.SaveChanges();
 }