Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Validação motivo cancelamento da consulta

Criei a classe abaixo para validar o motivo do cancelamento. Gostaria que a API retornasse uma mensagem caso recebesse um motivo de cancelamento diferente de PACIENTE_DESISTIU e MEDICO_CANCELOU e OUTROS.

@Component public class ValidadorMotivoCancelamentoConsulta implements ValidadorCancelamentoDeConsultas {

public void validar(DadosCancelamentoConsulta dados){
    if ( !(dados.motivo().toString().equals("PACIENTE_DESISTIU")) && !(dados.motivo().toString().equals("MEDICO_CANCELOU")) && !(dados.motivo().toString().equals("OUTROS")) ){
        throw new ValidacaoException("**Motivo de cancelamento inválido.**");            
    }

    if ( (dados.motivo().equals("")) || (dados.motivo()== null)  ){
        throw new ValidacaoException("**Motivo de cancelamento é obrigatório**.");
    }
}

}

Mas a verificação do ENUM antecede essa validação, como visto abaixo:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Sei que estamos desenvolvendo uma aplicação back end, mas seria possível modificar essa mensagem retornada quando se faz a verificação do ENUM ?

1 resposta
solução!

Oi!

Dá uma olhada nesse tópico que mostra como lidar com essa situação: https://cursos.alura.com.br/forum/topico-validar-enum-290990

Bons estudos!