public async Task <IActionResult> Deposit(MovementViewModel model) { if (!ModelState.IsValid) { return(RedirectToAction("Index", "Client")); } var product = await _productsService.GetProductDetailById(model.Products.Id); if (product == null) { return(RedirectToAction("Index")); } else { var movement = new Movements { amount = model.amount, date = DateTime.Now, Products = await _productsService.GetProductDetailById(model.Products.Id), MovementsType = await _movementTypeService.GetByType(1), status = 1 }; var successful = await _movementService.AddAsync(movement); if (!successful) { return(BadRequest("No se pudo efectuar el deposito.")); } _productsService.UpdateProductBalanceById(model.Products.Id, model.amount); return(RedirectToAction("Index", "Products", new { ClientId = product.Client.Id, product.Id })); } }