Пример #1
0
        public IActionResult AddProduct(Product product, int cid, string category, IFormFile file)
        {
            ECommerceManager mgr = new ECommerceManager(_connectionString);

            if (category == null)
            {
                product.CategoryId = cid;
            }
            else
            {
                int id = mgr.AddCategory(category);
                product.CategoryId = id;
            }
            string fileName = $"{Guid.NewGuid()}{Path.GetExtension(file.FileName)}";
            string fullPath = Path.Combine(_environment.WebRootPath, "uploadedfiles", fileName);

            using (FileStream stream = new FileStream(fullPath, FileMode.CreateNew))
            {
                file.CopyTo(stream);
            }
            product.FileName = fileName;
            User user = mgr.GetByEmail(User.Identity.Name);

            product.UserId = user.Id;
            mgr.AddProduct(product);
            return(Redirect("/home/index"));
        }
Пример #2
0
        public IActionResult ShowProduct(int id)
        {
            ECommerceManager mgr = new ECommerceManager(_connectionString);
            Product          p   = mgr.GetProductForId(id);

            return(View(p));
        }
Пример #3
0
        public IActionResult AddProduct()
        {
            ECommerceManager       mgr   = new ECommerceManager(_connectionString);
            IEnumerable <Category> names = mgr.GetCategories();

            return(View(names));
        }
Пример #4
0
        public IActionResult Index()
        {
            ECommerceManager       mgr        = new ECommerceManager(_connectionString);
            IEnumerable <Category> categories = mgr.GetCategories();

            return(View(categories));
        }
Пример #5
0
        public IActionResult GetProducts(int id)
        {
            ECommerceManager      mgr      = new ECommerceManager(_connectionString);
            IEnumerable <Product> products = mgr.GetProductsForCatId(id);

            return(Json(products));
        }
Пример #6
0
        public IActionResult DeleteItem(int scid, int pid)
        {
            ECommerceManager mgr = new ECommerceManager(_connectionString);

            mgr.DeleteItemFromShoppingCart(scid, pid);
            return(Redirect("/home/showcart"));
        }
Пример #7
0
        public IActionResult EditQuantity(int scid, int pid, int quantity)
        {
            ECommerceManager mgr = new ECommerceManager(_connectionString);

            mgr.UpdateItemInShoppingCart(scid, pid, quantity);
            return(Redirect("/home/showcart"));
        }
Пример #8
0
        public IActionResult ShowCart()
        {
            ECommerceManager mgr = new ECommerceManager(_connectionString);

            string id = HttpContext.Session.GetString("id");

            if (id != null)
            {
                List <ShoppingCartViewModel>   vm    = new List <ShoppingCartViewModel>();
                IEnumerable <ShoppingCartItem> items = mgr.GetShoppingCartItemsForShoppingCartId(int.Parse(id));
                foreach (ShoppingCartItem s in items)
                {
                    Product p = mgr.GetProductForId(s.ProductId);
                    vm.Add(new ShoppingCartViewModel
                    {
                        ShoppingCart = s,
                        Product      = p,
                        Total        = s.Quantity * p.Amount,
                    });
                }
                return(View(vm));
            }
            else
            {
                return(Redirect("/home/index"));
            }
        }
Пример #9
0
        public IActionResult Signup(User user, string password)
        {
            var db = new ECommerceManager(_connectionString);

            db.AddUser(user, password);
            return(RedirectToAction("Login", "Account"));
        }
Пример #10
0
        public IActionResult Login(string email, string password)
        {
            var db   = new ECommerceManager(_connectionString);
            var user = db.Login(email, password);

            if (user == null)
            {
                return(RedirectToAction("Login"));
            }

            var claims = new List <Claim>
            {
                new Claim("user", email)
            };

            HttpContext.SignInAsync(new ClaimsPrincipal(
                                        new ClaimsIdentity(claims, "Cookies", "user", "role"))).Wait();
            return(Redirect("/home/addProduct"));
        }
Пример #11
0
        public IActionResult AddItemtoCart(int productid, int quantity)
        {
            ECommerceManager mgr  = new ECommerceManager(_connectionString);
            ShoppingCartItem item = new ShoppingCartItem();

            item.ProductId = productid;
            item.Quantity  = quantity;
            string id = HttpContext.Session.GetString("id");

            if (id != null)
            {
                item.ShoppingCartId = int.Parse(id);
            }
            else
            {
                int scid = mgr.AddShoppingCart();
                HttpContext.Session.SetString("id", $"{scid}");
                item.ShoppingCartId = scid;
            }
            mgr.AddItemToShoppingCart(item);
            int shoppingcartid = item.ShoppingCartId;

            return(Json(shoppingcartid));
        }