Ejemplo n.º 1
0
        public IActionResult Cart()
        {
            var currentUserId = HttpContext.Session.GetInt32("UserId");

            if (currentUserId == null)
            {
                ViewBag.Notification = "Login to add things to cart!";
                ViewBag.cart         = null;
                return(View());
            }
            else
            {
                ViewBag.products = _db.Products.ToList();
                var product = _db.Products.ToList();
                var cart    = _db.Cart.Where(x => x.UserId.Equals(currentUserId)).FirstOrDefault();
                if (cart == null)
                {
                    ViewBag.cart = null;
                }
                else
                {
                    var cartItems = _db.CartItem.Where(x => x.ShoppingCartId.Equals(cart.CartId)).ToList();
                    //var cartItems = _db.CartItem.ToList();
                    if (cartItems.Count > 0)
                    {
                        ViewBag.cart = 1;
                        var subtotal = 0;
                        foreach (var x in cartItems)
                        {
                            subtotal += x.Quantity * (int)GetProductById($"{x.ProductId}").Price;
                        }
                        var cartUser = new CartUser()
                        {
                            Cart = cart, CartItem = cartItems, Products = product, SubTotal = (short)subtotal
                        };
                        return(View(cartUser));
                    }
                    else
                    {
                        ViewBag.cart = null;
                    }
                }

                return(View());
            }
        }
Ejemplo n.º 2
0
        public IActionResult Checkout()
        {
            var currentUserId = HttpContext.Session.GetInt32("UserId");

            if (currentUserId != null)
            {
                var creditcard = _db.CreditCard.FromSqlRaw($"select * from CreditCard where userid = {currentUserId}");
                foreach (var x in creditcard)
                {
                    if (x.default_card == true)
                    {
                        ViewBag.Default_card_no    = x.cc_no;
                        ViewBag.Default_card_name  = x.cc_name;
                        ViewBag.Default_card_month = x.ExpMonth;
                        ViewBag.Default_card_year  = x.ExpYear;
                    }
                }
                var product = _db.Products.ToList();
                var cart    = _db.Cart.Where(x => x.UserId.Equals(currentUserId)).FirstOrDefault();
                if (cart == null)
                {
                    return(Redirect("/Shop"));
                }
                else
                {
                    var cartItems = _db.CartItem.Where(x => x.ShoppingCartId.Equals(cart.CartId)).ToList();


                    ViewBag.cart = 1;
                    var subtotal = 0;
                    foreach (var x in cartItems)
                    {
                        subtotal += x.Quantity * (int)GetProductById($"{x.ProductId}").Price;
                    }
                    var displayTotal = new CartUser()
                    {
                        Cart = cart, CartItem = cartItems, Products = product, SubTotal = (short)subtotal
                    };
                    return(View(displayTotal));
                }
            }

            return(View());
        }
Ejemplo n.º 3
0
        public IActionResult Checkout(string firstname, string number, int month, int year, bool isActive)
        {
            var currentUserId    = HttpContext.Session.GetInt32("UserId");
            var userexist        = _db.CreditCard.FromSqlRaw($"select * from CreditCard where UserId = {currentUserId}");
            var checkCCnumber    = _db.CreditCard.FromSqlRaw($"select * from CreditCard where cc_no = {number}");
            var checkbothCC      = _db.CreditCard.FromSqlRaw($"select * from CreditCard where UserId = {currentUserId} and cc_no = {number}");
            var number_generator = new Random();
            var cc_id            = number_generator.Next(1000, 9999);

            if (isActive == false)
            {
                checkout();
            }
            else
            {
                if (userexist.FirstOrDefault() == null)
                {
                    var addcard = new CreditCard
                    {
                        cc_id        = $"{cc_id}",
                        cc_name      = firstname,
                        cc_no        = number,
                        ExpMonth     = month,
                        ExpYear      = year,
                        default_card = true,
                        UserId       = $"{currentUserId}"
                    };
                    _db.CreditCard.Add(addcard);
                    _db.SaveChanges();
                    checkout();
                }
                else
                {
                    foreach (var y in userexist)
                    {
                        if (y.cc_no == number)
                        {
                            ViewBag.CheckoutNotOk = "True";
                            var product   = _db.Products.ToList();
                            var cart      = _db.Cart.Where(x => x.UserId.Equals(currentUserId)).FirstOrDefault();
                            var cartItems = _db.CartItem.Where(x => x.ShoppingCartId.Equals(cart.CartId)).ToList();
                            if (cartItems.Count > 0)
                            {
                                ViewBag.cart = 1;
                                var subtotal = 0;
                                foreach (var x in cartItems)
                                {
                                    subtotal += x.Quantity * (int)GetProductById($"{x.ProductId}").Price;
                                }
                                var displayTotal = new CartUser()
                                {
                                    Cart = cart, CartItem = cartItems, Products = product, SubTotal = (short)subtotal
                                };
                                return(View(displayTotal));
                            }
                        }
                        else
                        {
                            var addcard = new CreditCard
                            {
                                cc_id        = $"{cc_id}",
                                cc_name      = firstname,
                                cc_no        = number,
                                ExpMonth     = month,
                                ExpYear      = year,
                                default_card = false,
                                UserId       = $"{currentUserId}"
                            };
                            _db.CreditCard.Add(addcard);
                            _db.SaveChanges();
                            checkout();
                        }
                    }
                }
            }

            return(View());
        }