A la hora de compilar puede haber un error con el Query de elegirMedicoAleatorioDisponibleEnLaFecha
Error creating bean with name 'medicoRepository' defined in med.volt.api.domain.medico.MedicoRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Could not create query for public abstract med.volt.api.domain.medico.Medico
Por lo que investigando, encontré una solución pero si existe una mejor opción de resolver esto, estoy abierto a leer opiniones. Código que me da error:
@Query(value = """
select m from Medico m
where
m.activo = 1
and
m.especialidad = :especialidad
and m.ide not in(
select c.medico.id from Consulta c
where
c.fecha = :fecha
)
order by rand()
limit 1
""")
Medico elegirMedicoAleatorioDisponibleEnLaFecha(Especialidad especialidad, LocalDateTime fecha);
Mi solución:
@Query(value = """
select m from Medico m
where
m.activo = 1
and
m.especialidad = :especialidad
and m.ide not in(
select c.medico.id from Consulta c
where
c.fecha = :fecha
)
order by rand()
limit 1
""", nativeQuery = true)
Medico elegirMedicoAleatorioDisponibleEnLaFecha(Especialidad especialidad, LocalDateTime fecha);