Exemple #1
0
        public void OnGet()
        {
            var serializer = new JavaScriptSerializer();
            var value      = Request.Cookies[CookieName];
            var cartItems  = serializer.Deserialize <List <CartItem> >(value);

            foreach (var item in cartItems)
            {
                item.CalculateTotalItemPrice();
            }
            CartItems = _productQuery.CheckInventoryStatus(cartItems);
        }
Exemple #2
0
        public IActionResult OnPostPay(int paymentMethod)
        {
            var cart = _cartService.Get();

            cart.SetPaymentMethod(paymentMethod);

            var result = _productQuery.CheckInventoryStatus(cart.Items);

            if (result.Any(x => !x.IsInStock))
            {
                return(RedirectToPage("/Cart"));
            }

            var orderId = _orderApplication.PlaceOrder(cart);

            if (paymentMethod == 1)
            {
                var paymentResponse = _zarinPalFactory.CreatePaymentRequest(
                    cart.PayAmount.ToString(CultureInfo.InvariantCulture), "", "",
                    "خرید از درگاه لوازم خانگی و دکوری", orderId);

                return(Redirect(
                           $"https://{_zarinPalFactory.Prefix}.zarinpal.com/pg/StartPay/{paymentResponse.Authority}"));
            }

            var paymentResult = new PaymentResult();

            return(RedirectToPage("/PaymentResult",
                                  paymentResult.Succeeded(
                                      "سفارش شما با موفقیت ثبت شد. پس از تماس کارشناسان ما و پرداخت وجه، سفارش ارسال خواهد شد.", null)));
        }
        public void OnGet()
        {
            var serializer = new JavaScriptSerializer();
            var value      = Request.Cookies[CookieName];

            if (value == "[]")
            {
                IsCartEmpty = true;
                Message     = "سبد خرید شما خالی می باشد.";
            }
            else
            {
                IsCartEmpty = false;
            }
            var cartItems = serializer.Deserialize <List <CartItem> >(value);

            foreach (var item in cartItems)
            {
                item.CalculateTotalItemPrice();
            }

            CartItems = _productQuery.CheckInventoryStatus(cartItems);
        }
Exemple #4
0
        public IActionResult OnPostPay(int paymentMethod, PersonalInfoItemViewModel personalInfo)
        {
            var cart = _cartService.Get();

            cart.SetPaymentMethod(paymentMethod);


            var result = _productQuery.CheckInventoryStatus(cart.Items);

            if (result.Any(x => !x.IsInStock))
            {
                return(RedirectToPage("/ShoppingCart"));
            }

            var orderId         = _orderApplication.PlaceOrder(cart, personalInfo);
            var accountMobile   = _authHelper.CurrentAccountInfo().Mobile;
            var accountUserName = _authHelper.CurrentAccountInfo().Username;


            if (paymentMethod == 1)
            {
                var paymentResult = new PaymentResult();
                var creationDate  = DateTime.Now.ToFarsi();

                Response.Cookies.Delete(CookieName);

                return(RedirectToPage("/PaymentResult", paymentResult.Succeeded(
                                          "سفارش شما ثبت شد. پس از تماس کارشناسان ما و پرداخت وجه سفارش ارسال خواهد شد.", null, creationDate)));
            }
            else
            {
                var paymentResponse = _zarinPalFactory.CreatePaymentRequest(

                    cart.PayAmount.ToString(CultureInfo.InvariantCulture),
                    accountMobile,
                    accountUserName,
                    "خرید از فروشگاه هنری",
                    orderId

                    );

                return(Redirect($"https://{_zarinPalFactory.Prefix}.zarinpal.com/pg/StartPay/{paymentResponse.Authority}"));
            }
        }