public ActionResult Create([Bind(Include = "Purchase, UserId, ProductIds")] CreatePurchaseViewModel viewModel)
        {
            var user = db.Users.Find(viewModel.UserId);

            viewModel.Purchase.User = user;

            ModelState.Remove("Purchase.User");
            ModelState.Remove("Purchase.Product");

            if (ModelState.IsValid)
            {
                var date = DateTime.UtcNow.Date;
                viewModel.Purchase.Date = date;

                foreach (var product_id in viewModel.ProductIds)
                {
                    var product = db.Products.Find(product_id);
                    viewModel.Purchase.Product = product;

                    db.Purchases.Add(viewModel.Purchase);
                    db.SaveChanges();
                }
                return(RedirectToAction("Index"));
            }

            return(RedirectToAction("Index", "Error", new { message = "One or more inputs were invalid. Please try again." }));
        }
Exemple #2
0
        public async Task <IActionResult> CreatePurchaseAsync([FromBody] CreatePurchaseViewModel createPurchaseViewModel)
        {
            var createPurchaseDTO = _mapper.Map <CreatePurchaseDTO>(createPurchaseViewModel);

            var purchaseDTO = await _purchaseService.CreatePurchaseAsync(createPurchaseDTO);

            var purchase = _mapper.Map <PurchaseViewModel>(purchaseDTO);

            return(Ok(purchase));
        }
Exemple #3
0
        public ActionResult Create(CreatePurchaseViewModel model)
        {
            _context.Purchases.Add(new Purchase
            {
                IdPurchase = model.IdPurchase,
                IdUser     = model.IdUser,
                IdGames    = model.IdGames,
                Payment    = model.Payment
            });
            _context.SaveChanges();

            return(RedirectToAction("Index", "Basket"));
        }