Solicitud
in package
Clase Solicitud
Esta clase gestiona todas las operaciones relacionadas con las solicitudes de ausencia.
Tags
Table of Contents
Properties
- $conexion : mixed
Methods
- __construct() : mixed
- Constructor del modelo.
- actualizarEstado() : bool
- Actualiza el estado de una solicitud específica.
- actualizarSolicitud() : bool
- Actualiza los datos de una solicitud ya existente.
- eliminarSolicitud() : bool
- Elimina una solicitud de la base de datos usando su clave primaria.
- existeSolapamiento() : bool
- Comprueba si existe solapamiento de fechas con otras solicitudes activas presentadas por el usuario.
- insertarArchivo() : bool
- Guarda los datos de un archivo presentado en una solicitud de ausencia.
- insertarHoras() : mixed
- Inserta las horas específicas de ausencia asociadas a una solicitud que se realiza en un día concreto.
- insertarSolicitud() : array<string|int, mixed>|false
- Inserta una nueva solicitud de ausencia, realizada por un usuario, en la base de datos.
- obtenerArchivosDeSolicitud() : array<string|int, mixed>
- Obtiene todos los archivos asociados a una solicitud.
- obtenerHorasDeSolicitud() : array<string|int, mixed>
- Obtiene la lista de horas en las que un usuario se ausenta según su solicitud.
- obtenerMotivos() : array<string|int, mixed>
- Obtiene todos los motivos de ausencia disponibles para seleccionar en la solicitud.
- obtenerSolicitud() : array<string|int, mixed>|null
- Devuelve una solicitud concreta utilizando para esto su clave primaria compuesta.
- obtenerSolicitudesPorCurso() : array<string|int, mixed>
- Obtiene todas las solicitudes activas (no finalizadas) de un curso específico y la información del usuario que la realizó (nombre y apellidos)
- obtenerSolicitudesPorUsuarioYCurso() : array<string|int, mixed>
- Obtiene las solicitudes activas de un usuario durante un curso determinado.
Properties
$conexion
private
mixed
$conexion
Methods
__construct()
Constructor del modelo.
public
__construct() : mixed
Establece la conexión con la base de datos utilizando la clase Conexiondb.
actualizarEstado()
Actualiza el estado de una solicitud específica.
public
actualizarEstado(int $idUsuario, string $fechaPresentacion, int $num, string $estado) : bool
Parameters
- $idUsuario : int
-
- ID del usuario que presentó la solicitud.
- $fechaPresentacion : string
-
- Fecha de presentación de la solicitud (YYYY-MM-DD).
- $num : int
-
- Número de la solicitud en ese día.
- $estado : string
-
- Nuevo estado ('p', 'a', 'r', etc.).
Return values
bool —- True si se actualizó correctamente, false si hubo error.
actualizarSolicitud()
Actualiza los datos de una solicitud ya existente.
public
actualizarSolicitud(int $idUsuario, string $fechaPresentacion, int $numSolicitud, int $motivo, string $descripcion, string $comentario) : bool
Parameters
- $idUsuario : int
-
- ID del usuario.
- $fechaPresentacion : string
-
- Fecha de presentación de la solicitud.
- $numSolicitud : int
-
- Número de la solicitud.
- $motivo : int
-
- Nuevo motivo (ID).
- $descripcion : string
-
- Nueva descripción.
- $comentario : string
-
- Nuevo comentario adicional.
Return values
bool —- True si la solicitud fue actualizada con éxito o false en caso contrario.
eliminarSolicitud()
Elimina una solicitud de la base de datos usando su clave primaria.
public
eliminarSolicitud(int $idUsuario, string $fechaPresentacion, int $numSolicitud) : bool
Parameters
- $idUsuario : int
-
- ID del usuario.
- $fechaPresentacion : string
-
- Fecha de presentación.
- $numSolicitud : int
-
- Número de solicitud.
Return values
bool —- True si la solicitud fue eliminada correctamente o false si no.
existeSolapamiento()
Comprueba si existe solapamiento de fechas con otras solicitudes activas presentadas por el usuario.
public
existeSolapamiento(int $idUsuario, string $fechaInicio, string $fechaFin) : bool
Parameters
- $idUsuario : int
-
- ID del usuario.
- $fechaInicio : string
-
- Fecha de inicio de la nueva ausencia.
- $fechaFin : string
-
- Fecha de fin de la nueva ausencia.
Return values
bool —- True si hay solapamiento, false si no.
insertarArchivo()
Guarda los datos de un archivo presentado en una solicitud de ausencia.
public
insertarArchivo(int $idUsuario, string $fechaPresentacion, int $numSolicitud, string $nombreOriginal, string $nombreGenerado, string $extension, string $rutaRelativa) : bool
Parameters
- $idUsuario : int
-
- ID del usuario.
- $fechaPresentacion : string
-
- Fecha de presentación.
- $numSolicitud : int
-
- Número de la solicitud.
- $nombreOriginal : string
-
- Nombre original del archivo subido.
- $nombreGenerado : string
-
- Nombre generado para almacenar el archivo.
- $extension : string
-
- Extensión o tipo del archivo.
- $rutaRelativa : string
-
- Ruta relativa de almacenamiento en el servidor.
Return values
bool —- True si se insertó correctamente, false si falló.
insertarHoras()
Inserta las horas específicas de ausencia asociadas a una solicitud que se realiza en un día concreto.
public
insertarHoras(int $idUsuario, string $fechaPresentacion, int $numSolicitud, array<string|int, mixed> $horas) : mixed
Parameters
- $idUsuario : int
-
- ID del usuario.
- $fechaPresentacion : string
-
- Fecha de presentación de la solicitud.
- $numSolicitud : int
-
- Número de la solicitud.
- $horas : array<string|int, mixed>
-
- Array de horas (enteros) que se ausentará.
insertarSolicitud()
Inserta una nueva solicitud de ausencia, realizada por un usuario, en la base de datos.
public
insertarSolicitud(int $idUsuario, int $idCurso, int $idMotivo, string $fechaInicio, string $fechaFin, string $estado, string $descripcion, string $comentario) : array<string|int, mixed>|false
Parameters
- $idUsuario : int
-
- ID del usuario que presenta la solicitud.
- $idCurso : int
-
- ID del curso al que pertenece.
- $idMotivo : int
-
- ID del motivo seleccionado.
- $fechaInicio : string
-
- Fecha de inicio de la ausencia.
- $fechaFin : string
-
- Fecha de fin de la ausencia.
- $estado : string
-
- Estado inicial de la solicitud.
- $descripcion : string
-
- Descripción del motivo de la ausencia.
- $comentario : string
-
- Comentario adicional sobre material, si aplica.
Return values
array<string|int, mixed>|false —- Array con 'num' y 'fecha_presentacion' si tuvo éxito, false si hubo error.
obtenerArchivosDeSolicitud()
Obtiene todos los archivos asociados a una solicitud.
public
obtenerArchivosDeSolicitud(int $idUsuario, string $fechaPresentacion, int $num) : array<string|int, mixed>
Parameters
- $idUsuario : int
-
- ID del usuario.
- $fechaPresentacion : string
-
- Fecha de presentación.
- $num : int
-
- Número de solicitud.
Return values
array<string|int, mixed> —$archivos - Lista de archivos relacionados.
obtenerHorasDeSolicitud()
Obtiene la lista de horas en las que un usuario se ausenta según su solicitud.
public
obtenerHorasDeSolicitud(int $idUsuario, string $fechaPresentacion, int $num) : array<string|int, mixed>
Parameters
- $idUsuario : int
-
- ID del usuario.
- $fechaPresentacion : string
-
- Fecha de presentación de la solicitud.
- $num : int
-
- Número de la solicitud.
Return values
array<string|int, mixed> —$horas - Lista de horas de ausencia (números de hora).
obtenerMotivos()
Obtiene todos los motivos de ausencia disponibles para seleccionar en la solicitud.
public
obtenerMotivos() : array<string|int, mixed>
Return values
array<string|int, mixed> —$motivos - Lista de motivos disponibles.
obtenerSolicitud()
Devuelve una solicitud concreta utilizando para esto su clave primaria compuesta.
public
obtenerSolicitud(int $idUsuario, string $fechaPresentacion, int $num) : array<string|int, mixed>|null
Parameters
- $idUsuario : int
-
- ID del usuario.
- $fechaPresentacion : string
-
- Fecha de presentación.
- $num : int
-
- Número de solicitud.
Return values
array<string|int, mixed>|null —- Datos de la solicitud o null si no existe.
obtenerSolicitudesPorCurso()
Obtiene todas las solicitudes activas (no finalizadas) de un curso específico y la información del usuario que la realizó (nombre y apellidos)
public
obtenerSolicitudesPorCurso(int $idCurso) : array<string|int, mixed>
Parameters
- $idCurso : int
-
- ID del curso.
Return values
array<string|int, mixed> —$solicitudes - Lista de solicitudes asociadas al curso.
obtenerSolicitudesPorUsuarioYCurso()
Obtiene las solicitudes activas de un usuario durante un curso determinado.
public
obtenerSolicitudesPorUsuarioYCurso(int $idUsuario, int $idCurso) : array<string|int, mixed>
Parameters
- $idUsuario : int
-
- ID del usuario.
- $idCurso : int
-
- ID del curso.
Return values
array<string|int, mixed> —$solicitudes - Lista de solicitudes del usuario en ese curso.