public Inventario Actualizar(Inventario algoParaActualizar) { var resultado = _inventarioRepository.Actualizar(algoParaActualizar); if (resultado == null) { return(null); } _inventarioRepository.SaveChanges(); return(resultado); }
public bool AplicaAcciónDeInventario(AcciónDeInventario acción) { var transacción = _context.Database.BeginTransaction(); try { foreach (AcciónDeInventarioDetalle Tupla in acción.AcciónDeInventarioDetalles) { var respuesta = _inventarioRepository.TraerUnoAsync(a => a.BodegaId == acción.BodegaId && a.ArtículoId == Tupla.ArtículoId); respuesta.Result.Cantidad += Tupla.Cantidad * acción.Signo; _inventarioRepository.Actualizar(respuesta.Result); } _acciónDeInventarioRepository.ActualizaEstado(acción.AcciónDeInventarioId, EstadoAcciónDeInventarioEnum.Aplicada); transacción.Commit(); _context.SaveChanges(); } catch (Exception ex) { _logger.LogError(ex.Message); transacción.Rollback(); return(false); } return(true); }