public IActionResult Put([FromBody] MateriaPrima materiaPrima) { try { if (materiaPrima.Quantidade <= 0) { return(BadRequest("Valores iguais ou menores que zero não permitidos.")); } if (materiaPrima.UnidadeDeMedida != 0 && (int)materiaPrima.UnidadeDeMedida != 1 && (int)materiaPrima.UnidadeDeMedida != 2) { return(BadRequest($"Referência {materiaPrima.UnidadeDeMedida} para Unidade de Medida não existe. Referências aceitas: 0(Grama), 1(Mililitro) e 2(Unidade)")); } var materiaPrimaEncontrada = _repoMateriaPrima.Selecionar(materiaPrima.Id); if (materiaPrimaEncontrada == null) { return(NoContent()); } var retorno = _repoMateriaPrima.ValidarInativacao(materiaPrima); if (retorno == null) { return(BadRequest("Esta matéria prima está vinculada a um produto ativo.")); } _repoMateriaPrima.AlterarMateriaPrima(materiaPrima); return(Ok("Matéria Prima alterada com sucesso.")); } catch (System.Exception) { return(StatusCode(500)); } }