Ola
estou com uma duvida
já verifiquei os espaços que tem na query e mesmo assim o erro persiste
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'consultaController': Unsatisfied dependency expressed through field 'agenda': Error creating bean with name 'agendaDeConsultas': Unsatisfied dependency expressed through field 'consultaRepository': Error creating bean with name 'consultaRepository' defined in med.voll.api.domain.consulta.ConsultaRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Could not create query for public abstract java.lang.Boolean med.voll.api.domain.consulta.ConsultaRepository.existPacienteIdAndDataBetWeen(java.lang.Long,java.time.LocalDateTime,java.time.LocalDateTime); Reason: Failed to create query for method public abstract java.lang.Boolean med.voll.api.domain.consulta.ConsultaRepository.existPacienteIdAndDataBetWeen(java.lang.Long,java.time.LocalDateTime,java.time.LocalDateTime); No property 'existPacienteId' found for type 'Consulta'
Segue a classe controller
package med.voll.api.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import jakarta.validation.Valid;
import med.voll.api.domain.consulta.AgendaDeConsultas;
import med.voll.api.domain.consulta.DadosAgendamentoConsulta;
@RestController
@RequestMapping("consultas")
public class ConsultaController {
@Autowired
private AgendaDeConsultas agenda;
@PostMapping
@Transactional
public ResponseEntity agendar(@RequestBody @Valid DadosAgendamentoConsulta dados) {
var dto = agenda.agendar(dados);
return ResponseEntity.ok(dto);
}
}
agora a classe medicoRepository
package med.voll.api.domain.medico;
import java.time.LocalDateTime;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
public interface MedicoRepository extends JpaRepository<Medico, Long> {
Page<Medico> findAllByAtivoTrue(Pageable paginacao);
@Query("""
select m from Medico m
where
m.ativo = 1
and
m.especialidade = :especialidade
and
m.id not in(
select c.medico.id from Consulta c
where
c.data = :data
)
order by rand()
limit 1
""")
Medico escolherMedicoAleatorioLivreNaData(Especialidade especialidade, LocalDateTime data);
@Query("""
select m.ativo
from Medico m
where
m.id = :id
""")
Boolean FindAtivoById(Long id);
Boolean existsByMedicoIdAndData(Long idMedico,LocalDateTime data);
}
capaz do erro esta na minha cara e eu não esta vendo