3
respostas

erro classe ValidadorPacienteSemOutraConsultaNoDia

Após realizar as alterações sugeridas para corrigir o erro, esta retornando o seguinte erro:

java: cannot find symbol symbol: method existsByPacienteIdAndDataBetween(java.lang.Long,java.time.LocalDateTime,java.time.LocalDateTime) location: variable repository of type com.github.paulopcrp.healthcare.api.domain.consulta.ConsultaRepository

Segue minha classe:

package com.github.paulopcrp.healthcare.api.domain.consulta.validacoes.agendamentos;

import com.github.paulopcrp.healthcare.api.domain.ValidacaoException; import com.github.paulopcrp.healthcare.api.domain.consulta.ConsultaRepository; import com.github.paulopcrp.healthcare.api.domain.consulta.DadosAgendamentoConsulta; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component;

@Component public class ValidadorPacienteSemOutraConsultaNoDia implements ValidadorAgendamentoDeConsulta{

@Autowired
private ConsultaRepository repository;

public void validar(DadosAgendamentoConsulta dados) {
    var primeiroHorario = dados.data().withHour(7);
    var ultimoHorario = dados.data().withHour(18);
    var pacientePossuiOutraConsultaNoDia = repository.existsByPacienteIdAndDataBetween(dados.idPaciente(), primeiroHorario, ultimoHorario);

    if (pacientePossuiOutraConsultaNoDia) {
        throw new ValidacaoException("Paciente já possui uma consulta agendada neste dia e horario.");
    }
}

}

Tentei fazer de uma outra maneira mas ainda retorna erro.

3 respostas

Oi!

Tá dando erro de compilação dizendo que não tem o método existsByPacienteIdAndDataBetween na interface ConsultaRepository.

Mesmo criando ele, esta retornando erro.

Manda aqui o código da interface repository