public ActionResult AddItemToCart(FormCollection fc) { int id = Convert.ToInt32(fc["itemId"]), quantityOfItems = 0; try { quantityOfItems = Convert.ToInt32(fc["quantity"]); } catch (ArgumentOutOfRangeException) { quantityOfItems = 1; } var clientsCart = (Cart)Session["Cart"]; Item item = _itemDistributionControl.GetItem(id); if (item == null) { return(RedirectToAction("Cart")); } if (clientsCart == null) { clientsCart = new Cart() { ItemsInCart = new List <ItemsInCart>() }; Session["Cart"] = clientsCart; } if ((clientsCart.ItemsInCart.FirstOrDefault(i => i.Item.Id == id) != null)) { clientsCart.ItemsInCart.Where(x => x.Item.Id == id).ToList() .ForEach(y => y.Quantity += quantityOfItems); } else { ItemsInCart cartItem = new ItemsInCart() { Cart = (Cart)Session["Cart"], Item = item, Quantity = quantityOfItems }; clientsCart.ItemsInCart.Add(cartItem); } clientsCart.CartsPrice = clientsCart.CountCartsPrice(clientsCart.ItemsInCart); Session["Count"] = clientCartControl.CountItemsInCart(clientsCart.ItemsInCart); return(Json(new { message = item.Name + "(" + quantityOfItems + ")" + " buvo prideta i krepseli ", itemCount = Session["Count"] })); }
//GET: Admin/ItemInformation public ActionResult ItemInformation(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Item item = _itemDistributionControl.GetItem(id.Value); if (item == null) { return(HttpNotFound()); } return(View(item)); }
public PaymentInformation ConfirmPayment(int clientId, Cart cart, string cardNumber, int expirationYear, int expirationMonth, string cardHolder, string cvv) { using (var dbContextScope = _dbContextScopeFactory.Create()) { var foundClientObject = _clientRepository.GetClient(clientId); if (foundClientObject == null) { throw new Exception($"There was no client found with the {clientId} id"); } // Assigning the values to the required fields of the card foundClientObject.Card.CardNumber = cardNumber; foundClientObject.Card.CardExpirationYear = expirationYear; foundClientObject.Card.CardExpirationMonth = expirationMonth; foundClientObject.Card.CardHolder = cardHolder; foundClientObject.Card.CVV = cvv; var paymentInformation = _httpPaymentControl.InitializePayment(foundClientObject.Card, cart.CartsPrice); cart.ItemsInCart.ToList().ForEach(x => x.Item = _itemDistributionControl.GetItem(x.Item.Id)); var order = new ClientOrders { Cart = cart, OrderDate = DateTime.Now, OrderStatus = paymentInformation.OrderStatus }; foundClientObject.ClientOrders.Add(order); _clientRepository.EditClient(foundClientObject); // Making cards information default or blank (for now) foundClientObject.Card.CardNumber = "4111111111111111"; foundClientObject.Card.CardExpirationYear = 2021; foundClientObject.Card.CardExpirationMonth = 1; foundClientObject.Card.CardHolder = "Vardenis Pavardenis"; foundClientObject.Card.CVV = "111"; dbContextScope.SaveChanges(); return(paymentInformation); } }