public async Task <IActionResult> Checkeout(CheckeoutViewModel model)
        {
            if (ModelState.IsValid)
            {
                int basketId = await _basketViewModelService.GetOrCreateBasketIdAsync();

                //process the payment
                //place the ordeer
                var adress = new Address()
                {
                    City    = model.City,
                    Country = model.Country,
                    Street  = model.Street,
                    State   = model.State,
                    ZipCode = model.ZipCode
                };
                await _orderService.CreateOrderAsync(basketId, adress);

                // Delete the basket

                return(RedirectToAction("Success"));
            }

            model.BasketItems = await _basketViewModelService.GetBasketItems();

            return(View(model));
        }
        public async Task <IActionResult> Checkeout()
        {
            var vm = new CheckeoutViewModel()
            {
                BasketItems = await _basketViewModelService.GetBasketItems()
            };

            return(View(vm));
        }