Example #1
0
        public async Task <ActionResult> Pay(OrderModels orderDetails)
        {
            if (ModelState.IsValid)
            {
                var userId   = User.Identity.GetUserId();
                var newOrder = cartManager.CreateOrder(orderDetails, userId);
                var user     = await UserManager.FindByIdAsync(userId);

                var userOwnTable = db.Users.Where(x => x.Account_email == user.Email).SingleOrDefault();
                userOwnTable.AccountData.City = orderDetails.Order_city;
                if (TryUpdateModel(userOwnTable))
                {
                    db.SaveChanges();
                }

                await UserManager.UpdateAsync(user);

                cartManager.EmptyCart();

                //maileService.WyslaniePotwierdzenieZamowieniaEmail(newOrder);

                return(RedirectToAction("OrderConfirmation"));
            }
            else
            {
                return(View(orderDetails));
            }
        }
Example #2
0
        public async Task <ActionResult> Pay(Order orderDetail)
        {
            if (ModelState.IsValid)
            {
                var userId = User.Identity.GetUserId();

                var newOrder = cartManager.CreateOrder(orderDetail, userId);

                var user = await UserManager.FindByIdAsync(userId);

                TryUpdateModel(user.UserData);
                await UserManager.UpdateAsync(user);

                cartManager.EmptyCart();

                string url = Url.Action("ConfirmOrderEmail", "Cart", new { orderId = newOrder.OrderId, lastName = newOrder.LastName }, Request.Url.Scheme);

                BackgroundJob.Enqueue(() => Call(url));

                //mailService.SendConfirmationOrder(newOrder);

                return(RedirectToAction("ConfirmOrder"));
            }
            else
            {
                return(View(orderDetail));
            }
        }
        public async Task <ActionResult> Checkout(Order Orderdetalis)
        {
            if (ModelState.IsValid)
            {
                // Get user
                var userId = User.Identity.GetUserId();

                // Save Order
                CartManager cartManager = new CartManager(this.sessionManager, this.db);
                var         newOrder    = cartManager.CreateOrder(Orderdetalis, userId);

                // Update profile information
                var user = await UserManager.FindByIdAsync(userId);

                TryUpdateModel(user.UserData);
                await UserManager.UpdateAsync(user);

                // Empty cart
                cartManager.EmptyCart();

                return(RedirectToAction("OrderSuccess"));
            }
            else
            {
                return(View(Orderdetalis));
            }
        }
        public async Task <ActionResult> Purchase(Order orderDetails)
        {
            if (ModelState.IsValid)
            {
                var userId = User.Identity.GetUserId();

                var neworder = _cartManager.CreateOrder(orderDetails, userId);

                var user = await UserManager.FindByIdAsync(userId);

                TryUpdateModel(user.UserData);
                await UserManager.UpdateAsync(user);

                _cartManager.EmptyCart();

                var order =
                    _db.Orders.Include("OrderPositions")
                    .Include("OrderPositions.Product")
                    .SingleOrDefault(a => a.OrderId == neworder.OrderId);

                ConfirmOrderEmail email = new ConfirmOrderEmail
                {
                    To             = order.Email,
                    From           = "*****@*****.**",
                    TotalValue     = order.OrderValue,
                    OrderNumber    = order.OrderId,
                    OrderPositions = order.OrderPositions
                };
                email.Send();



                return(RedirectToAction("ValidateOrder"));
            }
            else
            {
                return(View(orderDetails));
            }
        }
Example #5
0
        public async Task <ActionResult> Pay(Order orderDetails)
        {
            if (ModelState.IsValid)
            {
                var userId   = User.Identity.GetUserId();
                var newOrder = cartManager.CreateOrder(orderDetails, userId);

                var user = await UserManager.FindByIdAsync(userId);

                TryUpdateModel(user.UserData);
                await UserManager.UpdateAsync(user);

                cartManager.EmptyCart();

                mailService.SendOrderConfirmationEmail(newOrder);


                return(RedirectToAction("OrderConfirmation"));
            }
            else
            {
                return(View(orderDetails));
            }
        }
        public async Task <ActionResult> Pay(Order details)
        {
            if (ModelState.IsValid)
            {
                var userId = User.Identity.GetUserId();


                var newOrder = cartMan.CreateOrder(details, userId);

                var user = await UserManager.FindByIdAsync(userId);

                TryUpdateModel(user.UserData);



                string url = Url.Action("OrderMailConfirm", "Cart", new { OrderItem = newOrder.OrderID, lastName = newOrder.LastName }, Request.Url.Scheme);
                BackgroundJob.Enqueue(() => Call(url));

                //    var zam = db.Order.Include("OrderItem").Include("OrderItem.Course").SingleOrDefault(o=>o.OrderID==newOrder.OrderID);

                //   OrderConfirmEmail mail = new OrderConfirmEmail();
                //   mail.To = newOrder.Email;
                //   mail.From = "*****@*****.**";
                //   mail.Value = newOrder.OrderValue;
                //   mail.Items = zam.OrderItem;
                //    mail.NrOrder = newOrder.OrderID;

                //    mail.Send();
                cartMan.EmptyCart();
                return(RedirectToAction("OrderConfirm"));
            }
            else
            {
                return(View(details));
            }
        }