public async Task <IActionResult> Put(int id, [FromBody] CompetenciaRequest request) { Competencia competencia = await _uow.Compentencias.Get(id); if (competencia == null) { return(NotFound(new AppResponse(true, "A competencia informada não existe."))); } competencia.Atualizar(request); if (!competencia.TaValido()) { return(BadRequest(new AppResponse(false, "Ocorreram erros de validação.", competencia.ObterErros()))); } else { bool existeComMesmoNome = await _uow.Compentencias.Existe(request.DisciplinaId, request.Nome, id); if (existeComMesmoNome) { return(BadRequest(new AppResponse(MSG_ERRO, false, new List <string> { MSG_COMPENTENCIA_JAEXISTE }))); } Disciplina disciplina = await _uow.Disciplinas.Get(request.DisciplinaId); if (disciplina == null) { return(BadRequest(new AppResponse(MSG_ERRO, false, new List <string> { MSG_DISCIPLINA_NAOEXISTE }))); } await _uow.CommitAsync(); return(Ok(new AppResponse(true, "Competência atualizada com sucesso.", competencia.ToDTO()))); } }