Unidad
Documentación detallada del módulo de Unidades para la gestión de unidades dentro de planificaciones en RedCollege.
Introducción
El módulo UnidadModule proporciona métodos para gestionar las unidades dentro de las planificaciones educativas en el sistema RedCollege. Permite realizar operaciones CRUD (Crear, Leer, Actualizar, Eliminar) sobre unidades, así como funcionalidades adicionales como relación con ítems curriculares y gestión de archivos asociados.
Métodos
getAll
Obtiene todas las unidades asociadas a una planificación.
Parámetros:
| Nombre | Tipo | Descripción | Requerido |
|---|---|---|---|
| planificacionId | number | ID de la planificación | Sí |
Retorna:
- Promise con un array de objetos
IUnidad
Ejemplo de uso:
getUnidadById
Obtiene una unidad específica por su ID.
Parámetros:
| Nombre | Tipo | Descripción | Requerido |
|---|---|---|---|
| unidadId | number | ID de la unidad a obtener | Sí |
Retorna:
- Promise con un objeto
IUnidadcon los detalles de la unidad
Ejemplo de uso:
saveUnidad
Crea una nueva unidad.
Parámetros:
| Nombre | Tipo | Descripción | Requerido |
|---|---|---|---|
| data | IUnidadForm | Datos de la unidad a crear | Sí |
Propiedades de IUnidadForm:
| Propiedad | Tipo | Descripción | Requerido |
|---|---|---|---|
| planificacionId | number | ID de la planificación | Sí |
| titulo | string | Título de la unidad | Sí |
| numero | number | Número de orden de la unidad | Sí |
| descripcion | string | Descripción de la unidad | Sí |
| fechaInicio | DateTime | Fecha de inicio de la unidad | No |
| fechaFin | DateTime | Fecha de finalización de la unidad | No |
Retorna:
- Promise con un objeto
IUnidadde la unidad creada
Ejemplo de uso:
updateUnidad
Actualiza una unidad existente.
Parámetros:
| Nombre | Tipo | Descripción | Requerido |
|---|---|---|---|
| data | Object | Objeto con datos para actualizar | Sí |
| data.data | IUnidadForm | Datos actualizados de la unidad | Sí |
| data.id | number | ID de la unidad a actualizar | Sí |
Retorna:
- Promise con un objeto
IUnidadcon los datos actualizados
Ejemplo de uso:
deleteUnidad
Elimina una unidad.
Parámetros:
| Nombre | Tipo | Descripción | Requerido |
|---|---|---|---|
| id | number | ID de la unidad a eliminar | Sí |
Retorna:
- Promise con un objeto
IUnidadde la unidad eliminada
Ejemplo de uso:
relateItemsUnidades
Relaciona ítems de entrada curricular con una unidad específica.
Parámetros:
| Nombre | Tipo | Descripción | Requerido |
|---|---|---|---|
| planificacionId | number | ID de la planificación | Sí |
| unidadId | number | ID de la unidad | Sí |
| itemEntradaCurricularId | number | Array de IDs de ítems a relacionar | Sí |
| itemId | number | ID del ítem principal | Sí |
Retorna:
- Promise con un objeto
IItemEntradaCurricular
Ejemplo de uso:
getUnidadesByPlanificacion
Obtiene todas las unidades asociadas a una planificación (método alternativo a getAll).
Parámetros:
| Nombre | Tipo | Descripción | Requerido |
|---|---|---|---|
| planificacionId | number | ID de la planificación | Sí |
Retorna:
- Promise con un array de objetos
IUnidad
Ejemplo de uso:
asociarArchivo
Asocia un archivo existente a una unidad.
Parámetros:
| Nombre | Tipo | Descripción | Requerido |
|---|---|---|---|
| unidadId | number | ID de la unidad | Sí |
| archivoId | number | ID del archivo a asociar | Sí |
Retorna:
- Promise con un objeto
IArchivocon los datos del archivo asociado
Ejemplo de uso:
softDeleteArchivoAsociado
Elimina temporalmente (soft delete) un archivo asociado a una unidad.
Parámetros:
| Nombre | Tipo | Descripción | Requerido |
|---|---|---|---|
| unidadId | number | ID de la unidad | Sí |
| archivoId | number | ID del archivo a eliminar | Sí |
Retorna:
- Promise con un objeto
IArchivodel archivo eliminado
Ejemplo de uso:
destroyArchivo
Elimina permanentemente un archivo asociado a una unidad.
Parámetros:
| Nombre | Tipo | Descripción | Requerido |
|---|---|---|---|
| unidadId | number | ID de la unidad | Sí |
| archivoId | number | ID del archivo a eliminar permanentemente | Sí |
Retorna:
- Promise con un objeto
IArchivodel archivo eliminado
Ejemplo de uso:
relacionarItemsUnidad
Relaciona múltiples ítems curriculares con una unidad.
Parámetros:
| Nombre | Tipo | Descripción | Requerido |
|---|---|---|---|
| itemsIds | number | Array de IDs de ítems curriculares | Sí |
| unidadId | number | ID de la unidad | Sí |
Retorna:
- Promise con un objeto
IUnidadactualizado
Ejemplo de uso:
obtenerDiasHabilesUnidad
Obtiene los días hábiles disponibles para una unidad.
Parámetros:
| Nombre | Tipo | Descripción | Requerido |
|---|---|---|---|
| unidadId | number | ID de la unidad | Sí |
Retorna:
- Promise con un array de objetos
DateTimerepresentando días hábiles
Ejemplo de uso:
Consideraciones importantes
- La mayoría de los métodos requieren autenticación previa en el sistema.
- Los IDs deben ser números válidos existentes en la base de datos.
- Las fechas en los formularios deben ser proporcionadas como objetos
DateTimede Luxon. - Las operaciones de relacionar ítems curriculares pueden afectar la estructura de las planificaciones.
Errores comunes
- 404 Not Found: La unidad o recurso solicitado no existe
- 403 Forbidden: El usuario no tiene permisos para acceder a la unidad
- 400 Bad Request: Datos enviados incorrectos o incompletos
- 500 Internal Server Error: Error en el servidor, intentar más tarde
Interfaces relacionadas
Las principales interfaces utilizadas por este módulo son:
IUnidad: Representa una unidad completa con todas sus relacionesIUnidadForm: Formato para crear o actualizar unidadesIItemEntradaCurricular: Representa un ítem de entrada curricularIArchivo: Representa un archivo asociado a una unidad