Interface PrestamoService
- All Known Implementing Classes:
PrestamoServiceImp
@Service
public interface PrestamoService
Servicio encargado de la gestión de préstamos de la biblioteca.
Proporciona operaciones para crear, modificar, consultar y
gestionar el estado de los préstamos.
- Author:
- Álvaro Allén alvaro.allper.1@educa.jcyl.es
-
Method Summary
Modifier and TypeMethodDescriptionvoidActualiza el estado de los préstamos retrasados en el sistema.buscarPrestamoPorId(Long idPrestamo) Busca préstamos por su identificador.org.springframework.data.domain.Page<Prestamo> buscarPrestamos(String busqueda, EstadoPrestamo estadoPrestamo, org.springframework.data.domain.Pageable pageable) Busca préstamos aplicando filtros y paginaciónvoidcambiarEstado(Long idPrestamo, EstadoPrestamo estadoPrestamo) Cambia el estado de un préstamo.editarPrestamo(Long idPrestamo, PrestamoDTO prestamoDTO) Edita un préstamo existente.voidfinalizarPrestamo(LocalDate fechaDevolucion, Long idPrestamo, String codigo) Finaliza un préstamo estableciendo su fecha de devolución.Obtiene el préstamo activo asociado a un ejemplar.listarPrestamosPorUsuario(Long idUsuario) Lista de todos los préstamoas asociados a un usuario.voidreabrirPrestamo(Long idPrestamo) Reabre un préstamo previamente finalizado.registrarPrestamo(PrestamoDTO prestamoDTO) Registra un nuevo préstamo en el sistema.sumarDiasHabiles(LocalDate FechaInicio) Calcula una fecha sumando días hábiles a una fecha inicial.
-
Method Details
-
registrarPrestamo
Registra un nuevo préstamo en el sistema.- Parameters:
prestamoDTO- datos necesarios para crear el préstamo- Returns:
- préstamo registrado
-
listarPrestamosPorUsuario
Lista de todos los préstamoas asociados a un usuario.- Parameters:
idUsuario- identificador del usuario- Returns:
- lista de préstamos del usuario
-
buscarPrestamoPorId
Busca préstamos por su identificador.- Parameters:
idPrestamo- identificador del préstamo- Returns:
- préstamo encontrado
-
buscarPrestamos
org.springframework.data.domain.Page<Prestamo> buscarPrestamos(String busqueda, EstadoPrestamo estadoPrestamo, org.springframework.data.domain.Pageable pageable) Busca préstamos aplicando filtros y paginación- Parameters:
busqueda- texto de búsquedaestadoPrestamo- estado del préstamopageable- configuración de paginación- Returns:
- página de préstamos encontrados
-
editarPrestamo
Edita un préstamo existente.- Parameters:
idPrestamo- identificador del préstamoprestamoDTO- datos actualizados del préstamo- Returns:
- préstamo modificado
-
finalizarPrestamo
Finaliza un préstamo estableciendo su fecha de devolución.- Parameters:
fechaDevolucion- fecha en la que se devuelve el ejemplaridPrestamo- indentificador del préstamocodigo- código del ejemplar
-
reabrirPrestamo
Reabre un préstamo previamente finalizado.- Parameters:
idPrestamo- identificador del préstamo
-
cambiarEstado
Cambia el estado de un préstamo.- Parameters:
idPrestamo- identificador del préstamoestadoPrestamo- nuevo estado del préstamo
-
getPrestamoActivo
Obtiene el préstamo activo asociado a un ejemplar.- Parameters:
e- ejemplar consultado- Returns:
- préstamo activo si existe
-
sumarDiasHabiles
Calcula una fecha sumando días hábiles a una fecha inicial.- Parameters:
FechaInicio- fecha de inicio- Returns:
- fecha resultante
-
actualizarPrestamosRetrasados
void actualizarPrestamosRetrasados()Actualiza el estado de los préstamos retrasados en el sistema.
-