diff --git a/CHANGELOG_SESSION.md b/CHANGELOG_SESSION.md index f23f3e2..88d2d28 100644 --- a/CHANGELOG_SESSION.md +++ b/CHANGELOG_SESSION.md @@ -1,6 +1,6 @@ # Resumen de Cambios - Sesión de Desarrollo (Rama `dev`) -**Fecha:** 2026-09-02 / 2026-09-03 +**Fecha:** 2026-09-02 / 2026-09-03 / 2026-09-04 **Proyecto:** Admin Edu-Space (Flask + PostgreSQL) **Rama:** `dev` @@ -345,14 +345,39 @@ * **Calendario Semanal:** Agregado el filtro **Filtrar por Edificio** en la barra superior junto al filtro de Piso. * **Modal Estilo Google Calendar:** La sección de espacio físico desglosa limpiamente en badges: 🏢 Edificio, 🪜 Piso y 🚪 Aula. +--- +## 21. Corrección de Linter y Renderizado de Barras en Métricas de Ocupación (2026-09-04) +* **Plantilla de Métricas de Ocupación ([app/templates/admin/metrics/occupancy.html](file:///c:/Workspace/admin-edu-space/app/templates/admin/metrics/occupancy.html)):** + * **Eliminación de Falsos Positivos de CSS en el IDE:** Se resolvieron los 12 errores de sintaxis (`property value expected`, `at-rule or selector expected`) reportados por el analizador HTML/CSS del IDE en las tarjetas de KPI (Tasa de Ocupación Hoy, Semanal, Mensual) y en la distribución por Piso / Nivel. + * **Atributos Semánticos HTML5:** Se sustituyó la inyección directa de Jinja2 en atributos `style="width: {{ ... }}%;"` por el atributo de datos estándar `data-width="{{ ... }}%"`. + * **Inicialización y Animación Dinámica en JS:** + * Se configuró en CSS (`.metric-bar-fill { width: 0; }`) un ancho base inicial. + * Se implementó un script en el bloque `extra_js` que asigna el ancho dinámico al cargar el DOM (`DOMContentLoaded`). + * En conjunto con `transition: width 0.6s ease;`, las barras se expanden de forma fluida y visualmente atractiva al cargar la pantalla. +--- - - - - - - - +## 22. Actualización de Instalador, Backup de Base de Datos y Despliegue en Proxmox LXC (2026-09-04) +* **Backup de Base de Datos ([classrooms_db.sql](file:///c:/Workspace/admin-edu-space/classrooms_db.sql)):** + * **Extracción del Snapshot Completo:** Volcado íntegro de la base de datos PostgreSQL activa (`classrooms_db`) que alimenta el sistema en producción/local. + * **Contenido Respaldado:** 25 aulas físicas y virtuales, 206 comisiones, 206 asignaturas, 412 reservas, 24 carreras, 12 tipos de hitos, matrices de permisos RBAC y usuarios administradores. + * **Compatibilidad Multi-Versión:** Se sanitizó la directiva `\restrict` específica de PostgreSQL 18 para garantizar compatibilidad nativa con PostgreSQL 14, 15, 16, 17 y 18. +* **Actualización del Instalador del Sistema para Proxmox LXC ([install.sh](file:///c:/Workspace/admin-edu-space/install.sh)):** + * **Optimización Proxmox LXC:** Compatible con contenedores Debian 11/12 y Ubuntu 20.04/22.04/24.04 en Proxmox VE. + * **Migración Automática de Directorio:** Si el repositorio se clona en `/root`, se traslada automáticamente a `/opt/admin-edu-space` para garantizar permisos de ejecución del usuario del servicio (`eduspace`). + * **Despliegue del Motor PostgreSQL Nativo:** Instalación desatendida del motor en el LXC, inicialización dinámica del servicio y bucle de healthcheck de conexión. + * **Restauración Automatizada y Permisos:** Detección automática de `classrooms_db.sql`, recreación limpia, asignación de permisos `GRANT ALL` en el esquema `public`, todas las tablas y secuencias al usuario `eduspace_user`. + * **Entorno Virtual Nativo (`venv`):** Configuración en `/opt/admin-edu-space/venv` con dependencias del sistema y `gunicorn`. + * **Servicio Systemd de Producción:** Configuración y activación de `admin-edu-space.service` en el puerto 5000. + * **Ejecución Idempotente:** Integración de `init_db.py` tras la restauración para validar la coherencia del esquema y roles. +* **Utilidad de Backup Continuo ([backup_db.sh](file:///c:/Workspace/admin-edu-space/backup_db.sh)):** + * Script automatizado para generar copias de seguridad fechadas en `backups/` y actualizar simultáneamente `classrooms_db.sql` para facilitar la migración entre contenedores LXC. +* **Documentación y Tutorial en README ([README.md](file:///c:/Workspace/admin-edu-space/README.md)):** + * Guía paso a paso para la creación del contenedor LXC en Proxmox VE (especificaciones de CPU, RAM, disco y habilitación de `nesting=1`). + * Instrucciones completas de instalación desatendida con `install.sh`. + * Corrección de comandos de inicio apuntando al punto de entrada oficial [wsgi.py](file:///c:/Workspace/admin-edu-space/wsgi.py). + * Guía paso a paso para la generación y restauración de backups. +* **Dependencias ([requirements.txt](file:///c:/Workspace/admin-edu-space/requirements.txt)):** + * Se incorporó formalmente `gunicorn>=21.2.0` al listado de dependencias del proyecto. diff --git a/README.md b/README.md index 3c1f3c6..0f677a2 100644 --- a/README.md +++ b/README.md @@ -1,315 +1,306 @@ -# Panel de Administración Edu-Space (UniCABA) - -Plataforma integral de gestión áulica, asignación de espacios, control de horarios y reservas académicas para la **Universidad de la Ciudad de Buenos Aires (UniCABA)**, desarrollada con **Python / Flask**, **SQLAlchemy**, **PostgreSQL** y **Bootstrap 5**. - ---- - -## 🏛️ Sede Institucional y Ubicaciones -* **Sede Central UniCABA:** Tte. Gral. Juan Domingo Perón 802, Ciudad Autónoma de Buenos Aires (CABA) — Aulas de grado, auditorio principal y laboratorios distribuidos desde Planta Baja (Piso 0) hasta el 4.° Piso. -* **Campus Virtual:** Espacio áulico digital integrado (Microsoft Teams / Moodle) configurado con **capacidad ilimitada ($\infty$)**. - ---- - -## ✨ Características Principales - -### 🛡️ 1. Control de Accesos RBAC Granular (Matriz estilo FortiGate) -* **Gestión por Módulos:** Permisos independientes por cada área del sistema: - 1. **Aulas y Espacios:** Creación, edición, capacidad y estado de aulas físicas y virtuales. - 2. **Edificios y Sedes:** Administración de sedes, pisos y arquitectura edilicia. - 3. **Reservas de Aulas:** Solicitud, aprobación, confirmación y cancelación. - 4. **Cartelera y Cronograma:** Calendario interactivo, visualización diaria y comisiones. - 5. **Gestión Académica:** Carreras, asignaturas, códigos y comisiones. - 6. **Sincronización Sheets:** Importador y sincronizador de Google Sheets. - 7. **Optimizador IA:** Algoritmo genético de distribución y resolución de conflictos. - 8. **Usuarios y Accesos RBAC:** Cuentas, roles y matriz de permisos. -* **Niveles de Permiso Granulares:** `Ninguno`, `Solo Lectura` o `Lectura y Escritura`. -* **Controles Rápidos:** Botón *"Establecer Todos"* para configuración masiva inmediata. -* **Roles Predefinidos:** `Admin` (control total), `Docente`, `Operador` y `Consulta`. - -### 📊 2. Sincronización e Importación desde Google Sheets -* Integración directa con la cartelera académica de UniCABA en Google Sheets. -* Extracción e importación normalizada de los 5 campos clave: - * **Código Académico:** Códigos reales de asignatura (ej. `INGA0003`, `ASIG00165`). - * **Asignatura:** Nombre oficial de la materia. - * **Aula:** Mapeo a aulas físicas (PB a 4.° piso) o aula `VIRTUAL` ($\infty$). - * **Carrera:** Normalización y vinculación relacional con entidades de carrera. - * **Horarios y Turnos:** Detección automática de franjas horarias y delimitadores de bloque (`Turno Mañana` y `Turno Tarde / Vespertino`). - -### 📅 3. Calendario Interactivo de Reservas (FullCalendar) -* **Visualización Semanal, Mensual y Diaria:** Grilla ágil de alta legibilidad con jerarquía visual: - * Asignatura destacada en tipografía grande y negrita. - * Badges con código de materia, aula asignada, turno y franja horaria. -* **Filtros Dinámicos Combinables:** - * Filtrar por **Aula**. - * Filtrar por **Materia / Asignatura**. - * Filtrar por **Carrera**. - * Filtrar por **Turno** (`Turno Mañana` / `Turno Tarde`). - * Filtrar por **Piso / Planta** (`Planta Baja`, `Piso 1`, `Piso 2`, `Piso 3`, `Piso 4`). - * **Switch "Ocultar Aulas Virtuales":** Aísla la ocupación física real en el edificio central excluyendo los eventos virtuales de capacidad infinita. -* **Ficha Modal Instantánea:** Vista previa detallada al hacer clic en cualquier evento. - -### 📋 4. Cartelera del Día y Listado de Reservas -* **Cartelera del Día (`/schedule/today`):** - * **Vista Cronológica (Timeline):** Bloques horarios de 07:00 a 22:00 hs con indicador de ocupación. - * **Vista en Tabla:** Lista ordenada con acciones rápidas y detalles de comisión. - * Filtros directos por piso, turno y switch para ocultar virtuales. -* **Listado Paginado de Reservas (`/schedule/list`):** - * Paginación de 20 registros por página preservando filtros aplicados. - * Búsqueda por texto, estado (`Confirmada`, `Pendiente`, `Cancelada`), rango de fechas y piso. - -### 🏫 5. Gestión de Aulas con Capacidad Infinita ($\infty$) -* Soporte nativo para el símbolo **`∞`** o `0` para designar aulas virtuales o espacios sin aforo restringido. -* Botón de un solo clic `Ilimitada (∞)` en formularios de alta y edición con leyendas explicativas. -* Badges distintivos `∞ Ilimitada` en listados, tarjetas y fichas técnicas. - -### 🤖 6. Optimizador Inteligente de Aulas (Algoritmo Genético) -* Motor de optimización heurística para asignación automática de aulas a comisiones. -* Pondera capacidad requerida vs. capacidad de aula, equipamiento tecnológico y minimización de desplazamientos entre pisos. - -### 🎨 7. Experiencia de Usuario, Temas y Localización -* **Tema Oscuro / Claro:** Alternador con botón flotante y persistencia en `localStorage` y perfil de usuario. -* **Soporte Multilingüe:** Internacionalización integral (Español e Inglés) compilada con GNU gettext (`pybabel`). -* **Tarjetas Estadísticas Interactivas:** Accesos directos rápidos desde el panel general hacia las distintas secciones operativas. - -### 🏛️ 8. Sistema Integral de Gestión Institucional (8 Módulos) -El menú desplegable **Gestión** en la barra de navegación organiza las áreas operativas de la universidad: -* **Espacios e Infraestructura:** - * **Edificios y Sedes (`/buildings/list`):** Administración de edificios físicos, arquitectura y estado edilicio. - * **Aulas Presenciales (`/classrooms/list?view_mode=physical`):** Catálogo de aulas físicas por piso, capacidades y zócalos compactos con métricas de ocupación en tiempo real (día, semana, mes). - * **Aulas Virtuales con Reunión (`/classrooms/list?view_mode=virtual`):** Campus Virtual con salas a demanda agrupadas por comisión, capacidad ilimitada ($\infty$) y enlaces directos de acceso a videollamadas (Zoom, Google Meet, Microsoft Teams). - * **Gestión de Ocupación y Métricas (`/admin/occupancy-metrics`):** Dashboard analítico de tasas de ocupación horaria (día, semana, mes), horas pico, distribución por turno y comparativa física vs. virtual. -* **Gestión Académica:** - * **Carreras (`/admin/careers`):** ABM de carreras universitarias y planes de estudio con contador de asignaturas y comisiones activas. - * **Asignaturas (`/admin/subjects`):** Catálogo institucional de materias con créditos, departamentos y filtros por carrera y estado. - * **Comisiones y Cursadas (`/schedule/commissions`):** Gestión de cursadas, turnos, docentes, enlaces virtuales e hitos de evaluación. - * **Ciclo Lectivo (`/admin/academic-terms`):** Modelo y panel de administración de períodos académicos, cuatrimestres y activación del ciclo lectivo en curso. -* **Administración & Seguridad:** - * **Usuarios y Roles RBAC:** Cuentas, asignación de permisos matriciales y auditoría. - * **Tipificaciones de Hitos:** Catálogo de tipos de hitos de evaluación académica. - * **Sincronización Sheets:** Integración con Google Sheets para actualización en lote. - ---- - -## 🛠️ Stack Tecnológico - -| Componente | Tecnología | -| :--- | :--- | -| **Backend** | Python 3.12+ / Flask | -| **Base de Datos** | PostgreSQL 16+ / SQLAlchemy ORM | -| **Seguridad & Sesiones** | Flask-Login / Werkzeug / CSRF Protect | -| **Formularios** | Flask-WTF / WTForms | -| **Internacionalización** | Flask-Babel / GNU gettext | -| **Frontend** | Bootstrap 5.3, Bootstrap Icons, Vanilla JS, CSS Variables | -| **Calendario** | FullCalendar 5.11 | - ---- - -## 🚀 Instalación y Puesta en Marcha - -### ⚡ Opción A — Deploy Automático en Debian 12 LXC (Recomendado) - -El repositorio incluye un instalador interactivo (`install.sh`) que configura todo el entorno de producción automáticamente: dependencias del sistema, PostgreSQL, entorno virtual Python, inicialización de base de datos y servicio systemd con Gunicorn. - -#### Prerrequisitos -* Contenedor LXC o servidor con **Debian 12 (Bookworm)** -* Acceso **root** (o `sudo`) -* Conexión a Internet - -#### Pasos - -```bash -# 1. Clonar el repositorio -git clone https://gitea.oemspot.com.ar/carlostellocba/admin-edu-space.git -cd admin-edu-space - -# 2. Dar permisos de ejecución al instalador -chmod +x install.sh - -# 3. Ejecutar el instalador como root -sudo bash install.sh -``` - -Durante la ejecución el instalador solicitará únicamente la **contraseña para el usuario de base de datos** (si se deja vacío usa `eduspace2024` por defecto). - -#### Qué instala y configura automáticamente - -| Paso | Acción | -| :--- | :--- | -| 1 | Configura locale `en_US.UTF-8` en el sistema (previene errores de encoding) | -| 2 | Instala Python 3, venv, pip, build-tools, libpq-dev y PostgreSQL | -| 3 | Inicia y habilita el servicio PostgreSQL para el arranque automático | -| 4 | Genera `SECRET_KEY` aleatoria y crea el archivo `.env` de producción | -| 5 | Crea el usuario `eduspace_user` y la base de datos `classrooms_db` en PostgreSQL | -| 6 | Crea el virtualenv e instala todas las dependencias + Gunicorn | -| 7 | Ejecuta `init_db.py` (tablas, roles RBAC, edificios y usuario admin inicial) | -| 8 | Crea el usuario del sistema `eduspace` (sin shell, por seguridad) | -| 9 | Registra y arranca el servicio systemd `admin-edu-space` en el puerto **5000** | -| 10 | Muestra resumen con URL, credenciales y comandos de gestión | - -#### Comandos de gestión post-instalación - -```bash -# Ver estado del servicio -systemctl status admin-edu-space - -# Ver logs en tiempo real -journalctl -u admin-edu-space -f - -# Reiniciar la aplicación -systemctl restart admin-edu-space - -# Detener la aplicación -systemctl stop admin-edu-space -``` - -> **Nota:** Si el archivo `.env` ya existe en el directorio (por ejemplo, copiado manualmente antes de correr el instalador), el script lo conserva sin sobrescribirlo. - ---- - -### 🖥️ Opción B — Instalación Manual (Desarrollo Local) - -#### Prerrequisitos -1. **Python 3.10 o superior** -2. **PostgreSQL** en ejecución con una base de datos creada (ej. `classrooms_db`). -3. **Git** - -#### Pasos de Configuración - -1. **Clonar el repositorio:** - ```bash - git clone https://gitea.oemspot.com.ar/carlostellocba/admin-edu-space.git - cd admin-edu-space - ``` - -2. **Crear y activar el entorno virtual:** - * En Windows (PowerShell): - ```powershell - python -m venv venv - .\venv\Scripts\Activate.ps1 - ``` - * En Linux / macOS: - ```bash - python3 -m venv venv - source venv/bin/activate - ``` - -3. **Instalar dependencias:** - ```bash - pip install -r requirements.txt - ``` - -4. **Configurar variables de entorno (`.env`):** - Copiar la plantilla y editar con los valores de tu entorno: - ```bash - cp .env.example .env - ``` - ```env - SECRET_KEY=clave-secreta-de-produccion-cambiar-en-despliegue - DATABASE_URL=postgresql://postgres:postgres@localhost:5432/classrooms_db - FLASK_ENV=development - FLASK_DEBUG=1 - ``` - -5. **Inicializar la Base de Datos:** - Ejecutar el script de inicialización para crear tablas, roles institucionales, permisos RBAC, sedes y el usuario administrador: - ```bash - python init_db.py - ``` - -6. **Compilar catálogos de traducción (opcional si se modifican textos):** - ```bash - pybabel compile -d translations - ``` - -7. **Iniciar el servidor de desarrollo:** - ```bash - python app.py - ``` - La aplicación estará disponible en: **`http://localhost:5000`** - ---- - -## 🔑 Credenciales Predeterminadas - -| Usuario | Correo Electrónico | Contraseña | Rol | -| :--- | :--- | :--- | :--- | -| **Administrador del Sistema** | `admin@edu-space.com` | `admin123` | `Admin` (Acceso Total) | - -> ⚠️ **Importante:** Cambiá la contraseña del administrador inmediatamente después del primer acceso. - ---- - -## 📁 Estructura del Proyecto - -```text -admin-edu-space/ -├── app/ -│ ├── __init__.py # Factoría de la aplicación Flask y extensiones -│ ├── forms/ # Formularios Flask-WTF con validación CSRF -│ │ ├── auth.py # Login, perfil y cambio de clave -│ │ ├── building.py # Sedes y edificios -│ │ ├── classroom.py # Aulas y capacidades (con soporte ∞) -│ │ └── reservation.py # Reservas de aulas y horarios -│ ├── models/ # Modelos relacionales SQLAlchemy -│ │ ├── academic_term.py # Ciclos lectivos y períodos académicos (activo/histórico) -│ │ ├── building.py # Sedes y edificios institucionales -│ │ ├── career.py # Carreras y titulaciones universitarias -│ │ ├── classroom.py # Aulas físicas y virtuales con capacidades -│ │ ├── genetic_algorithm.py # Estructuras de optimización heurística -│ │ ├── milestone.py # Tipificaciones de hitos académicos y exámenes -│ │ ├── reservation.py # Reservas horarias, estados y turnos -│ │ ├── role.py # Roles y matriz de permisos granulares RBAC -│ │ ├── subject.py # Asignaturas, materias y comisiones de cursada -│ │ └── user.py # Usuarios, credenciales y asignación de roles -│ ├── routes/ # Controladores y rutas modulares (Blueprints) -│ │ ├── admin.py # Carreras, Asignaturas, Ciclo Lectivo, Tipificaciones, Métricas, Usuarios y Roles -│ │ ├── auth.py # Autenticación, sesiones y perfil -│ │ ├── buildings.py # Gestión de sedes y edificios -│ │ ├── classrooms.py # Aulas presenciales vs. Campus Virtual a demanda y métricas de uso -│ │ ├── genetic_algorithm.py # Optimizador heurístico de asignación de espacios -│ │ ├── main.py # Dashboard principal y métricas rápidas -│ │ └── schedule.py # Calendario interactivo, cartelera del día, comisiones y reservas -│ ├── services/ # Servicios y lógica de negocio -│ │ └── sheets_importer.py # Parser y sincronizador bidireccional de Google Sheets -│ ├── static/ # Recursos estáticos web -│ │ ├── css/ -│ │ │ ├── style.css # Estilos base y utilidades -│ │ │ └── theme.css # Variables CSS para modo claro y modo oscuro -│ │ └── js/ -│ │ ├── genetic-algorithm.js # Lógica de ejecución del algoritmo genético -│ │ ├── main.js # Interacciones globales y filtros dinámicos -│ │ └── theme-toggle.js # Conmutador reactivo de tema con persistencia -│ ├── templates/ # Vistas Jinja2 renderizadas con Bootstrap 5 -│ │ ├── base.html # Plantilla maestra con navbar categorizada y menú Gestión -│ │ ├── dashboard.html # Panel principal de control y métricas -│ │ ├── genetic_optimizer.html # Interfaz del optimizador de espacios -│ │ ├── admin/ -│ │ │ ├── academic_terms/ # Gestión de Ciclos Lectivos y cuatrimestres -│ │ │ ├── careers/ # Gestión de Carreras y titulaciones -│ │ │ ├── metrics/ # Dashboard de Ocupación y Métricas de Espacios -│ │ │ ├── milestone_types/ # Gestión de Tipificaciones de Hitos -│ │ │ ├── roles/ # Gestión de Roles y Matriz de Permisos RBAC -│ │ │ ├── subjects/ # Gestión de Asignaturas y Materias -│ │ │ ├── users/ # Gestión de Usuarios y cuentas -│ │ │ └── import.html # Sincronización con Google Sheets -│ │ ├── auth/ # Vistas de autenticación y perfil de usuario -│ │ ├── buildings/ # Listado, alta y edición de sedes y edificios -│ │ ├── classrooms/ # Listado físico vs virtual, alta, edición y ficha -│ │ └── schedule/ # Calendario (FullCalendar), cartelera del día, comisiones y reservas -│ └── utils/ # Utilidades transversales y decoradores -│ └── decorators.py # Decoradores RBAC (@permission_required, can_manage, etc.) -├── config/ # Configuraciones de entorno (desarrollo, testing, prod) -├── translations/ # Catálogos GNU gettext compilados (es / en) -├── install.sh # Instalador automático para Debian 12 LXC -├── init_db.py # Inicializador DDL y semillero de datos -├── CHANGELOG_SESSION.md # Historial técnico cronológico -├── requirements.txt # Dependencias Python -├── .env.example # Plantilla de variables de entorno -└── app.py # Punto de entrada de la aplicación Flask -``` - ---- - -## 📄 Licencia - -Este proyecto forma parte del sistema de gestión institucional y educativa de **UniCABA**. Todos los derechos reservados. \ No newline at end of file +# Panel de Administración Edu-Space (UniCABA) + +Plataforma integral de gestión áulica, asignación de espacios, control de horarios y reservas académicas para la **Universidad de la Ciudad de Buenos Aires (UniCABA)**, desarrollada con **Python / Flask**, **SQLAlchemy**, **PostgreSQL** y **Bootstrap 5**. + +--- + +## 🏛️ Sede Institucional y Ubicaciones +* **Sede Central UniCABA:** Tte. Gral. Juan Domingo Perón 802, Ciudad Autónoma de Buenos Aires (CABA) — Aulas de grado, auditorio principal y laboratorios distribuidos desde Planta Baja (Piso 0) hasta el 4.° Piso. +* **Campus Virtual:** Espacio áulico digital integrado (Microsoft Teams / Moodle) configurado con **capacidad ilimitada ($\infty$)**. + +--- + +## ✨ Características Principales + +### 🛡️ 1. Control de Accesos RBAC Granular (Matriz estilo FortiGate) +* **Gestión por Módulos:** Permisos independientes por cada área del sistema: + 1. **Aulas y Espacios:** Creación, edición, capacidad y estado de aulas físicas y virtuales. + 2. **Edificios y Sedes:** Administración de sedes, pisos y arquitectura edilicia. + 3. **Reservas de Aulas:** Solicitud, aprobación, confirmación y cancelación. + 4. **Cartelera y Cronograma:** Calendario interactivo, visualización diaria y comisiones. + 5. **Gestión Académica:** Carreras, asignaturas, códigos y comisiones. + 6. **Sincronización Sheets:** Importador y sincronizador de Google Sheets. + 7. **Optimizador IA:** Algoritmo genético de distribución y resolución de conflictos. + 8. **Usuarios y Accesos RBAC:** Cuentas, roles y matriz de permisos. +* **Niveles de Permiso Granulares:** `Ninguno`, `Solo Lectura` o `Lectura y Escritura`. +* **Controles Rápidos:** Botón *"Establecer Todos"* para configuración masiva inmediata. +* **Roles Predefinidos:** `Admin` (control total), `Docente`, `Operador` y `Consulta`. + +### 📊 2. Sincronización e Importación desde Google Sheets +* Integración directa con la cartelera académica de UniCABA en Google Sheets. +* Extracción e importación normalizada de los 5 campos clave: + * **Código Académico:** Códigos reales de asignatura (ej. `INGA0003`, `ASIG00165`). + * **Asignatura:** Nombre oficial de la materia. + * **Aula:** Mapeo a aulas físicas (PB a 4.° piso) o aula `VIRTUAL` ($\infty$). + * **Carrera:** Normalización y vinculación relacional con entidades de carrera. + * **Horarios y Turnos:** Detección automática de franjas horarias y delimitadores de bloque (`Turno Mañana` y `Turno Tarde / Vespertino`). + +### 📅 3. Calendario Interactivo de Reservas (FullCalendar) +* **Visualización Semanal, Mensual y Diaria:** Grilla ágil de alta legibilidad con jerarquía visual: + * Asignatura destacada en tipografía grande y negrita. + * Badges con código de materia, aula asignada, turno y franja horaria. +* **Filtros Dinámicos Combinables:** + * Filtrar por **Aula**. + * Filtrar por **Materia / Asignatura**. + * Filtrar por **Carrera**. + * Filtrar por **Turno** (`Turno Mañana` / `Turno Tarde`). + * Filtrar por **Piso / Planta** (`Planta Baja`, `Piso 1`, `Piso 2`, `Piso 3`, `Piso 4`). + * **Switch "Ocultar Aulas Virtuales":** Aísla la ocupación física real en el edificio central excluyendo los eventos virtuales de capacidad infinita. +* **Ficha Modal Instantánea:** Vista previa detallada al hacer clic en cualquier evento. + +### 📋 4. Cartelera del Día y Listado de Reservas +* **Cartelera del Día (`/schedule/today`):** + * **Vista Cronológica (Timeline):** Bloques horarios de 07:00 a 22:00 hs con indicador de ocupación. + * **Vista en Tabla:** Lista ordenada con acciones rápidas y detalles de comisión. + * Filtros directos por piso, turno y switch para ocultar virtuales. +* **Listado Paginado de Reservas (`/schedule/list`):** + * Paginación de 20 registros por página preservando filtros aplicados. + * Búsqueda por texto, estado (`Confirmada`, `Pendiente`, `Cancelada`), rango de fechas y piso. + +### 🏫 5. Gestión de Aulas con Capacidad Infinita ($\infty$) +* Soporte nativo para el símbolo **`∞`** o `0` para designar aulas virtuales o espacios sin aforo restringido. +* Botón de un solo clic `Ilimitada (∞)` en formularios de alta y edición con leyendas explicativas. +* Badges distintivos `∞ Ilimitada` en listados, tarjetas y fichas técnicas. + +### 🤖 6. Optimizador Inteligente de Aulas (Algoritmo Genético) +* Motor de optimización heurística para asignación automática de aulas a comisiones. +* Pondera capacidad requerida vs. capacidad de aula, equipamiento tecnológico y minimización de desplazamientos entre pisos. + +### 🎨 7. Experiencia de Usuario, Temas y Localización +* **Tema Oscuro / Claro:** Alternador con botón flotante y persistencia en `localStorage` y perfil de usuario. +* **Soporte Multilingüe:** Internacionalización integral (Español e Inglés) compilada con GNU gettext (`pybabel`). +* **Tarjetas Estadísticas Interactivas:** Accesos directos rápidos desde el panel general hacia las distintas secciones operativas. + +### 🏛️ 8. Sistema Integral de Gestión Institucional (8 Módulos) +El menú desplegable **Gestión** en la barra de navegación organiza las áreas operativas de la universidad: +* **Espacios e Infraestructura:** + * **Edificios y Sedes (`/buildings/list`):** Administración de edificios físicos, arquitectura y estado edilicio. + * **Aulas Presenciales (`/classrooms/list?view_mode=physical`):** Catálogo de aulas físicas por piso, capacidades y zócalos compactos con métricas de ocupación en tiempo real (día, semana, mes). + * **Aulas Virtuales con Reunión (`/classrooms/list?view_mode=virtual`):** Campus Virtual con salas a demanda agrupadas por comisión, capacidad ilimitada ($\infty$) y enlaces directos de acceso a videollamadas (Zoom, Google Meet, Microsoft Teams). + * **Gestión de Ocupación y Métricas (`/admin/occupancy-metrics`):** Dashboard analítico de tasas de ocupación horaria (día, semana, mes), horas pico, distribución por turno y comparativa física vs. virtual. +* **Gestión Académica:** + * **Carreras (`/admin/careers`):** ABM de carreras universitarias y planes de estudio con contador de asignaturas y comisiones activas. + * **Asignaturas (`/admin/subjects`):** Catálogo institucional de materias con créditos, departamentos y filtros por carrera y estado. + * **Comisiones y Cursadas (`/schedule/commissions`):** Gestión de cursadas, turnos, docentes, enlaces virtuales e hitos de evaluación. + * **Ciclo Lectivo (`/admin/academic-terms`):** Modelo y panel de administración de períodos académicos, cuatrimestres y activación del ciclo lectivo en curso. +* **Administración & Seguridad:** + * **Usuarios y Roles RBAC:** Cuentas, asignación de permisos matriciales y auditoría. + * **Tipificaciones de Hitos:** Catálogo de tipos de hitos de evaluación académica. + * **Sincronización Sheets:** Integración con Google Sheets para actualización en lote. + +--- + +## 🛠️ Stack Tecnológico + +| Componente | Tecnología | +| :--- | :--- | +| **Backend** | Python 3.12+ / Flask | +| **Base de Datos** | PostgreSQL 16+ / SQLAlchemy ORM | +| **Seguridad & Sesiones** | Flask-Login / Werkzeug / CSRF Protect | +| **Formularios** | Flask-WTF / WTForms | +| **Internacionalización** | Flask-Babel / GNU gettext | +| **Frontend** | Bootstrap 5.3, Bootstrap Icons, Vanilla JS, CSS Variables | +| **Calendario** | FullCalendar 5.11 | + +--- + +## 🚀 Despliegue en Proxmox VE (LXC) con Entorno Virtual `venv` + +El sistema está especialmente optimizado para ejecutarse en contenedores **LXC (Debian 12 Bookworm o Ubuntu 22.04/24.04 LTS)** dentro de **Proxmox VE**, utilizando un entorno virtual nativo de Python (`venv`), el motor **PostgreSQL** instalado en el propio contenedor y el servidor WSGI **Gunicorn** gestionado como servicio por **systemd**. + +--- + +### 📋 Paso 1: Creación del Contenedor LXC en Proxmox VE + +Podés crear el contenedor desde la interfaz Web de Proxmox (*Create CT*) o por terminal Proxmox con `pct create`: + +* **Plantilla (Template):** `debian-12-standard` (*Recomendado*) o `ubuntu-22.04-standard` / `ubuntu-24.04-standard`. +* **CPU:** 1 a 2 vCPU. +* **Memoria RAM:** 1024 MB a 2048 MB (Swap: 512 MB). +* **Disco:** 8 GB a 15 GB (almacenamiento `local-lvm` o `zfs`). +* **Red (Network):** Modo Bridge `vmbr0` con IP estática en tu red local o DHCP (ej: `192.168.1.150/24`, Gateway: `192.168.1.1`). +* **Opciones del Contenedor:** + * *Unprivileged container:* Sí (marcado por defecto, compatible). + * *Features (Características):* Habilitar **Nesting (`nesting=1`)** en `CT > Opciones > Características` (requerido para systemd). + +--- + +### ⚡ Paso 2: Instalación Automatizada con `install.sh` + +1. **Ingresar a la consola del contenedor LXC:** + Desde la Web UI de Proxmox (consola noVNC) o desde el shell de tu nodo Proxmox: + ```bash + pct enter + ``` + +2. **Clonar el repositorio y lanzar el instalador:** + ```bash + apt update && apt install -y git + git clone https://gitea.oemspot.com.ar/carlostellocba/admin-edu-space.git + cd admin-edu-space + bash install.sh + ``` + +3. **Flujo de Ejecución Automatizado en el LXC:** + * **Migración segura fuera de `/root`:** Si el repositorio se clonó en `/root`, el instalador lo traslada automáticamente a `/opt/admin-edu-space` para garantizar que el usuario del servicio (`eduspace`) tenga acceso de lectura y ejecución. + * **Locales UTF-8:** Configura `en_US.UTF-8` y `es_AR.UTF-8` para asegurar la internacionalización con `Flask-Babel` y prevenir errores de encoding. + * **Motor PostgreSQL:** Instala el motor PostgreSQL, inicia el servicio y verifica conectividad activa con bucle de espera. + * **Restauración del Snapshot Oficial ([classrooms_db.sql](file:///c:/Workspace/admin-edu-space/classrooms_db.sql)):** + * Detecta el volcado completo de datos. + * Crea la base de datos `classrooms_db` y el usuario `eduspace_user`. + * Restaura **25 aulas** (físicas y Campus Virtual $\infty$), **206 comisiones**, **206 materias**, **412 reservas históricas**, **24 carreras**, matrices RBAC y cuentas de acceso. + * Otorga privilegios totales (`GRANT ALL`) en el esquema `public`, todas las tablas y **todas las secuencias** al usuario `eduspace_user`. + * Ejecuta `init_db.py` de forma idempotente para validar roles y coherencia. + * **Entorno Virtual Python (`venv`):** Crea el entorno aislado en `/opt/admin-edu-space/venv` e instala todas las dependencias oficiales (`Flask`, `SQLAlchemy`, `Gunicorn`, etc.). + * **Servicio Systemd de Producción:** Configura el servicio `admin-edu-space.service` gestionado por **Gunicorn** (3 workers, puerto 5000), con reinicio automático ante fallos y habilitado al inicio del contenedor. + +--- + +### 🌐 Paso 3: Acceso Inmediato a la Aplicación + +Al finalizar la instalación, el script mostrará la dirección IP del contenedor: +* **URL:** **`http://:5000`** (ejemplo: `http://192.168.1.150:5000`) +* **Email Administrador:** `admin@edu-space.com` +* **Contraseña Administrador:** `admin123` + +--- + +### 🛠️ Comandos de Gestión del Servicio en el LXC + +```bash +# Consultar estado en tiempo real +systemctl status admin-edu-space + +# Seguir logs de la aplicación +journalctl -u admin-edu-space -f + +# Reiniciar la aplicación +systemctl restart admin-edu-space + +# Detener el servicio +systemctl stop admin-edu-space +``` + +--- + +### 💾 Generación de Backups y Migración a Otros Contenedores LXC + +Para respaldar la base de datos en ejecución o clonarla a otro contenedor LXC: + +```bash +# Dentro del contenedor LXC: +cd /opt/admin-edu-space +bash backup_db.sh +``` + +* El script genera un archivo fechado en `backups/classrooms_db_YYYYMMDD_HHMMSS.sql`. +* Actualiza automáticamente el archivo principal [classrooms_db.sql](file:///c:/Workspace/admin-edu-space/classrooms_db.sql). +* **Para migrar a otro contenedor:** Podés transferir `classrooms_db.sql` mediante SCP o Git y ejecutar `bash install.sh` en el nuevo LXC. + +--- + +### 💻 Instalación Manual para Desarrollo Local (con `venv`) + +Si deseás correr el proyecto en una máquina de desarrollo (Windows / Linux / macOS) sin usar el instalador de Proxmox: + +1. **Crear y activar el entorno virtual:** + * En Windows (PowerShell): + ```powershell + python -m venv venv + .\venv\Scripts\Activate.ps1 + ``` + * En Linux / macOS: + ```bash + python3 -m venv venv + source venv/bin/activate + ``` + +2. **Instalar dependencias:** + ```bash + pip install -r requirements.txt + ``` + +3. **Configurar base de datos local y restaurar snapshot:** + ```bash + cp .env.example .env + + # Crear base de datos en PostgreSQL local y cargar datos + sudo -u postgres psql -c "CREATE DATABASE classrooms_db;" + sudo -u postgres psql -d classrooms_db < classrooms_db.sql + ``` + +4. **Compilar catálogos de traducción:** + ```bash + pybabel compile -d translations + ``` + +5. **Iniciar el servidor:** + ```bash + python wsgi.py + ``` + Disponible en: **`http://localhost:5000`** + +--- + +## 🔑 Credenciales Predeterminadas + +| Usuario | Correo Electrónico | Contraseña | Rol | +| :--- | :--- | :--- | :--- | +| **Administrador del Sistema** | `admin@edu-space.com` | `admin123` | `Admin` (Acceso Total) | + +> ⚠️ **Seguridad:** Cambiá la contraseña del administrador desde la interfaz web inmediatamente después del primer inicio de sesión. + +--- + +## 📁 Estructura del Proyecto + +```text +admin-edu-space/ +├── app/ +│ ├── __init__.py # Factoría de la aplicación Flask y extensiones +│ ├── forms/ # Formularios Flask-WTF con validación CSRF +│ │ ├── auth.py # Login, perfil y cambio de clave +│ │ ├── building.py # Sedes y edificios +│ │ ├── classroom.py # Aulas y capacidades (con soporte ∞) +│ │ └── reservation.py # Reservas de aulas y horarios +│ ├── models/ # Modelos relacionales SQLAlchemy +│ │ ├── academic_term.py # Ciclos lectivos y períodos académicos (activo/histórico) +│ │ ├── building.py # Sedes y edificios institucionales +│ │ ├── career.py # Carreras y titulaciones universitarias +│ │ ├── classroom.py # Aulas físicas y virtuales con capacidades +│ │ ├── genetic_algorithm.py # Estructuras de optimización heurística +│ │ ├── milestone.py # Tipificaciones de hitos académicos y exámenes +│ │ ├── reservation.py # Reservas horarias, estados y turnos +│ │ ├── role.py # Roles y matriz de permisos granulares RBAC +│ │ ├── subject.py # Asignaturas, materias y comisiones de cursada +│ │ └── user.py # Usuarios, credenciales y asignación de roles +│ ├── routes/ # Controladores y rutas modulares (Blueprints) +│ │ ├── admin.py # Carreras, Asignaturas, Ciclo Lectivo, Tipificaciones, Métricas, Usuarios y Roles +│ │ ├── auth.py # Autenticación, sesiones y perfil +│ │ ├── buildings.py # Gestión de sedes y edificios +│ │ ├── classrooms.py # Aulas presenciales vs. Campus Virtual a demanda y métricas de uso +│ │ ├── genetic_algorithm.py # Optimizador heurístico de asignación de espacios +│ │ ├── main.py # Dashboard principal y métricas rápidas +│ │ └── schedule.py # Calendario interactivo, cartelera del día, comisiones y reservas +│ ├── services/ # Servicios y lógica de negocio +│ │ └── sheets_importer.py # Parser y sincronizador bidireccional de Google Sheets +│ ├── static/ # Recursos estáticos web (CSS, JS, imágenes institucionales) +│ └── templates/ # Vistas Jinja2 renderizadas con Bootstrap 5 +├── config/ # Configuraciones de entorno (desarrollo, testing, prod) +├── translations/ # Catálogos GNU gettext compilados (es / en) +├── classrooms_db.sql # Snapshot completo de base de datos (PostgreSQL 14+) +├── install.sh # Instalador automatizado para Proxmox VE LXC (venv + PostgreSQL) +├── backup_db.sh # Script para generar nuevos backups y actualizar snapshot +├── init_db.py # Inicializador DDL y sincronizador de esquema/roles +├── CHANGELOG_SESSION.md # Historial técnico cronológico +├── requirements.txt # Dependencias Python (incluye Gunicorn) +├── .env.example # Plantilla de variables de entorno +└── wsgi.py # Punto de entrada de la aplicación Flask +``` + +--- + +## 📄 Licencia + +Este proyecto forma parte del sistema de gestión institucional y educativa de **UniCABA**. Todos los derechos reservados. + \ No newline at end of file diff --git a/app/templates/admin/metrics/occupancy.html b/app/templates/admin/metrics/occupancy.html index dc89309..269dccf 100644 --- a/app/templates/admin/metrics/occupancy.html +++ b/app/templates/admin/metrics/occupancy.html @@ -29,6 +29,7 @@ overflow: hidden; } .metric-bar-fill { + width: 0; height: 100%; border-radius: 6px; transition: width 0.6s ease; @@ -76,7 +77,7 @@
-
+
{% trans %}Promedio sobre 15 hs operativas ({{ physical_rooms_count }} aulas presenciales){% endtrans %} @@ -97,7 +98,7 @@
-
+
{% trans %}Semana en curso (Lunes a Sábado){% endtrans %} @@ -118,7 +119,7 @@
-
+
{% trans %}Total mes calendario activo{% endtrans %} @@ -174,7 +175,7 @@
+ data-width="{{ fs.avg_pct }}%">
{% endfor %} @@ -330,3 +331,13 @@ {% endblock %} + +{% block extra_js %} + +{% endblock %} diff --git a/backup_db.sh b/backup_db.sh new file mode 100644 index 0000000..7af9939 --- /dev/null +++ b/backup_db.sh @@ -0,0 +1,96 @@ +#!/usr/bin/env bash +# ============================================================================== +# backup_db.sh — Admin Edu-Space (UniCABA) +# Generador de backups de PostgreSQL y actualización de classrooms_db.sql +# Uso: bash backup_db.sh +# ============================================================================== + +set -euo pipefail + +RED='\033[0;31m'; GREEN='\033[0;32m'; YELLOW='\033[1;33m' +CYAN='\033[0;36m'; BOLD='\033[1m'; RESET='\033[0m' + +ok() { echo -e "${GREEN} ✔ $*${RESET}"; } +info() { echo -e "${CYAN} ▸ $*${RESET}"; } +warn() { echo -e "${YELLOW} ⚠ $*${RESET}"; } +err() { echo -e "${RED} ✘ $*${RESET}" >&2; exit 1; } +hdr() { echo -e "\n${BOLD}${CYAN}══ $* ══${RESET}\n"; } + +APP_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +BACKUP_DIR="${APP_DIR}/backups" +TIMESTAMP="$(date +'%Y%m%d_%H%M%S')" +BACKUP_FILE="${BACKUP_DIR}/classrooms_db_${TIMESTAMP}.sql" +ROOT_BACKUP="${APP_DIR}/classrooms_db.sql" +APP_ENV="${APP_DIR}/.env" + +mkdir -p "$BACKUP_DIR" + +hdr "Iniciando Backup de la Base de Datos" + +# 1. Obtener parámetros de conexión +DB_NAME="classrooms_db" +DB_USER="eduspace_user" +DB_HOST="localhost" +DB_PORT="5432" +DB_PASSWORD="" + +if [[ -f "$APP_ENV" ]]; then + set -a + # shellcheck disable=SC1090 + source <(grep -v '^#' "$APP_ENV" | grep '=') + set +a + if [[ -n "${DATABASE_URL:-}" ]]; then + # Extraer credenciales desde DATABASE_URL si existe + # Formato: postgresql://usuario:pass@host:port/dbname + DB_USER=$(echo "$DATABASE_URL" | sed -E 's|.*://([^:]+):?([^@]*)@.*|\1|') + DB_PASSWORD=$(echo "$DATABASE_URL" | sed -E 's|.*://[^:]+:([^@]*)@.*|\1|') + DB_HOST=$(echo "$DATABASE_URL" | sed -E 's|.*@([^:/]+):?.*|\1|') + DB_PORT=$(echo "$DATABASE_URL" | sed -E 's|.*:([0-9]+)/.*|\1|') + DB_NAME=$(echo "$DATABASE_URL" | sed -E 's|.*/([^?]+).*|\1|') + fi +fi + +DB_USER="${DB_USER:-postgres}" +DB_NAME="${DB_NAME:-classrooms_db}" +DB_HOST="${DB_HOST:-localhost}" +DB_PORT="${DB_PORT:-5432}" + +info "Base de datos: ${DB_NAME}" +info "Usuario: ${DB_USER}" +info "Host: ${DB_HOST}:${DB_PORT}" + +# 2. Ejecutar pg_dump +info "Generando volcado SQL..." + +export PGPASSWORD="${DB_PASSWORD:-}" + +if command -v pg_dump >/dev/null 2>&1; then + # Intentar como usuario configurado + if pg_dump -h "$DB_HOST" -p "$DB_PORT" -U "$DB_USER" -d "$DB_NAME" \ + --no-owner --no-privileges --clean --if-exists > "$BACKUP_FILE" 2>/dev/null; then + ok "Volcado generado con éxito usando pg_dump" + elif [[ $EUID -eq 0 ]] || sudo -n true 2>/dev/null; then + info "Reintentando volcado como superusuario postgres..." + sudo -u postgres pg_dump -d "$DB_NAME" --no-owner --no-privileges > "$BACKUP_FILE" + ok "Volcado generado como usuario postgres" + else + err "No se pudo realizar el backup. Verifica tus permisos y credenciales." + fi +else + err "No se encontró la herramienta 'pg_dump'. Instala postgresql-client." +fi + +# 3. Limpiar comandos de versiones específicas (ej: \restrict de PG 18) para máxima compatibilidad +sed -i '/^\\restrict/d' "$BACKUP_FILE" 2>/dev/null || true + +# 4. Actualizar copia en raíz para despliegues automáticos +cp "$BACKUP_FILE" "$ROOT_BACKUP" + +BACKUP_SIZE=$(du -h "$BACKUP_FILE" | awk '{print $1}') + +hdr "Resumen del Backup" +ok "Archivo histórico: ${BACKUP_FILE} (${BACKUP_SIZE})" +ok "Copia para deploy: ${ROOT_BACKUP} (${BACKUP_SIZE})" +info "Para restaurar en otro servidor:" +echo -e " ${CYAN}sudo -u postgres psql -d ${DB_NAME} < ${ROOT_BACKUP}${RESET}" +echo "" diff --git a/classrooms_db.sql b/classrooms_db.sql new file mode 100644 index 0000000..d6d5640 --- /dev/null +++ b/classrooms_db.sql @@ -0,0 +1,2044 @@ +-- +-- PostgreSQL database dump +-- + +-- Dumped from database version 18.6 +-- Dumped by pg_dump version 18.6 + +SET statement_timeout = 0; +SET lock_timeout = 0; +SET idle_in_transaction_session_timeout = 0; +SET transaction_timeout = 0; +SET client_encoding = 'UTF8'; +SET standard_conforming_strings = on; +SELECT pg_catalog.set_config('search_path', '', false); +SET check_function_bodies = false; +SET xmloption = content; +SET client_min_messages = warning; +SET row_security = off; + +SET default_tablespace = ''; + +SET default_table_access_method = heap; + +-- +-- Name: academic_milestones; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.academic_milestones ( + id integer NOT NULL, + title character varying(150), + materia_codigo character varying(50) NOT NULL, + subject_id integer, + milestone_type_id integer NOT NULL, + date timestamp without time zone NOT NULL, + classroom character varying(100), + link character varying(255), + notes text, + is_active boolean NOT NULL, + created_at timestamp without time zone, + updated_at timestamp without time zone, + commission_id integer +); + + +-- +-- Name: academic_milestones_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.academic_milestones_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: academic_milestones_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.academic_milestones_id_seq OWNED BY public.academic_milestones.id; + + +-- +-- Name: academic_terms; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.academic_terms ( + id integer NOT NULL, + code character varying(50) NOT NULL, + name character varying(150) NOT NULL, + year integer NOT NULL, + period_type character varying(50) NOT NULL, + start_date date, + end_date date, + is_current boolean NOT NULL, + is_active boolean NOT NULL, + created_at timestamp without time zone +); + + +-- +-- Name: academic_terms_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.academic_terms_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: academic_terms_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.academic_terms_id_seq OWNED BY public.academic_terms.id; + + +-- +-- Name: buildings; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.buildings ( + id integer NOT NULL, + name character varying(100) NOT NULL, + code character varying(50), + address character varying(255), + floors integer DEFAULT 1 NOT NULL, + description text, + is_active boolean DEFAULT true NOT NULL, + created_at timestamp without time zone DEFAULT now(), + updated_at timestamp without time zone DEFAULT now() +); + + +-- +-- Name: buildings_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.buildings_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: buildings_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.buildings_id_seq OWNED BY public.buildings.id; + + +-- +-- Name: careers; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.careers ( + id integer NOT NULL, + name character varying(150) NOT NULL, + code character varying(50), + description text, + created_at timestamp without time zone DEFAULT CURRENT_TIMESTAMP +); + + +-- +-- Name: careers_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.careers_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: careers_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.careers_id_seq OWNED BY public.careers.id; + + +-- +-- Name: classroom_resources; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.classroom_resources ( + id integer NOT NULL, + classroom_id integer NOT NULL, + resource_type character varying(50) NOT NULL, + brand character varying(100), + model character varying(100), + specifications text, + functional boolean, + last_maintenance_date timestamp without time zone, + created_at timestamp without time zone, + updated_at timestamp without time zone +); + + +-- +-- Name: classroom_resources_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.classroom_resources_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: classroom_resources_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.classroom_resources_id_seq OWNED BY public.classroom_resources.id; + + +-- +-- Name: classrooms; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.classrooms ( + id integer NOT NULL, + campus_id integer, + building character varying(100) NOT NULL, + room_number character varying(50) NOT NULL, + floor character varying(50) NOT NULL, + capacity integer NOT NULL, + description text, + active boolean NOT NULL, + created_at timestamp without time zone, + updated_at timestamp without time zone, + building_id integer +); + + +-- +-- Name: classrooms_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.classrooms_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: classrooms_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.classrooms_id_seq OWNED BY public.classrooms.id; + + +-- +-- Name: commissions; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.commissions ( + id integer NOT NULL, + subject_id integer NOT NULL, + code character varying(50) NOT NULL, + semester character varying(20) NOT NULL, + year integer NOT NULL, + teacher_id integer, + max_students integer NOT NULL, + current_students integer, + schedule character varying(255), + active boolean, + created_at timestamp without time zone, + updated_at timestamp without time zone, + shift character varying(30), + virtual_link character varying(500) +); + + +-- +-- Name: commissions_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.commissions_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: commissions_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.commissions_id_seq OWNED BY public.commissions.id; + + +-- +-- Name: milestone_types; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.milestone_types ( + id integer NOT NULL, + name character varying(100) NOT NULL, + code character varying(50) NOT NULL, + color character varying(30), + description character varying(255), + sort_order integer, + is_active boolean NOT NULL, + created_at timestamp without time zone, + updated_at timestamp without time zone +); + + +-- +-- Name: milestone_types_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.milestone_types_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: milestone_types_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.milestone_types_id_seq OWNED BY public.milestone_types.id; + + +-- +-- Name: permissions; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.permissions ( + id integer NOT NULL, + role_id integer NOT NULL, + module character varying(50) NOT NULL, + access_level character varying(20) DEFAULT 'none'::character varying NOT NULL +); + + +-- +-- Name: permissions_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.permissions_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: permissions_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.permissions_id_seq OWNED BY public.permissions.id; + + +-- +-- Name: reservations; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.reservations ( + id integer NOT NULL, + classroom_id integer NOT NULL, + commission_id integer NOT NULL, + teacher_id integer NOT NULL, + start_time timestamp without time zone NOT NULL, + end_time timestamp without time zone NOT NULL, + purpose character varying(500) NOT NULL, + status character varying(20) NOT NULL, + expected_attendees integer NOT NULL, + notes text, + created_at timestamp without time zone, + updated_at timestamp without time zone, + shift character varying(30), + virtual_link character varying(500) +); + + +-- +-- Name: reservations_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.reservations_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: reservations_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.reservations_id_seq OWNED BY public.reservations.id; + + +-- +-- Name: roles; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.roles ( + id integer NOT NULL, + name character varying(80) NOT NULL, + description character varying(255), + is_system boolean DEFAULT false, + created_at timestamp without time zone DEFAULT CURRENT_TIMESTAMP +); + + +-- +-- Name: roles_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.roles_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: roles_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.roles_id_seq OWNED BY public.roles.id; + + +-- +-- Name: subjects; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.subjects ( + id integer NOT NULL, + code character varying(50) NOT NULL, + name character varying(200) NOT NULL, + description text, + department character varying(100) NOT NULL, + credits integer NOT NULL, + active boolean NOT NULL, + created_at timestamp without time zone, + updated_at timestamp without time zone, + career_id integer +); + + +-- +-- Name: subjects_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.subjects_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: subjects_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.subjects_id_seq OWNED BY public.subjects.id; + + +-- +-- Name: users; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.users ( + id integer NOT NULL, + email character varying(255) NOT NULL, + password_hash character varying(255) NOT NULL, + name character varying(100) NOT NULL, + role character varying(50) NOT NULL, + is_active boolean NOT NULL, + created_at timestamp without time zone, + last_login timestamp without time zone, + preferred_language character varying(10), + theme_preference character varying(10) DEFAULT 'auto'::character varying NOT NULL, + role_id integer +); + + +-- +-- Name: users_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.users_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: users_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.users_id_seq OWNED BY public.users.id; + + +-- +-- Name: academic_milestones id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.academic_milestones ALTER COLUMN id SET DEFAULT nextval('public.academic_milestones_id_seq'::regclass); + + +-- +-- Name: academic_terms id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.academic_terms ALTER COLUMN id SET DEFAULT nextval('public.academic_terms_id_seq'::regclass); + + +-- +-- Name: buildings id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.buildings ALTER COLUMN id SET DEFAULT nextval('public.buildings_id_seq'::regclass); + + +-- +-- Name: careers id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.careers ALTER COLUMN id SET DEFAULT nextval('public.careers_id_seq'::regclass); + + +-- +-- Name: classroom_resources id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.classroom_resources ALTER COLUMN id SET DEFAULT nextval('public.classroom_resources_id_seq'::regclass); + + +-- +-- Name: classrooms id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.classrooms ALTER COLUMN id SET DEFAULT nextval('public.classrooms_id_seq'::regclass); + + +-- +-- Name: commissions id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.commissions ALTER COLUMN id SET DEFAULT nextval('public.commissions_id_seq'::regclass); + + +-- +-- Name: milestone_types id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.milestone_types ALTER COLUMN id SET DEFAULT nextval('public.milestone_types_id_seq'::regclass); + + +-- +-- Name: permissions id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.permissions ALTER COLUMN id SET DEFAULT nextval('public.permissions_id_seq'::regclass); + + +-- +-- Name: reservations id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.reservations ALTER COLUMN id SET DEFAULT nextval('public.reservations_id_seq'::regclass); + + +-- +-- Name: roles id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.roles ALTER COLUMN id SET DEFAULT nextval('public.roles_id_seq'::regclass); + + +-- +-- Name: subjects id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.subjects ALTER COLUMN id SET DEFAULT nextval('public.subjects_id_seq'::regclass); + + +-- +-- Name: users id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.users ALTER COLUMN id SET DEFAULT nextval('public.users_id_seq'::regclass); + + +-- +-- Data for Name: academic_milestones; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.academic_milestones (id, title, materia_codigo, subject_id, milestone_type_id, date, classroom, link, notes, is_active, created_at, updated_at, commission_id) FROM stdin; +\. + + +-- +-- Data for Name: academic_terms; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.academic_terms (id, code, name, year, period_type, start_date, end_date, is_current, is_active, created_at) FROM stdin; +2 2026-1 Ciclo Lectivo 2026 - 1º Cuatrimestre 2026 Primer Cuatrimestre 2026-03-09 2026-07-10 f t 2026-09-03 14:45:00.606074 +1 2026-2 Ciclo Lectivo 2026 - 2º Cuatrimestre 2026 Segundo Cuatrimestre 2026-08-03 2026-12-18 t t 2026-09-03 14:45:00.606074 +\. + + +-- +-- Data for Name: buildings; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.buildings (id, name, code, address, floors, description, is_active, created_at, updated_at) FROM stdin; +2 Campus Virtual VIRTUAL Plataforma Virtual UniCABA 1 Aulas y comisiones remotas de cursada sincrónica y asincrónica. t 2026-09-03 05:21:41.350156 2026-09-03 05:28:35.505045 +1 Edificio Central CENTRAL Tte. Gral. Juan Domingo Perón 802, CABA 4 Sede central institucional de UniCABA. Aulas de grado, auditorio y laboratorios. t 2026-09-03 05:21:41.345156 2026-09-03 05:35:38.543452 +\. + + +-- +-- Data for Name: careers; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.careers (id, name, code, description, created_at) FROM stdin; +1 INGLÉS \N \N 2026-09-03 04:55:28.54836 +2 Gestión (CCC) \N \N 2026-09-03 04:55:28.582342 +3 ETD (CCC) \N \N 2026-09-03 04:55:28.615326 +4 PROF PROF (CCC) \N \N 2026-09-03 04:55:28.632344 +5 PUEP \N \N 2026-09-03 04:55:28.646325 +6 PUEP CCC \N \N 2026-09-03 04:55:28.712285 +7 DIPLO. BILINGUE \N \N 2026-09-03 04:55:28.733319 +8 DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) \N \N 2026-09-03 04:55:28.753343 +9 VIDEOJUEGOS (CCC) \N \N 2026-09-03 04:55:28.761318 +10 TEC. DIG. (CCC) \N \N 2026-09-03 04:55:28.774343 +11 DATOS (CCC) \N \N 2026-09-03 04:55:28.782319 +12 POSG. PRIMARIA \N \N 2026-09-03 04:55:28.797328 +13 DIPLO. ALFABETIZACIÓN \N \N 2026-09-03 04:55:28.812318 +14 CIENCIAS \N \N 2026-09-03 04:55:28.830927 +15 MONODISCIPLINARES \N \N 2026-09-03 04:55:28.833925 +16 EF. SALUD \N \N 2026-09-03 04:55:28.875926 +17 EF. GESTIÓN \N \N 2026-09-03 04:55:28.890926 +18 POSG. INCLUSIVAS \N \N 2026-09-03 04:55:29.097378 +19 POSG. INICIAL \N \N 2026-09-03 04:55:29.114344 +20 DATOS(CCC)-TEC.DIG \N \N 2026-09-03 04:55:29.159374 +21 PROF PROF (CCC) - CIENCIAS \N \N 2026-09-03 04:55:29.218375 +22 EF. SALUD - EF. GESTIÓN \N \N 2026-09-03 04:55:29.430954 +23 PUEP - CIENCIAS \N \N 2026-09-03 04:55:29.482591 +24 ETD-MONO \N \N 2026-09-03 04:55:29.716633 +\. + + +-- +-- Data for Name: classroom_resources; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.classroom_resources (id, classroom_id, resource_type, brand, model, specifications, functional, last_maintenance_date, created_at, updated_at) FROM stdin; +\. + + +-- +-- Data for Name: classrooms; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.classrooms (id, campus_id, building, room_number, floor, capacity, description, active, created_at, updated_at, building_id) FROM stdin; +2 \N Edificio Central Aula 204 2 35 Aula física 204 - Piso 2 t 2026-09-03 04:55:28.603326 2026-09-03 05:21:41.354186 1 +3 \N Edificio Central Aula 305 3 35 Aula física 305 - Piso 3 t 2026-09-03 04:55:28.615326 2026-09-03 05:21:41.354186 1 +4 \N Edificio Central Sala Reunión 2°P 2 15 Sala de reunión piso 2 t 2026-09-03 04:55:28.647353 2026-09-03 05:21:41.354186 1 +5 \N Edificio Central Aula 402 4 35 Aula física 402 - Piso 4 t 2026-09-03 04:55:28.654351 2026-09-03 05:21:41.354186 1 +6 \N Edificio Central Sala Reunión 4°P 4 15 Sala de reunión piso 4 t 2026-09-03 04:55:28.662353 2026-09-03 05:21:41.354186 1 +7 \N Edificio Central Aula 404 4 35 Aula física 404 - Piso 4 t 2026-09-03 04:55:28.67035 2026-09-03 05:21:41.354186 1 +8 \N Edificio Central Aula 401 4 35 Aula física 401 - Piso 4 t 2026-09-03 04:55:28.692327 2026-09-03 05:21:41.354186 1 +9 \N Edificio Central Aula 307 3 35 Aula física 307 - Piso 3 t 2026-09-03 04:55:28.705261 2026-09-03 05:21:41.354186 1 +10 \N Edificio Central Aula 306 3 35 Aula física 306 - Piso 3 t 2026-09-03 04:55:28.754344 2026-09-03 05:21:41.354186 1 +11 \N Edificio Central Aula 301 3 35 Aula física 301 - Piso 3 t 2026-09-03 04:55:28.775319 2026-09-03 05:21:41.354186 1 +12 \N Edificio Central Aula 302 3 35 Aula física 302 - Piso 3 t 2026-09-03 04:55:28.798343 2026-09-03 05:21:41.354186 1 +13 \N Edificio Central Aula 303 3 35 Aula física 303 - Piso 3 t 2026-09-03 04:55:28.81332 2026-09-03 05:21:41.354186 1 +14 \N Edificio Central Aula 403 4 35 Aula física 403 - Piso 4 t 2026-09-03 04:55:28.822319 2026-09-03 05:21:41.354186 1 +15 \N Edificio Central Aula 304 3 35 Aula física 304 - Piso 3 t 2026-09-03 04:55:28.833925 2026-09-03 05:21:41.354186 1 +16 \N Edificio Central Aula 308 3 35 Aula física 308 - Piso 3 t 2026-09-03 04:55:28.843926 2026-09-03 05:21:41.354186 1 +17 \N Edificio Central Aula 206 2 35 Aula física 206 - Piso 2 t 2026-09-03 04:55:28.941956 2026-09-03 05:21:41.354186 1 +18 \N Edificio Central Aula 203 2 35 Aula física 203 - Piso 2 t 2026-09-03 04:55:28.956375 2026-09-03 05:21:41.354186 1 +19 \N Edificio Central Aula 201 2 35 Aula física 201 - Piso 2 t 2026-09-03 04:55:28.990376 2026-09-03 05:21:41.354186 1 +20 \N Edificio Central Aula 205 2 35 Aula física 205 - Piso 2 t 2026-09-03 04:55:29.028373 2026-09-03 05:21:41.354186 1 +21 \N Edificio Central Aula 309 3 35 Aula física 309 - Piso 3 t 2026-09-03 04:55:29.144374 2026-09-03 05:21:41.354186 1 +22 \N Edificio Central Aula 202 2 35 Aula física 202 - Piso 2 t 2026-09-03 04:55:29.211347 2026-09-03 05:21:41.354186 1 +23 \N Edificio Central Act.en Museo 1 30 Act.en Museo t 2026-09-03 04:55:29.236373 2026-09-03 05:21:41.354186 1 +24 \N Edificio Central Aula 406 4 35 Aula física 406 - Piso 4 t 2026-09-03 04:55:29.273374 2026-09-03 05:21:41.354186 1 +25 \N Edificio Central Auditorio 0 150 Auditorio principal UniCABA t 2026-09-03 04:55:29.561636 2026-09-03 05:21:41.354186 1 +1 \N Campus Virtual VIRTUAL 0 0 Espacio áulico virtual UniCABA t 2026-09-03 04:55:28.550356 2026-09-03 05:56:08.719223 2 +\. + + +-- +-- Data for Name: commissions; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.commissions (id, subject_id, code, semester, year, teacher_id, max_students, current_students, schedule, active, created_at, updated_at, shift, virtual_link) FROM stdin; +3 3 C1 2026-2 2026 1 100 0 Lunes 13:00 a 14:00hs t 2026-09-03 04:55:28.577325 2026-09-03 23:31:05.179768 Mañana \N +1 1 E1 2026-2 2026 1 100 0 Lunes 8:00 a 9:00hs t 2026-09-03 04:55:28.556355 2026-09-03 05:30:32.79861 Mañana \N +2 2 C1 2026-2 2026 1 100 0 Lunes 12:00 a 13:00hs t 2026-09-03 04:55:28.569355 2026-09-03 05:30:32.80861 Mañana \N +8 8 C1 2026-2 2026 1 100 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.611325 2026-09-03 05:30:32.848613 Tarde \N +9 9 C1 2026-2 2026 1 35 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.61735 2026-09-03 05:30:32.852611 Tarde \N +10 10 C1 2026-2 2026 1 100 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.624354 2026-09-03 05:30:32.85958 Tarde \N +11 11 C1 2026-2 2026 1 100 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.629351 2026-09-03 05:30:32.866579 Tarde \N +12 12 C1 2026-2 2026 1 100 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.634326 2026-09-03 05:30:32.87158 Tarde \N +13 13 C1 2026-2 2026 1 100 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.638326 2026-09-03 05:30:32.878611 Tarde \N +14 14 C1 2026-2 2026 1 100 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.643331 2026-09-03 05:30:32.88361 Tarde \N +17 17 C1 2026-2 2026 1 15 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.664356 2026-09-03 05:30:32.90161 Tarde \N +18 18 C1 2026-2 2026 1 35 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.672325 2026-09-03 05:30:32.90758 Tarde \N +15 15 C1 2026-2 2026 1 15 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.649327 2026-09-03 05:30:32.888611 Tarde \N +16 16 C1 2026-2 2026 1 35 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.656326 2026-09-03 05:30:32.895614 Tarde \N +19 19 C1 2026-2 2026 1 100 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.679351 2026-09-03 05:30:32.914662 Tarde \N +20 20 C1 2026-2 2026 1 100 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.68435 2026-09-03 05:30:32.920631 Tarde \N +21 21 C1 2026-2 2026 1 100 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.688351 2026-09-03 05:30:32.92566 Tarde \N +22 22 C1 2026-2 2026 1 35 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.693325 2026-09-03 05:30:32.930659 Tarde \N +23 23 C1 2026-2 2026 1 100 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.701725 2026-09-03 05:30:32.936629 Tarde \N +24 24 C1 2026-2 2026 1 35 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.707295 2026-09-03 05:30:32.942655 Tarde \N +25 25 C1 2026-2 2026 1 100 0 Lunes 18:00 a 21:30hs t 2026-09-03 04:55:28.715268 2026-09-03 05:30:32.948629 Tarde \N +26 26 C1 2026-2 2026 1 100 0 Lunes 18:00 a 21:30hs t 2026-09-03 04:55:28.720296 2026-09-03 05:30:32.955633 Tarde \N +27 27 C1 2026-2 2026 1 100 0 Lunes 18:00 a 21:30hs t 2026-09-03 04:55:28.725349 2026-09-03 05:30:32.96066 Tarde \N +28 28 C1 2026-2 2026 1 100 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.729349 2026-09-03 05:30:32.96566 Tarde \N +29 29 C1 2026-2 2026 1 35 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.734319 2026-09-03 05:30:32.972661 Tarde \N +30 30 C1 2026-2 2026 1 100 0 Lunes 18:00 a 19:00hs t 2026-09-03 04:55:28.736319 2026-09-03 05:30:32.97463 Tarde \N +31 31 C1 2026-2 2026 1 100 0 Lunes 18:00 a 19:00hs t 2026-09-03 04:55:28.743318 2026-09-03 05:30:32.98063 Tarde \N +32 32 C1 2026-2 2026 1 100 0 Lunes 19:00 a 20:00hs t 2026-09-03 04:55:28.748319 2026-09-03 05:30:32.98563 Tarde \N +33 33 C1 2026-2 2026 1 35 0 Lunes 18:30 a 21:30hs t 2026-09-03 04:55:28.756319 2026-09-03 05:30:32.991662 Tarde \N +34 34 C1 2026-2 2026 1 100 0 Lunes 18:30 a 21:30hs t 2026-09-03 04:55:28.76435 2026-09-03 05:30:32.99766 Tarde \N +35 35 C1 2026-2 2026 1 100 0 Lunes 18:30 a 21:30hs t 2026-09-03 04:55:28.771343 2026-09-03 05:30:33.004631 Tarde \N +36 36 C1 2026-2 2026 1 35 0 Lunes 18:30 a 21:30hs t 2026-09-03 04:55:28.777318 2026-09-03 05:30:33.009663 Tarde \N +50 50 C1 2026-2 2026 1 35 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.853926 2026-09-03 05:30:33.07763 Tarde \N +51 51 C1 2026-2 2026 1 100 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.855926 2026-09-03 05:30:33.079661 Tarde \N +52 52 C1 2026-2 2026 1 35 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.859926 2026-09-03 05:30:33.085663 Tarde \N +53 53 C1 2026-2 2026 1 35 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.861925 2026-09-03 05:30:33.08663 Tarde \N +55 55 E2 2026-2 2026 1 100 0 Martes 11:00 a 12:00hs t 2026-09-03 04:55:28.870926 2026-09-03 05:30:33.094661 Mañana \N +56 56 C1 2026-2 2026 1 100 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.877926 2026-09-03 05:30:33.10066 Tarde \N +57 57 C1 2026-2 2026 1 35 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.885926 2026-09-03 05:30:33.10763 Tarde \N +58 58 C1 2026-2 2026 1 35 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.893926 2026-09-03 05:30:33.11363 Tarde \N +59 59 C1 2026-2 2026 1 35 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.900957 2026-09-03 05:30:33.11963 Tarde \N +4 4 C1 2026-2 2026 1 100 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.585325 2026-09-03 05:30:33.12663 Tarde \N +7 7 C1 2026-2 2026 1 35 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.60535 2026-09-03 05:30:33.147663 Tarde \N +63 63 C1 2026-2 2026 1 100 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.952373 2026-09-03 05:30:33.166661 Tarde \N +64 64 C1 2026-2 2026 1 35 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.957377 2026-09-03 05:30:33.171631 Tarde \N +65 65 C1 2026-2 2026 1 100 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.965375 2026-09-03 05:30:33.178632 Tarde \N +66 66 C1 2026-2 2026 1 35 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.970376 2026-09-03 05:30:33.184661 Tarde \N +67 67 C1 2026-2 2026 1 100 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.977342 2026-09-03 05:30:33.191661 Tarde \N +68 68 C1 2026-2 2026 1 100 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.982373 2026-09-03 05:30:33.196661 Tarde \N +69 69 C1 2026-2 2026 1 100 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.98738 2026-09-03 05:30:33.201661 Tarde \N +70 70 C1 2026-2 2026 1 35 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.992376 2026-09-03 05:30:33.206632 Tarde \N +71 71 C1 2026-2 2026 1 35 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:29.000374 2026-09-03 05:30:33.212663 Tarde \N +72 72 C1 2026-2 2026 1 35 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:29.007344 2026-09-03 05:30:33.218661 Tarde \N +73 73 C1 2026-2 2026 1 35 0 Martes 18:00 a 21:30hs t 2026-09-03 04:55:29.014375 2026-09-03 05:30:33.225633 Tarde \N +74 74 C1 2026-2 2026 1 35 0 Martes 18:00 a 21:30hs t 2026-09-03 04:55:29.023373 2026-09-03 05:30:33.23163 Tarde \N +75 75 C1 2026-2 2026 1 35 0 Martes 18:00 a 21:30hs t 2026-09-03 04:55:29.030379 2026-09-03 05:30:33.23763 Tarde \N +38 38 C1 2026-2 2026 1 100 0 Lunes 18:30 a 21:30hs t 2026-09-03 04:55:28.789319 2026-09-03 05:30:33.02366 Tarde \N +39 39 C1 2026-2 2026 1 100 0 Lunes 18:30 a 21:30hs t 2026-09-03 04:55:28.794343 2026-09-03 05:30:33.02966 Tarde \N +40 40 C1 2026-2 2026 1 35 0 Lunes 18:00 a 21:00hs t 2026-09-03 04:55:28.800318 2026-09-03 05:30:33.034631 Tarde \N +41 41 C1 2026-2 2026 1 100 0 Lunes 18:00 a 21:00hs t 2026-09-03 04:55:28.807318 2026-09-03 05:30:33.04166 Tarde \N +44 44 C1 2026-2 2026 1 35 0 Lunes 18:00 a 21:00hs t 2026-09-03 04:55:28.82532 2026-09-03 05:30:33.055663 Tarde \N +46 46 C1 2026-2 2026 1 35 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.835926 2026-09-03 05:30:33.062631 Tarde \N +47 47 C1 2026-2 2026 1 35 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.842926 2026-09-03 05:30:33.068629 Tarde \N +48 48 C1 2026-2 2026 1 35 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.844925 2026-09-03 05:30:33.06963 Tarde \N +49 49 C1 2026-2 2026 1 35 0 Lunes 17:30 a 21:30hs t 2026-09-03 04:55:28.851925 2026-09-03 05:30:33.076661 Tarde \N +54 54 C1 2026-2 2026 1 100 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:28.864926 2026-09-03 05:30:33.244631 Tarde \N +76 76 C1 2026-2 2026 1 100 0 Martes 19:00 a 20:00hs t 2026-09-03 04:55:29.042373 2026-09-03 05:30:33.250632 Tarde \N +77 77 C1 2026-2 2026 1 100 0 Martes 20:00 a 21:00hs t 2026-09-03 04:55:29.049343 2026-09-03 05:30:33.257631 Tarde \N +78 78 C1 2026-2 2026 1 100 0 Martes 18:30 a 21:30hs t 2026-09-03 04:55:29.058378 2026-09-03 05:30:33.263631 Tarde \N +79 79 C1 2026-2 2026 1 100 0 Martes 18:30 a 21:30hs t 2026-09-03 04:55:29.068345 2026-09-03 05:30:33.269661 Tarde \N +80 80 C1 2026-2 2026 1 100 0 Martes 18:30 a 21:30hs t 2026-09-03 04:55:29.073374 2026-09-03 05:30:33.275663 Tarde \N +81 81 C1 2026-2 2026 1 100 0 Martes 18:30 a 21:30hs t 2026-09-03 04:55:29.078343 2026-09-03 05:30:33.282661 Tarde \N +84 84 C1 2026-2 2026 1 100 0 Martes 18:30 a 21:30hs t 2026-09-03 04:55:29.094374 2026-09-03 05:30:33.299661 Tarde \N +85 85 C1 2026-2 2026 1 35 0 Martes 18:00 a 21:00hs t 2026-09-03 04:55:29.099373 2026-09-03 05:30:33.306661 Tarde \N +86 86 C1 2026-2 2026 1 35 0 Martes 18:00 a 21:00hs t 2026-09-03 04:55:29.107374 2026-09-03 05:30:33.31466 Tarde \N +87 87 C1 2026-2 2026 1 15 0 Martes 18:00 a 21:00hs t 2026-09-03 04:55:29.117343 2026-09-03 05:30:33.322661 Tarde \N +88 88 C1 2026-2 2026 1 35 0 Martes 18:00 a 21:00hs t 2026-09-03 04:55:29.125374 2026-09-03 05:30:33.33163 Tarde \N +89 89 C1 2026-2 2026 1 15 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:29.131375 2026-09-03 05:30:33.339664 Tarde \N +90 90 C1 2026-2 2026 1 35 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:29.13837 2026-09-03 05:30:33.345631 Tarde \N +91 91 C1 2026-2 2026 1 100 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:29.140346 2026-09-03 05:30:33.34663 Tarde \N +92 92 C1 2026-2 2026 1 35 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:29.147345 2026-09-03 05:30:33.353631 Tarde \N +93 93 C1 2026-2 2026 1 35 0 Martes 17:30 a 21:30hs t 2026-09-03 04:55:29.154343 2026-09-03 05:30:33.360631 Tarde \N +95 95 C1 2026-2 2026 1 35 0 Miércoles 8:30 a 11:30hs t 2026-09-03 04:55:29.169375 2026-09-03 05:30:33.37363 Mañana \N +96 96 C1 2026-2 2026 1 100 0 Miércoles 8:00 a 9:00hs t 2026-09-03 04:55:29.176374 2026-09-03 05:30:33.379632 Mañana \N +97 97 C1 2026-2 2026 1 100 0 Miércoles 17:00 a 18:00hs t 2026-09-03 04:55:29.183373 2026-09-03 05:30:33.385632 Tarde \N +5 5 C1 2026-2 2026 1 100 0 Miércoles 18.00 a 21:30hs t 2026-09-03 04:55:28.592325 2026-09-03 05:30:33.392631 Tarde \N +98 98 C1 2026-2 2026 1 35 0 Miércoles 17:30 a 21:30hs t 2026-09-03 04:55:29.198342 2026-09-03 05:30:33.401311 Tarde \N +99 99 C1 2026-2 2026 1 100 0 Miércoles 17.30 a 21:30hs t 2026-09-03 04:55:29.207377 2026-09-03 05:30:33.40831 Tarde \N +104 104 C1 2026-2 2026 1 35 0 Miércoles 17.30 a 21:30hs t 2026-09-03 04:55:29.220343 2026-09-03 05:30:33.417285 Tarde \N +105 105 C1 2026-2 2026 1 100 0 Miércoles 17.30 a 21:30hs t 2026-09-03 04:55:29.222343 2026-09-03 05:30:33.418287 Tarde \N +106 106 C1 2026-2 2026 1 100 0 Miércoles 17.30 a 21:30hs t 2026-09-03 04:55:29.224343 2026-09-03 05:30:33.420285 Tarde \N +107 107 C1 2026-2 2026 1 15 0 Miércoles 17.30 a 21:30hs t 2026-09-03 04:55:29.226345 2026-09-03 05:30:33.421288 Tarde \N +108 108 C1 2026-2 2026 1 35 0 Miércoles 17.30 a 21:30hs t 2026-09-03 04:55:29.228345 2026-09-03 05:30:33.423286 Tarde \N +109 109 C1 2026-2 2026 1 35 0 Miércoles 17.30 a 21:30hs t 2026-09-03 04:55:29.230346 2026-09-03 05:30:33.425286 Tarde \N +110 110 C1 2026-2 2026 1 100 0 Miércoles 17.30 a 21:30hs t 2026-09-03 04:55:29.232374 2026-09-03 05:30:33.426285 Tarde \N +111 111 C1 2026-2 2026 1 100 0 Miércoles 17.30 a 21:30hs t 2026-09-03 04:55:29.234374 2026-09-03 05:30:33.428286 Tarde \N +112 112 C1 2026-2 2026 1 35 0 Miércoles 17.30 a 21:30hs t 2026-09-03 04:55:29.236373 2026-09-03 05:30:33.429285 Tarde \N +113 113 C1 2026-2 2026 1 30 0 Miércoles 17.30 a 21:30hs t 2026-09-03 04:55:29.238373 2026-09-03 05:30:33.431286 Tarde \N +114 114 C1 2026-2 2026 1 35 0 Miércoles 17.30 a 21:30hs t 2026-09-03 04:55:29.240343 2026-09-03 05:30:33.432285 Tarde \N +115 115 C1 2026-2 2026 1 35 0 Miércoles 18:00 a 21:30hs t 2026-09-03 04:55:29.242345 2026-09-03 05:30:33.433285 Tarde \N +116 116 C1 2026-2 2026 1 100 0 Miércoles 18:00 a 21:30hs t 2026-09-03 04:55:29.249374 2026-09-03 05:30:33.440104 Tarde \N +117 117 C1 2026-2 2026 1 100 0 Miércoles 18:00 a 21:30hs t 2026-09-03 04:55:29.255376 2026-09-03 05:30:33.446795 Tarde \N +118 118 C1 2026-2 2026 1 35 0 Miércoles 17:30 a 21:30hs t 2026-09-03 04:55:29.260343 2026-09-03 05:30:33.45181 Tarde \N +119 119 C1 2026-2 2026 1 100 0 Miércoles 17:30 a 21:30hs t 2026-09-03 04:55:29.262376 2026-09-03 05:30:33.452803 Tarde \N +120 120 C1 2026-2 2026 1 35 0 Miércoles 17:30 a 21:30hs t 2026-09-03 04:55:29.266374 2026-09-03 05:30:33.460769 Tarde \N +121 121 C1 2026-2 2026 1 35 0 Miércoles 18:30 a 21:30hs t 2026-09-03 04:55:29.268374 2026-09-03 05:30:33.461771 Tarde \N +122 122 C1 2026-2 2026 1 100 0 Miércoles 18:30 a 21:30hs t 2026-09-03 04:55:29.287387 2026-09-03 05:30:33.48077 Tarde \N +123 123 C1 2026-2 2026 1 100 0 Miércoles 18:30 a 21:30hs t 2026-09-03 04:55:29.294374 2026-09-03 05:30:33.486769 Tarde \N +124 124 C1 2026-2 2026 1 100 0 Miércoles 18:30 a 21:30hs t 2026-09-03 04:55:29.299374 2026-09-03 05:30:33.491771 Tarde \N +125 125 C1 2026-2 2026 1 100 0 Miércoles 18:30 a 21:30hs t 2026-09-03 04:55:29.303373 2026-09-03 05:30:33.496769 Tarde \N +126 126 C1 2026-2 2026 1 100 0 Miércoles 18:30 a 21:30hs t 2026-09-03 04:55:29.307374 2026-09-03 05:30:33.502769 Tarde \N +94 94 C1 2026-2 2026 1 35 0 Miércoles 18:30 a 21:30hs t 2026-09-03 04:55:29.161374 2026-09-03 05:30:33.51477 Tarde \N +127 127 C1 2026-2 2026 1 100 0 Miércoles 18:30 a 21:30hs t 2026-09-03 04:55:29.329374 2026-09-03 05:30:33.527769 Tarde \N +128 128 C1 2026-2 2026 1 100 0 Miércoles 18:30 a 21:30hs t 2026-09-03 04:55:29.334375 2026-09-03 05:30:33.533771 Tarde \N +129 129 C1 2026-2 2026 1 100 0 Miércoles 18:00 a 21:00hs t 2026-09-03 04:55:29.338347 2026-09-03 05:30:33.538796 Tarde \N +130 130 C1 2026-2 2026 1 100 0 Miércoles 18:00 a 21:00hs t 2026-09-03 04:55:29.344344 2026-09-03 05:30:33.545794 Tarde \N +131 131 C1 2026-2 2026 1 100 0 Miércoles 18:00 a 21:00hs t 2026-09-03 04:55:29.349376 2026-09-03 05:30:33.549795 Tarde \N +132 132 C1 2026-2 2026 1 100 0 Miércoles 18:00 a 21:00hs t 2026-09-03 04:55:29.353373 2026-09-03 05:30:33.556771 Tarde \N +133 133 C1 2026-2 2026 1 100 0 Miércoles 18:00 a 21:00hs t 2026-09-03 04:55:29.358373 2026-09-03 05:30:33.562795 Tarde \N +134 134 C1 2026-2 2026 1 100 0 Miércoles 18:00 a 21:00hs t 2026-09-03 04:55:29.362374 2026-09-03 05:30:33.568769 Tarde \N +42 42 C1 2026-2 2026 1 35 0 Miércoles 18:00 a 21:00hs t 2026-09-03 04:55:28.815345 2026-09-03 05:30:33.573794 Tarde \N +43 43 C1 2026-2 2026 1 35 0 Miércoles 18:00 a 21:00hs t 2026-09-03 04:55:28.822319 2026-09-03 05:30:33.579794 Tarde \N +135 135 C1 2026-2 2026 1 35 0 Miércoles 18:00 a 21:00hs t 2026-09-03 04:55:29.374375 2026-09-03 05:30:33.581794 Tarde \N +45 45 C1 2026-2 2026 1 35 0 Miércoles 17:30 a 21:30hs t 2026-09-03 04:55:28.832926 2026-09-03 05:30:33.582769 Tarde \N +136 136 C1 2026-2 2026 1 100 0 Miércoles 17:30 a 21:30hs t 2026-09-03 04:55:29.380346 2026-09-03 05:30:33.589769 Tarde \N +137 137 C1 2026-2 2026 1 35 0 Miércoles 17:30 a 21:30hs t 2026-09-03 04:55:29.385344 2026-09-03 05:30:33.594769 Tarde \N +138 138 C1 2026-2 2026 1 100 0 Miércoles 17:30 a 21:30hs t 2026-09-03 04:55:29.391945 2026-09-03 05:30:33.600803 Tarde \N +139 139 E1 2026-2 2026 1 100 0 Jueves 8:00 a 9:00hs t 2026-09-03 04:55:29.395952 2026-09-03 05:30:33.607771 Mañana \N +140 140 C1 2026-2 2026 1 100 0 Jueves 8:00 a 11:00hs t 2026-09-03 04:55:29.402982 2026-09-03 05:30:33.613769 Mañana \N +6 6 C1 2026-2 2026 1 100 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:28.599325 2026-09-03 05:30:33.62077 Tarde \N +101 101 C1 2026-2 2026 1 35 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.214377 2026-09-03 05:30:33.62777 Tarde \N +102 102 C1 2026-2 2026 1 35 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.216344 2026-09-03 05:30:33.63277 Tarde \N +103 103 C1 2026-2 2026 1 15 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.218375 2026-09-03 05:30:33.637773 Tarde \N +141 141 C1 2026-2 2026 1 100 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.427982 2026-09-03 05:30:33.6428 Tarde \N +142 142 C1 2026-2 2026 1 100 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.432953 2026-09-03 05:30:33.6508 Tarde \N +143 143 C1 2026-2 2026 1 100 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.441616 2026-09-03 05:30:33.6648 Tarde \N +144 144 C1 2026-2 2026 1 100 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.446585 2026-09-03 05:30:33.671773 Tarde \N +145 145 C1 2026-2 2026 1 35 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.451585 2026-09-03 05:30:33.67877 Tarde \N +146 146 C1 2026-2 2026 1 35 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.458587 2026-09-03 05:30:33.685992 Tarde \N +147 147 C1 2026-2 2026 1 100 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.465616 2026-09-03 05:30:33.691961 Tarde \N +148 148 C1 2026-2 2026 1 35 0 Jueves 17:30 a 19:30hs t 2026-09-03 04:55:29.470586 2026-09-03 05:30:33.698995 Tarde \N +149 149 C1 2026-2 2026 1 35 0 Jueves 19:30 a 21:30hs t 2026-09-03 04:55:29.477587 2026-09-03 05:30:33.705991 Tarde \N +150 150 C1 2026-2 2026 1 35 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.485585 2026-09-03 05:30:33.711992 Tarde \N +151 151 C1 2026-2 2026 1 35 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.492635 2026-09-03 05:30:33.717961 Tarde \N +152 152 C1 2026-2 2026 1 35 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.499633 2026-09-03 05:30:33.72396 Tarde \N +153 153 C1 2026-2 2026 1 35 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.506634 2026-09-03 05:30:33.729962 Tarde \N +154 154 C1 2026-2 2026 1 100 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.514634 2026-09-03 05:30:33.73596 Tarde \N +155 155 C1 2026-2 2026 1 100 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.519635 2026-09-03 05:30:33.742961 Tarde \N +156 156 C1 2026-2 2026 1 100 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.524635 2026-09-03 05:30:33.747963 Tarde \N +157 157 C1 2026-2 2026 1 100 0 Jueves 17:30 a 21:30hs t 2026-09-03 04:55:29.528635 2026-09-03 05:30:33.752961 Tarde \N +158 158 C1 2026-2 2026 1 100 0 Jueves 18:00 a 21:00hs t 2026-09-03 04:55:29.534635 2026-09-03 05:30:33.757991 Tarde \N +159 159 C1 2026-2 2026 1 100 0 Jueves 18:00 a 21:00hs t 2026-09-03 04:55:29.541635 2026-09-03 05:30:33.763961 Tarde \N +160 160 C1 2026-2 2026 1 100 0 Jueves 18:30 a 21.30hs t 2026-09-03 04:55:29.546638 2026-09-03 05:30:33.769962 Tarde \N +161 161 C1 2026-2 2026 1 100 0 Jueves 18:30 a 21.30hs t 2026-09-03 04:55:29.553633 2026-09-03 05:30:33.775961 Tarde \N +162 162 C1 2026-2 2026 1 100 0 Jueves 18:30 a 21.30hs t 2026-09-03 04:55:29.558633 2026-09-03 05:30:33.780961 Tarde \N +37 37 C1 2026-2 2026 1 100 0 Jueves 18:30 a 21.30hs t 2026-09-03 04:55:28.785318 2026-09-03 05:30:33.786991 Tarde \N +163 163 C1 2026-2 2026 1 35 0 Jueves 18:30 a 21.30hs t 2026-09-03 04:55:29.571634 2026-09-03 05:30:33.793963 Tarde \N +164 164 C1 2026-2 2026 1 100 0 Jueves 18:30 a 21.30hs t 2026-09-03 04:55:29.578634 2026-09-03 05:30:33.799962 Tarde \N +82 82 C1 2026-2 2026 1 100 0 Jueves 18:30 a 21.30hs t 2026-09-03 04:55:29.084376 2026-09-03 05:30:33.807986 Tarde \N +83 83 C1 2026-2 2026 1 100 0 Jueves 18:30 a 21.30hs t 2026-09-03 04:55:29.089382 2026-09-03 05:30:33.813961 Tarde \N +165 165 C1 2026-2 2026 1 100 0 Jueves 18:30 a 21.30hs t 2026-09-03 04:55:29.594634 2026-09-03 05:30:33.818986 Tarde \N +166 166 C1 2026-2 2026 1 100 0 Jueves 18:00 a 21:00hs t 2026-09-03 04:55:29.599633 2026-09-03 05:30:33.824983 Tarde \N +167 167 C1 2026-2 2026 1 100 0 Jueves 18:00 a 21:00hs t 2026-09-03 04:55:29.603633 2026-09-03 05:30:33.832962 Tarde \N +168 168 C1 2026-2 2026 1 35 0 Jueves 18:00 a 21:00hs t 2026-09-03 04:55:29.607633 2026-09-03 05:30:33.837964 Tarde \N +169 169 C1 2026-2 2026 1 100 0 Jueves 18:00 a 21:00hs t 2026-09-03 04:55:29.615634 2026-09-03 05:30:33.844961 Tarde \N +170 170 C1 2026-2 2026 1 35 0 Jueves 18:00 a 21:00hs t 2026-09-03 04:55:29.619633 2026-09-03 05:30:33.851982 Tarde \N +171 171 C1 2026-2 2026 1 35 0 Jueves 18:00 a 21:00hs t 2026-09-03 04:55:29.625634 2026-09-03 05:30:33.861012 Tarde \N +172 172 C1 2026-2 2026 1 35 0 Jueves 17:30 a 21:30 hs t 2026-09-03 04:55:29.634634 2026-09-03 05:30:33.867982 Tarde \N +173 173 C1 2026-2 2026 1 100 0 Jueves 17:30 a 21:30 hs t 2026-09-03 04:55:29.637634 2026-09-03 05:30:33.870007 Tarde \N +174 174 C1 2026-2 2026 1 35 0 Jueves 17:30 a 21:30 hs t 2026-09-03 04:55:29.642634 2026-09-03 05:30:33.876009 Tarde \N +175 175 C1 2026-2 2026 1 100 0 Jueves 17:30 a 21:30 hs t 2026-09-03 04:55:29.644634 2026-09-03 05:30:33.878007 Tarde \N +176 176 C1 2026-2 2026 1 35 0 Jueves 17:30 a 21:30 hs t 2026-09-03 04:55:29.649634 2026-09-03 05:30:33.883982 Tarde \N +177 177 C1 2026-2 2026 1 100 0 Jueves 17:30 a 21:30 hs t 2026-09-03 04:55:29.657633 2026-09-03 05:30:33.891008 Tarde \N +178 178 C1 2026-2 2026 1 35 0 Viernes 8:30 a 11:30hs t 2026-09-03 04:55:29.661635 2026-09-03 05:30:33.895008 Mañana \N +179 179 C1 2026-2 2026 1 100 0 Viernes 17:00 a 18:00hs t 2026-09-03 04:55:29.669633 2026-09-03 05:30:33.900983 Tarde \N +180 180 C1 2026-2 2026 1 100 0 Viernes 18:00 a 19:00hs t 2026-09-03 04:55:29.675634 2026-09-03 05:30:33.908008 Tarde \N +100 100 C1 2026-2 2026 1 100 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.209345 2026-09-03 05:30:33.914007 Tarde \N +60 60 C1 2026-2 2026 1 35 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:28.922927 2026-09-03 05:30:33.920983 Tarde \N +61 61 C1 2026-2 2026 1 35 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:28.936956 2026-09-03 05:30:33.927007 Tarde \N +62 62 C1 2026-2 2026 1 35 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:28.944956 2026-09-03 05:30:33.934007 Tarde \N +181 181 C1 2026-2 2026 1 35 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.706634 2026-09-03 05:30:33.938995 Tarde \N +182 182 C1 2026-2 2026 1 100 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.713634 2026-09-03 05:30:33.944983 Tarde \N +183 183 C1 2026-2 2026 1 100 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.718633 2026-09-03 05:30:33.952008 Tarde \N +184 184 C1 2026-2 2026 1 35 0 Viernes 18:00 a 21:30hs t 2026-09-03 04:55:29.722633 2026-09-03 05:30:33.959008 Tarde \N +185 185 C1 2026-2 2026 1 100 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.730635 2026-09-03 05:30:33.965009 Tarde \N +186 186 C1 2026-2 2026 1 35 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.735633 2026-09-03 05:30:33.971984 Tarde \N +187 187 C1 2026-2 2026 1 100 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.741634 2026-09-03 05:30:33.97801 Tarde \N +188 188 C1 2026-2 2026 1 100 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.746636 2026-09-03 05:30:33.985007 Tarde \N +189 189 C1 2026-2 2026 1 100 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.750634 2026-09-03 05:30:33.99201 Tarde \N +190 190 C1 2026-2 2026 1 100 0 Viernes 18:30 a 21:30hs t 2026-09-03 04:55:29.755634 2026-09-03 05:30:33.997009 Tarde \N +191 191 C1 2026-2 2026 1 100 0 Viernes 18:30 a 21:30hs t 2026-09-03 04:55:29.762634 2026-09-03 05:30:34.003007 Tarde \N +192 192 C1 2026-2 2026 1 100 0 Viernes 18:30 a 21:30hs t 2026-09-03 04:55:29.766634 2026-09-03 05:30:34.007982 Tarde \N +193 193 C1 2026-2 2026 1 100 0 Viernes 18:30 a 21:30hs t 2026-09-03 04:55:29.771634 2026-09-03 05:30:34.012983 Tarde \N +194 194 C1 2026-2 2026 1 100 0 Viernes 18:30 a 21:30hs t 2026-09-03 04:55:29.775634 2026-09-03 05:30:34.018014 Tarde \N +195 195 C1 2026-2 2026 1 35 0 Viernes 18:30 a 21:30hs t 2026-09-03 04:55:29.780635 2026-09-03 05:30:34.023982 Tarde \N +196 196 C1 2026-2 2026 1 35 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.787634 2026-09-03 05:30:34.029983 Tarde \N +197 197 C1 2026-2 2026 1 35 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.794634 2026-09-03 05:30:34.035984 Tarde \N +198 198 C1 2026-2 2026 1 100 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.801634 2026-09-03 05:30:34.042635 Tarde \N +199 199 C1 2026-2 2026 1 35 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.806634 2026-09-03 05:30:34.048642 Tarde \N +200 200 C1 2026-2 2026 1 15 0 Viernes 17:30 a 21:30hs t 2026-09-03 04:55:29.813635 2026-09-03 05:30:34.055667 Tarde \N +201 201 C1 2026-2 2026 1 100 0 Sábado 8:00 a 12:00hs t 2026-09-03 04:55:29.820638 2026-09-03 05:30:34.061658 Mañana \N +202 202 C1 2026-2 2026 1 100 0 Sábado 8:00 a 12:00hs t 2026-09-03 04:55:29.828634 2026-09-03 05:30:34.067668 Mañana \N +203 203 C1 2026-2 2026 1 100 0 Sábado 8:00 a 12:00hs t 2026-09-03 04:55:29.832634 2026-09-03 05:30:34.072698 Mañana \N +204 204 C1 2026-2 2026 1 100 0 Sábado 8:00 a 12:00hs t 2026-09-03 04:55:29.838542 2026-09-03 05:30:34.078668 Mañana \N +205 205 C1 2026-2 2026 1 100 0 Sábado 8:00 a 12:00hs t 2026-09-03 04:55:29.843542 2026-09-03 05:30:34.084667 Mañana \N +206 206 C1 2026-2 2026 1 100 0 Sábado 8:00 a 12:00hs t 2026-09-03 04:55:29.848542 2026-09-03 05:30:34.090693 Mañana \N +\. + + +-- +-- Data for Name: milestone_types; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.milestone_types (id, name, code, color, description, sort_order, is_active, created_at, updated_at) FROM stdin; +1 Parcial 1 parcial_1 #0d6efd Primer examen parcial de la cursada 1 t 2026-09-03 06:47:12.558298 2026-09-03 06:47:12.558298 +2 Parcial 2 parcial_2 #0b5ed7 Segundo examen parcial de la cursada 2 t 2026-09-03 06:47:12.560297 2026-09-03 06:47:12.560297 +3 Trabajo Práctico 1 tp_1 #198754 Primera entrega o evaluación práctica 3 t 2026-09-03 06:47:12.561297 2026-09-03 06:47:12.561297 +4 Trabajo Práctico 2 tp_2 #157347 Segunda entrega o evaluación práctica 4 t 2026-09-03 06:47:12.562296 2026-09-03 06:47:12.562296 +5 Trabajo Práctico 3 tp_3 #0f5132 Tercera entrega o proyecto integrador 5 t 2026-09-03 06:47:12.563296 2026-09-03 06:47:12.563296 +6 Recuperatorio Parcial 1 recu_p1 #fd7e14 Instancia de recuperación para el Parcial 1 6 t 2026-09-03 06:47:12.564297 2026-09-03 06:47:12.564297 +7 Recuperatorio Parcial 2 recu_p2 #e76b08 Instancia de recuperación para el Parcial 2 7 t 2026-09-03 06:47:12.565297 2026-09-03 06:47:12.565297 +8 Recuperatorio TP 1 recu_tp1 #ffc107 Reentrega o recuperación de Trabajo Práctico 1 8 t 2026-09-03 06:47:12.566862 2026-09-03 06:47:12.566862 +9 Recuperatorio TP 2 recu_tp2 #e0a800 Reentrega o recuperación de Trabajo Práctico 2 9 t 2026-09-03 06:47:12.567868 2026-09-03 06:47:12.567868 +10 Recuperatorio TP 3 recu_tp3 #c69500 Reentrega o recuperación de Trabajo Práctico 3 10 t 2026-09-03 06:47:12.568868 2026-09-03 06:47:12.568868 +11 Final final #dc3545 Examen final regular o libre 11 t 2026-09-03 06:47:12.569868 2026-09-03 06:47:12.569868 +12 Otro otro #6c757d Taller, seminario, clase especial o hito no tipificado 12 t 2026-09-03 06:47:12.570868 2026-09-03 06:47:12.570868 +\. + + +-- +-- Data for Name: permissions; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.permissions (id, role_id, module, access_level) FROM stdin; +1 1 classrooms read_write +2 1 reservations read_write +3 1 schedule read_write +4 1 optimizer read_write +5 1 users read_write +7 2 reservations read_write +8 2 schedule read_write +9 2 optimizer read +10 2 users none +6 2 classrooms read +21 1 buildings read_write +22 1 academic read_write +23 1 import read_write +24 2 buildings read +25 2 academic read +26 2 import none +33 1 milestone_types read_write +34 2 milestone_types read +35 5 classrooms read_write +36 5 buildings read_write +37 5 reservations read_write +38 5 schedule read_write +39 5 academic read_write +40 5 import read_write +41 5 optimizer none +42 5 users none +43 5 milestone_types read_write +44 6 classrooms read +45 6 buildings read +46 6 reservations read +47 6 schedule read +48 6 academic read +49 6 import none +50 6 optimizer none +51 6 users none +52 6 milestone_types read +53 1 metrics read_write +54 2 metrics read +55 5 metrics read_write +56 6 metrics read +\. + + +-- +-- Data for Name: reservations; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.reservations (id, classroom_id, commission_id, teacher_id, start_time, end_time, purpose, status, expected_attendees, notes, created_at, updated_at, shift, virtual_link) FROM stdin; +1 1 1 1 2026-08-31 08:00:00 2026-08-31 09:00:00 INGLC0001-E1 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Lunes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.561356 2026-09-03 14:10:04.372934 Mañana https://meet.google.com/test-edit-123 +2 1 1 1 2026-09-07 08:00:00 2026-09-07 09:00:00 INGLC0001-E1 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Lunes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.564356 2026-09-03 05:30:32.804582 Mañana \N +3 1 1 1 2026-09-14 08:00:00 2026-09-14 09:00:00 INGLC0001-E1 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Lunes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.565356 2026-09-03 05:30:32.80561 Mañana \N +4 1 1 1 2026-09-21 08:00:00 2026-09-21 09:00:00 INGLC0001-E1 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Lunes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.567355 2026-09-03 05:30:32.806611 Mañana \N +5 1 2 1 2026-08-31 12:00:00 2026-08-31 13:00:00 INGA0001 - Inglés General Académico I CONFIRMED 30 Clase semanal Lunes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.570326 2026-09-03 05:30:32.80961 Mañana \N +6 1 2 1 2026-09-07 12:00:00 2026-09-07 13:00:00 INGA0001 - Inglés General Académico I CONFIRMED 30 Clase semanal Lunes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.572327 2026-09-03 05:30:32.810611 Mañana \N +7 1 2 1 2026-09-14 12:00:00 2026-09-14 13:00:00 INGA0001 - Inglés General Académico I CONFIRMED 30 Clase semanal Lunes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.573328 2026-09-03 05:30:32.811619 Mañana \N +8 1 2 1 2026-09-21 12:00:00 2026-09-21 13:00:00 INGA0001 - Inglés General Académico I CONFIRMED 30 Clase semanal Lunes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.576326 2026-09-03 05:30:32.81358 Mañana \N +9 1 3 1 2026-08-31 13:00:00 2026-08-31 14:00:00 INGA0002 - Inglés General Académico II CONFIRMED 30 Clase semanal Lunes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.57835 2026-09-03 05:30:32.81561 Mañana \N +10 1 3 1 2026-09-07 13:00:00 2026-09-07 14:00:00 INGA0002 - Inglés General Académico II CONFIRMED 30 Clase semanal Lunes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.580328 2026-09-03 05:30:32.816579 Mañana \N +11 1 3 1 2026-09-14 13:00:00 2026-09-14 14:00:00 INGA0002 - Inglés General Académico II CONFIRMED 30 Clase semanal Lunes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.581341 2026-09-03 05:30:32.818613 Mañana \N +12 1 3 1 2026-09-21 13:00:00 2026-09-21 14:00:00 INGA0002 - Inglés General Académico II CONFIRMED 30 Clase semanal Lunes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.583331 2026-09-03 05:30:32.820581 Mañana \N +21 2 7 1 2026-08-31 17:30:00 2026-08-31 21:30:00 ASIG00006 - Institución, Comunidad y Contexto Local E2 CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.606326 2026-09-03 05:30:32.842581 Tarde \N +22 2 7 1 2026-09-07 17:30:00 2026-09-07 21:30:00 ASIG00006 - Institución, Comunidad y Contexto Local E2 CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.607354 2026-09-03 05:30:32.844613 Tarde \N +23 2 7 1 2026-09-14 17:30:00 2026-09-14 21:30:00 ASIG00006 - Institución, Comunidad y Contexto Local E2 CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.608326 2026-09-03 05:30:32.845611 Tarde \N +24 2 7 1 2026-09-21 17:30:00 2026-09-21 21:30:00 ASIG00006 - Institución, Comunidad y Contexto Local E2 CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.610325 2026-09-03 05:30:32.846613 Tarde \N +25 3 9 1 2026-08-31 17:30:00 2026-08-31 21:30:00 ASIG00015 - Pensamiento Computacional, Robótica y Programación I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:28.61935 2026-09-03 05:30:32.854582 Tarde \N +26 3 9 1 2026-09-07 17:30:00 2026-09-07 21:30:00 ASIG00015 - Pensamiento Computacional, Robótica y Programación I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:28.620325 2026-09-03 05:30:32.855612 Tarde \N +27 3 9 1 2026-09-14 17:30:00 2026-09-14 21:30:00 ASIG00015 - Pensamiento Computacional, Robótica y Programación I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:28.621331 2026-09-03 05:30:32.85661 Tarde \N +28 3 9 1 2026-09-21 17:30:00 2026-09-21 21:30:00 ASIG00015 - Pensamiento Computacional, Robótica y Programación I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:28.623326 2026-09-03 05:30:32.85858 Tarde \N +29 4 15 1 2026-08-31 17:30:00 2026-08-31 21:30:00 ASIG00032 / ASIG00067 - Teorías de la Educación CONFIRMED 15 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.650353 2026-09-03 05:30:32.890618 Tarde \N +30 4 15 1 2026-09-07 17:30:00 2026-09-07 21:30:00 ASIG00032 / ASIG00067 - Teorías de la Educación CONFIRMED 15 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.65235 2026-09-03 05:30:32.891613 Tarde \N +31 4 15 1 2026-09-14 17:30:00 2026-09-14 21:30:00 ASIG00032 / ASIG00067 - Teorías de la Educación CONFIRMED 15 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.653326 2026-09-03 05:30:32.892581 Tarde \N +32 4 15 1 2026-09-21 17:30:00 2026-09-21 21:30:00 ASIG00032 / ASIG00067 - Teorías de la Educación CONFIRMED 15 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.655325 2026-09-03 05:30:32.894611 Tarde \N +33 5 16 1 2026-08-31 17:30:00 2026-08-31 21:30:00 ASIG00037 - Taller de Integración y Práctica I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.658326 2026-09-03 05:30:32.896613 Tarde \N +34 5 16 1 2026-09-07 17:30:00 2026-09-07 21:30:00 ASIG00037 - Taller de Integración y Práctica I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.659349 2026-09-03 05:30:32.897611 Tarde \N +35 5 16 1 2026-09-14 17:30:00 2026-09-14 21:30:00 ASIG00037 - Taller de Integración y Práctica I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.660326 2026-09-03 05:30:32.898613 Tarde \N +36 5 16 1 2026-09-21 17:30:00 2026-09-21 21:30:00 ASIG00037 - Taller de Integración y Práctica I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.662353 2026-09-03 05:30:32.900611 Tarde \N +37 6 17 1 2026-08-31 17:30:00 2026-08-31 21:30:00 ASIG00040 - Enseñanza de las Ciencias Sociales I CONFIRMED 15 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.666326 2026-09-03 05:30:32.902605 Tarde \N +38 6 17 1 2026-09-07 17:30:00 2026-09-07 21:30:00 ASIG00040 - Enseñanza de las Ciencias Sociales I CONFIRMED 15 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.667326 2026-09-03 05:30:32.90361 Tarde \N +39 6 17 1 2026-09-14 17:30:00 2026-09-14 21:30:00 ASIG00040 - Enseñanza de las Ciencias Sociales I CONFIRMED 15 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.668326 2026-09-03 05:30:32.905581 Tarde \N +40 6 17 1 2026-09-21 17:30:00 2026-09-21 21:30:00 ASIG00040 - Enseñanza de las Ciencias Sociales I CONFIRMED 15 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.67035 2026-09-03 05:30:32.906581 Tarde \N +41 7 18 1 2026-08-31 17:30:00 2026-08-31 21:30:00 ASIG00043 - Enseñanza de la Matemática II - Primer Ciclo CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.673353 2026-09-03 05:30:32.90961 Tarde \N +42 7 18 1 2026-09-07 17:30:00 2026-09-07 21:30:00 ASIG00043 - Enseñanza de la Matemática II - Primer Ciclo CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.674327 2026-09-03 05:30:32.910581 Tarde \N +43 7 18 1 2026-09-14 17:30:00 2026-09-14 21:30:00 ASIG00043 - Enseñanza de la Matemática II - Primer Ciclo CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.676351 2026-09-03 05:30:32.91158 Tarde \N +44 7 18 1 2026-09-21 17:30:00 2026-09-21 21:30:00 ASIG00043 - Enseñanza de la Matemática II - Primer Ciclo CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.677326 2026-09-03 05:30:32.912621 Tarde \N +45 8 22 1 2026-08-31 17:30:00 2026-08-31 21:30:00 ASIG00109 - Evaluación de los aprendizajes CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.695325 2026-09-03 05:30:32.931631 Tarde \N +46 8 22 1 2026-09-07 17:30:00 2026-09-07 21:30:00 ASIG00109 - Evaluación de los aprendizajes CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.696326 2026-09-03 05:30:32.933661 Tarde \N +47 8 22 1 2026-09-14 17:30:00 2026-09-14 21:30:00 ASIG00109 - Evaluación de los aprendizajes CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.698326 2026-09-03 05:30:32.934662 Tarde \N +48 8 22 1 2026-09-21 17:30:00 2026-09-21 21:30:00 ASIG00109 - Evaluación de los aprendizajes CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.701219 2026-09-03 05:30:32.93563 Tarde \N +49 9 24 1 2026-08-31 17:30:00 2026-08-31 21:30:00 ASIG00345-OPT - Estrategias para la Educación Inclusiva CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.708292 2026-09-03 05:30:32.94363 Tarde \N +50 9 24 1 2026-09-07 17:30:00 2026-09-07 21:30:00 ASIG00345-OPT - Estrategias para la Educación Inclusiva CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.710293 2026-09-03 05:30:32.94463 Tarde \N +51 9 24 1 2026-09-14 17:30:00 2026-09-14 21:30:00 ASIG00345-OPT - Estrategias para la Educación Inclusiva CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.711267 2026-09-03 05:30:32.94563 Tarde \N +52 9 24 1 2026-09-21 17:30:00 2026-09-21 21:30:00 ASIG00345-OPT - Estrategias para la Educación Inclusiva CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.713269 2026-09-03 05:30:32.947657 Tarde \N +17 1 5 1 2026-08-31 18:00:00 2026-08-31 21:30:00 ASIG00003 - Política Educativa y Gestión Institucional E1 CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:28.593352 2026-09-03 05:30:32.949661 Tarde \N +18 1 5 1 2026-09-07 18:00:00 2026-09-07 21:30:00 ASIG00003 - Política Educativa y Gestión Institucional E1 CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:28.595351 2026-09-03 05:30:32.950629 Tarde \N +19 1 5 1 2026-09-14 18:00:00 2026-09-14 21:30:00 ASIG00003 - Política Educativa y Gestión Institucional E1 CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:28.596325 2026-09-03 05:30:32.95266 Tarde \N +20 1 5 1 2026-09-21 18:00:00 2026-09-21 21:30:00 ASIG00003 - Política Educativa y Gestión Institucional E1 CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:28.59835 2026-09-03 05:30:32.953632 Tarde \N +53 1 30 1 2026-08-31 18:00:00 2026-08-31 19:00:00 INGLC0001-07 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:28.738319 2026-09-03 05:30:32.97563 Tarde \N +54 1 30 1 2026-09-07 18:00:00 2026-09-07 19:00:00 INGLC0001-07 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:28.739319 2026-09-03 05:30:32.976629 Tarde \N +55 1 30 1 2026-09-14 18:00:00 2026-09-14 19:00:00 INGLC0001-07 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:28.740319 2026-09-03 05:30:32.977631 Tarde \N +56 1 30 1 2026-09-21 18:00:00 2026-09-21 19:00:00 INGLC0001-07 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:28.742346 2026-09-03 05:30:32.97863 Tarde \N +57 1 32 1 2026-08-31 19:00:00 2026-08-31 20:00:00 INGLC0001-10 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:28.750318 2026-09-03 05:30:32.98663 Tarde \N +58 1 32 1 2026-09-07 19:00:00 2026-09-07 20:00:00 INGLC0001-10 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:28.751359 2026-09-03 05:30:32.987631 Tarde \N +59 1 32 1 2026-09-14 19:00:00 2026-09-14 20:00:00 INGLC0001-10 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:28.752319 2026-09-03 05:30:32.988661 Tarde \N +60 1 32 1 2026-09-21 19:00:00 2026-09-21 20:00:00 INGLC0001-10 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:28.754344 2026-09-03 05:30:32.990661 Tarde \N +61 10 33 1 2026-08-31 18:30:00 2026-08-31 21:30:00 ASIG00125 - Taller: Emprendedurismo en innovación digital CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:28.758346 2026-09-03 05:30:32.992665 Tarde \N +62 10 33 1 2026-09-07 18:30:00 2026-09-07 21:30:00 ASIG00125 - Taller: Emprendedurismo en innovación digital CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:28.759318 2026-09-03 05:30:32.993664 Tarde \N +63 10 33 1 2026-09-14 18:30:00 2026-09-14 21:30:00 ASIG00125 - Taller: Emprendedurismo en innovación digital CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:28.760344 2026-09-03 05:30:32.994661 Tarde \N +64 10 33 1 2026-09-21 18:30:00 2026-09-21 21:30:00 ASIG00125 - Taller: Emprendedurismo en innovación digital CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:28.762318 2026-09-03 05:30:32.99666 Tarde \N +69 11 36 1 2026-08-31 18:30:00 2026-08-31 21:30:00 ASIG00120 - Gestión de sistemas de información CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:28.778319 2026-09-03 05:30:33.01063 Tarde \N +70 11 36 1 2026-09-07 18:30:00 2026-09-07 21:30:00 ASIG00120 - Gestión de sistemas de información CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:28.780322 2026-09-03 05:30:33.012661 Tarde \N +71 11 36 1 2026-09-14 18:30:00 2026-09-14 21:30:00 ASIG00120 - Gestión de sistemas de información CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:28.781344 2026-09-03 05:30:33.01366 Tarde \N +72 11 36 1 2026-09-21 18:30:00 2026-09-21 21:30:00 ASIG00120 - Gestión de sistemas de información CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:28.783346 2026-09-03 05:30:33.01563 Tarde \N +65 1 34 1 2026-08-31 18:30:00 2026-08-31 21:30:00 ASIG00207 - Programación de Videojuegos I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:28.766343 2026-09-03 05:30:33.024659 Tarde \N +66 1 34 1 2026-09-07 18:30:00 2026-09-07 21:30:00 ASIG00207 - Programación de Videojuegos I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:28.767318 2026-09-03 05:30:33.02566 Tarde \N +67 1 34 1 2026-09-14 18:30:00 2026-09-14 21:30:00 ASIG00207 - Programación de Videojuegos I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:28.768318 2026-09-03 05:30:33.027663 Tarde \N +68 1 34 1 2026-09-21 18:30:00 2026-09-21 21:30:00 ASIG00207 - Programación de Videojuegos I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:28.770318 2026-09-03 05:30:33.028661 Tarde \N +73 12 40 1 2026-08-31 18:00:00 2026-08-31 21:00:00 ASIG00260 - Alfabetización inicial CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:28.801344 2026-09-03 05:30:33.03663 Tarde \N +74 12 40 1 2026-09-07 18:00:00 2026-09-07 21:00:00 ASIG00260 - Alfabetización inicial CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:28.803344 2026-09-03 05:30:33.037631 Tarde \N +75 12 40 1 2026-09-14 18:00:00 2026-09-14 21:00:00 ASIG00260 - Alfabetización inicial CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:28.804319 2026-09-03 05:30:33.038661 Tarde \N +76 12 40 1 2026-09-21 18:00:00 2026-09-21 21:00:00 ASIG00260 - Alfabetización inicial CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:28.805319 2026-09-03 05:30:33.04066 Tarde \N +77 1 41 1 2026-08-31 18:00:00 2026-08-31 21:00:00 ASIG00263 - Geometría y medidas CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:28.808319 2026-09-03 05:30:33.042661 Tarde \N +78 1 41 1 2026-09-07 18:00:00 2026-09-07 21:00:00 ASIG00263 - Geometría y medidas CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:28.810344 2026-09-03 05:30:33.043661 Tarde \N +79 1 41 1 2026-09-14 18:00:00 2026-09-14 21:00:00 ASIG00263 - Geometría y medidas CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:28.811319 2026-09-03 05:30:33.044632 Tarde \N +80 1 41 1 2026-09-21 18:00:00 2026-09-21 21:00:00 ASIG00263 - Geometría y medidas CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:28.812318 2026-09-03 05:30:33.04663 Tarde \N +81 13 42 1 2026-08-31 18:00:00 2026-08-31 21:00:00 ASIG00190 - Enseñanza de la lectura y la escritura CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: DIPLO. ALFABETIZACIÓN 2026-09-03 04:55:28.817343 2026-09-03 05:30:33.04863 Tarde \N +82 13 42 1 2026-09-07 18:00:00 2026-09-07 21:00:00 ASIG00190 - Enseñanza de la lectura y la escritura CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: DIPLO. ALFABETIZACIÓN 2026-09-03 04:55:28.818343 2026-09-03 05:30:33.04963 Tarde \N +83 13 42 1 2026-09-14 18:00:00 2026-09-14 21:00:00 ASIG00190 - Enseñanza de la lectura y la escritura CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: DIPLO. ALFABETIZACIÓN 2026-09-03 04:55:28.819319 2026-09-03 05:30:33.051661 Tarde \N +84 13 42 1 2026-09-21 18:00:00 2026-09-21 21:00:00 ASIG00190 - Enseñanza de la lectura y la escritura CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: DIPLO. ALFABETIZACIÓN 2026-09-03 04:55:28.820318 2026-09-03 05:30:33.05266 Tarde \N +85 14 44 1 2026-08-31 18:00:00 2026-08-31 21:00:00 ASIG00192 - Programas de remediación CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: DIPLO. ALFABETIZACIÓN 2026-09-03 04:55:28.826919 2026-09-03 05:30:33.05666 Tarde \N +86 14 44 1 2026-09-07 18:00:00 2026-09-07 21:00:00 ASIG00192 - Programas de remediación CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: DIPLO. ALFABETIZACIÓN 2026-09-03 04:55:28.827928 2026-09-03 05:30:33.05763 Tarde \N +87 14 44 1 2026-09-14 18:00:00 2026-09-14 21:00:00 ASIG00192 - Programas de remediación CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: DIPLO. ALFABETIZACIÓN 2026-09-03 04:55:28.829928 2026-09-03 05:30:33.05863 Tarde \N +88 14 44 1 2026-09-21 18:00:00 2026-09-21 21:00:00 ASIG00192 - Programas de remediación CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: DIPLO. ALFABETIZACIÓN 2026-09-03 04:55:28.830927 2026-09-03 05:30:33.059632 Tarde \N +89 15 46 1 2026-08-31 17:30:00 2026-08-31 21:30:00 ASIG00100 - Ecuaciones Diferenciales y Ondas CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: MONODISCIPLINARES 2026-09-03 04:55:28.836926 2026-09-03 05:30:33.06363 Tarde \N +90 15 46 1 2026-09-07 17:30:00 2026-09-07 21:30:00 ASIG00100 - Ecuaciones Diferenciales y Ondas CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: MONODISCIPLINARES 2026-09-03 04:55:28.838926 2026-09-03 05:30:33.064629 Tarde \N +91 15 46 1 2026-09-14 17:30:00 2026-09-14 21:30:00 ASIG00100 - Ecuaciones Diferenciales y Ondas CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: MONODISCIPLINARES 2026-09-03 04:55:28.839929 2026-09-03 05:30:33.06663 Tarde \N +92 15 46 1 2026-09-21 17:30:00 2026-09-21 21:30:00 ASIG00100 - Ecuaciones Diferenciales y Ondas CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: MONODISCIPLINARES 2026-09-03 04:55:28.840927 2026-09-03 05:30:33.06763 Tarde \N +93 16 48 1 2026-08-31 17:30:00 2026-08-31 21:30:00 ASIG00269 - Prácticas Educativas I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:28.846929 2026-09-03 05:30:33.071664 Tarde \N +94 16 48 1 2026-09-07 17:30:00 2026-09-07 21:30:00 ASIG00269 - Prácticas Educativas I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:28.848925 2026-09-03 05:30:33.072661 Tarde \N +95 16 48 1 2026-09-14 17:30:00 2026-09-14 21:30:00 ASIG00269 - Prácticas Educativas I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:28.849927 2026-09-03 05:30:33.07363 Tarde \N +96 16 48 1 2026-09-21 17:30:00 2026-09-21 21:30:00 ASIG00269 - Prácticas Educativas I CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:28.850926 2026-09-03 05:30:33.07463 Tarde \N +13 1 4 1 2026-08-31 17:30:00 2026-08-31 21:30:00 ASIG00001 - Instituciones Educativas E1 CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:28.58635 2026-09-03 05:30:33.080661 Tarde \N +14 1 4 1 2026-09-07 17:30:00 2026-09-07 21:30:00 ASIG00001 - Instituciones Educativas E1 CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:28.58835 2026-09-03 05:30:33.081629 Tarde \N +15 1 4 1 2026-09-14 17:30:00 2026-09-14 21:30:00 ASIG00001 - Instituciones Educativas E1 CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:28.589351 2026-09-03 05:30:33.082661 Tarde \N +16 1 4 1 2026-09-21 17:30:00 2026-09-21 21:30:00 ASIG00001 - Instituciones Educativas E1 CONFIRMED 30 Clase semanal Lunes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:28.591325 2026-09-03 05:30:33.083632 Tarde \N +97 1 54 1 2026-09-01 08:00:00 2026-09-01 09:00:00 INGA0003 - Inglés General Académico III CONFIRMED 30 Clase semanal Martes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.865926 2026-09-03 05:30:33.089661 Mañana \N +98 1 54 1 2026-09-08 08:00:00 2026-09-08 09:00:00 INGA0003 - Inglés General Académico III CONFIRMED 30 Clase semanal Martes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.866926 2026-09-03 05:30:33.09063 Mañana \N +99 1 54 1 2026-09-15 08:00:00 2026-09-15 09:00:00 INGA0003 - Inglés General Académico III CONFIRMED 30 Clase semanal Martes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.867926 2026-09-03 05:30:33.091661 Mañana \N +100 1 54 1 2026-09-22 08:00:00 2026-09-22 09:00:00 INGA0003 - Inglés General Académico III CONFIRMED 30 Clase semanal Martes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.869927 2026-09-03 05:30:33.093664 Mañana \N +101 1 55 1 2026-09-01 11:00:00 2026-09-01 12:00:00 INGA0004-E2 - Inglés General Académico IV CONFIRMED 30 Clase semanal Martes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.872926 2026-09-03 05:30:33.09566 Mañana \N +102 1 55 1 2026-09-08 11:00:00 2026-09-08 12:00:00 INGA0004-E2 - Inglés General Académico IV CONFIRMED 30 Clase semanal Martes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.873926 2026-09-03 05:30:33.096664 Mañana \N +103 1 55 1 2026-09-15 11:00:00 2026-09-15 12:00:00 INGA0004-E2 - Inglés General Académico IV CONFIRMED 30 Clase semanal Martes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.874928 2026-09-03 05:30:33.09766 Mañana \N +104 1 55 1 2026-09-22 11:00:00 2026-09-22 12:00:00 INGA0004-E2 - Inglés General Académico IV CONFIRMED 30 Clase semanal Martes (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:28.875926 2026-09-03 05:30:33.099664 Mañana \N +109 5 57 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00169 - Herramientas de Analisis y Gestion de la Informacion CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: EF. SALUD 2026-09-03 04:55:28.887926 2026-09-03 05:30:33.10863 Tarde \N +110 5 57 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00169 - Herramientas de Analisis y Gestion de la Informacion CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: EF. SALUD 2026-09-03 04:55:28.888925 2026-09-03 05:30:33.109632 Tarde \N +111 5 57 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00169 - Herramientas de Analisis y Gestion de la Informacion CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: EF. SALUD 2026-09-03 04:55:28.889957 2026-09-03 05:30:33.11063 Tarde \N +112 5 57 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00169 - Herramientas de Analisis y Gestion de la Informacion CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: EF. SALUD 2026-09-03 04:55:28.891926 2026-09-03 05:30:33.11263 Tarde \N +113 12 58 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00175 - Marketing CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: EF. GESTIÓN 2026-09-03 04:55:28.89496 2026-09-03 05:30:33.114632 Tarde \N +114 12 58 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00175 - Marketing CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: EF. GESTIÓN 2026-09-03 04:55:28.895961 2026-09-03 05:30:33.115632 Tarde \N +115 12 58 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00175 - Marketing CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: EF. GESTIÓN 2026-09-03 04:55:28.897961 2026-09-03 05:30:33.11663 Tarde \N +116 12 58 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00175 - Marketing CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: EF. GESTIÓN 2026-09-03 04:55:28.899957 2026-09-03 05:30:33.11863 Tarde \N +117 3 59 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00170 - Desarrollo de la Actividad Fisica Orientada al Bienestar y la Saud CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: EF. SALUD 2026-09-03 04:55:28.901926 2026-09-03 05:30:33.120632 Tarde \N +118 3 59 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00170 - Desarrollo de la Actividad Fisica Orientada al Bienestar y la Saud CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: EF. SALUD 2026-09-03 04:55:28.903958 2026-09-03 05:30:33.122631 Tarde \N +119 3 59 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00170 - Desarrollo de la Actividad Fisica Orientada al Bienestar y la Saud CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: EF. SALUD 2026-09-03 04:55:28.904965 2026-09-03 05:30:33.12363 Tarde \N +120 3 59 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00170 - Desarrollo de la Actividad Fisica Orientada al Bienestar y la Saud CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: EF. SALUD 2026-09-03 04:55:28.907956 2026-09-03 05:30:33.12563 Tarde \N +121 13 4 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00001 - Instituciones Educativas CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.910956 2026-09-03 05:30:33.12763 Tarde \N +122 13 4 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00001 - Instituciones Educativas CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.911959 2026-09-03 05:30:33.128629 Tarde \N +123 13 4 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00001 - Instituciones Educativas CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.913958 2026-09-03 05:30:33.130633 Tarde \N +124 13 4 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00001 - Instituciones Educativas CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.916926 2026-09-03 05:30:33.131661 Tarde \N +125 16 60 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00005 - Gestion Administrativa - Equipo 2 CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.923956 2026-09-03 05:30:33.141632 Tarde \N +126 16 60 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00005 - Gestion Administrativa - Equipo 2 CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.924927 2026-09-03 05:30:33.14263 Tarde \N +127 16 60 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00005 - Gestion Administrativa - Equipo 2 CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.926956 2026-09-03 05:30:33.144661 Tarde \N +128 16 60 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00005 - Gestion Administrativa - Equipo 2 CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.928927 2026-09-03 05:30:33.145661 Tarde \N +129 10 7 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00006 - Institucion,Comunidad y Contexto Local CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.930957 2026-09-03 05:30:33.14866 Tarde \N +130 10 7 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00006 - Institucion,Comunidad y Contexto Local CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.932957 2026-09-03 05:30:33.14967 Tarde \N +131 10 7 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00006 - Institucion,Comunidad y Contexto Local CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.933959 2026-09-03 05:30:33.150661 Tarde \N +132 10 7 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00006 - Institucion,Comunidad y Contexto Local CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.935959 2026-09-03 05:30:33.152661 Tarde \N +133 9 61 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00007 - Gestión Curricular y Pedagógica CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.938959 2026-09-03 05:30:33.155662 Tarde \N +134 9 61 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00007 - Gestión Curricular y Pedagógica CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.939956 2026-09-03 05:30:33.156661 Tarde \N +135 9 61 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00007 - Gestión Curricular y Pedagógica CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.940957 2026-09-03 05:30:33.157662 Tarde \N +136 9 61 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00007 - Gestión Curricular y Pedagógica CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.942956 2026-09-03 05:30:33.159662 Tarde \N +137 17 62 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00008 - Liderazgo y Desarrollo Profesional Docente E2 CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.945961 2026-09-03 05:30:33.161662 Tarde \N +138 17 62 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00008 - Liderazgo y Desarrollo Profesional Docente E2 CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.947959 2026-09-03 05:30:33.162664 Tarde \N +139 17 62 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00008 - Liderazgo y Desarrollo Profesional Docente E2 CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.948958 2026-09-03 05:30:33.163663 Tarde \N +140 17 62 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00008 - Liderazgo y Desarrollo Profesional Docente E2 CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:28.951336 2026-09-03 05:30:33.165661 Tarde \N +141 18 64 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00029 - Taller de Diseño de TFI CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:28.959342 2026-09-03 05:30:33.17363 Tarde \N +142 18 64 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00029 - Taller de Diseño de TFI CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:28.960344 2026-09-03 05:30:33.174662 Tarde \N +143 18 64 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00029 - Taller de Diseño de TFI CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:28.961343 2026-09-03 05:30:33.175632 Tarde \N +144 18 64 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00029 - Taller de Diseño de TFI CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:28.963343 2026-09-03 05:30:33.177661 Tarde \N +145 2 66 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00038 - Aprendizaje y Desarrollo II CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.971374 2026-09-03 05:30:33.185661 Tarde \N +146 2 66 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00038 - Aprendizaje y Desarrollo II CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.973343 2026-09-03 05:30:33.18763 Tarde \N +147 2 66 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00038 - Aprendizaje y Desarrollo II CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.974344 2026-09-03 05:30:33.188662 Tarde \N +148 2 66 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00038 - Aprendizaje y Desarrollo II CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.976343 2026-09-03 05:30:33.189661 Tarde \N +149 19 70 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00051 - Taller de Integración y Práctica III CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.994374 2026-09-03 05:30:33.20763 Tarde \N +150 19 70 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00051 - Taller de Integración y Práctica III CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.995373 2026-09-03 05:30:33.208631 Tarde \N +151 19 70 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00051 - Taller de Integración y Práctica III CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.996343 2026-09-03 05:30:33.210661 Tarde \N +152 19 70 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00051 - Taller de Integración y Práctica III CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:28.998374 2026-09-03 05:30:33.211663 Tarde \N +153 7 71 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00053 - Enseñanza de las Ciencias Naturales III - Segundo Ciclo CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.001373 2026-09-03 05:30:33.213663 Tarde \N +154 7 71 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00053 - Enseñanza de las Ciencias Naturales III - Segundo Ciclo CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.002379 2026-09-03 05:30:33.215664 Tarde \N +155 7 71 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00053 - Enseñanza de las Ciencias Naturales III - Segundo Ciclo CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.004374 2026-09-03 05:30:33.216662 Tarde \N +156 7 71 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00053 - Enseñanza de las Ciencias Naturales III - Segundo Ciclo CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.005373 2026-09-03 05:30:33.217661 Tarde \N +157 14 72 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00058 - Taller de Integración y Práctica IV (Residencia) CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.008342 2026-09-03 05:30:33.220632 Tarde \N +158 14 72 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00058 - Taller de Integración y Práctica IV (Residencia) CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.009344 2026-09-03 05:30:33.221662 Tarde \N +159 14 72 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00058 - Taller de Integración y Práctica IV (Residencia) CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.011374 2026-09-03 05:30:33.222666 Tarde \N +160 14 72 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00058 - Taller de Integración y Práctica IV (Residencia) CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.012373 2026-09-03 05:30:33.224662 Tarde \N +161 7 73 1 2026-09-01 18:00:00 2026-09-01 21:30:00 ASIG00222 - Enseñanza de las prácticas del lenguaje – Primer ciclo CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.017374 2026-09-03 05:30:33.226662 Tarde \N +162 7 73 1 2026-09-08 18:00:00 2026-09-08 21:30:00 ASIG00222 - Enseñanza de las prácticas del lenguaje – Primer ciclo CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.018374 2026-09-03 05:30:33.227632 Tarde \N +163 7 73 1 2026-09-15 18:00:00 2026-09-15 21:30:00 ASIG00222 - Enseñanza de las prácticas del lenguaje – Primer ciclo CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.020377 2026-09-03 05:30:33.22863 Tarde \N +164 7 73 1 2026-09-22 18:00:00 2026-09-22 21:30:00 ASIG00222 - Enseñanza de las prácticas del lenguaje – Primer ciclo CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.021374 2026-09-03 05:30:33.230661 Tarde \N +165 8 74 1 2026-09-01 18:00:00 2026-09-01 21:30:00 ASIG00225 - Enseñanza de la las prácticas del lenguaje – Segundo ciclo CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.024373 2026-09-03 05:30:33.232661 Tarde \N +166 8 74 1 2026-09-08 18:00:00 2026-09-08 21:30:00 ASIG00225 - Enseñanza de la las prácticas del lenguaje – Segundo ciclo CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.025374 2026-09-03 05:30:33.233632 Tarde \N +167 8 74 1 2026-09-15 18:00:00 2026-09-15 21:30:00 ASIG00225 - Enseñanza de la las prácticas del lenguaje – Segundo ciclo CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.026374 2026-09-03 05:30:33.235661 Tarde \N +168 8 74 1 2026-09-22 18:00:00 2026-09-22 21:30:00 ASIG00225 - Enseñanza de la las prácticas del lenguaje – Segundo ciclo CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.028373 2026-09-03 05:30:33.236661 Tarde \N +169 20 75 1 2026-09-01 18:00:00 2026-09-01 21:30:00 ASIG00231 - Taller de Práctica y Residencia en el Nivel Primario CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.032343 2026-09-03 05:30:33.239631 Tarde \N +170 20 75 1 2026-09-08 18:00:00 2026-09-08 21:30:00 ASIG00231 - Taller de Práctica y Residencia en el Nivel Primario CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.033373 2026-09-03 05:30:33.24063 Tarde \N +171 20 75 1 2026-09-15 18:00:00 2026-09-15 21:30:00 ASIG00231 - Taller de Práctica y Residencia en el Nivel Primario CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.035374 2026-09-03 05:30:33.241633 Tarde \N +172 20 75 1 2026-09-22 18:00:00 2026-09-22 21:30:00 ASIG00231 - Taller de Práctica y Residencia en el Nivel Primario CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.036377 2026-09-03 05:30:33.242632 Tarde \N +173 1 76 1 2026-09-01 19:00:00 2026-09-01 20:00:00 INGL0001-03 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.043342 2026-09-03 05:30:33.25163 Tarde \N +174 1 76 1 2026-09-08 19:00:00 2026-09-08 20:00:00 INGL0001-03 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.044344 2026-09-03 05:30:33.25263 Tarde \N +175 1 76 1 2026-09-15 19:00:00 2026-09-15 20:00:00 INGL0001-03 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.046343 2026-09-03 05:30:33.254632 Tarde \N +176 1 76 1 2026-09-22 19:00:00 2026-09-22 20:00:00 INGL0001-03 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.048374 2026-09-03 05:30:33.255649 Tarde \N +177 1 77 1 2026-09-01 20:00:00 2026-09-01 21:00:00 INGL0001-04 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.051346 2026-09-03 05:30:33.258631 Tarde \N +178 1 77 1 2026-09-08 20:00:00 2026-09-08 21:00:00 INGL0001-04 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.052345 2026-09-03 05:30:33.25963 Tarde \N +179 1 77 1 2026-09-15 20:00:00 2026-09-15 21:00:00 INGL0001-04 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.054376 2026-09-03 05:30:33.260632 Tarde \N +180 1 77 1 2026-09-22 20:00:00 2026-09-22 21:00:00 INGL0001-04 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.056378 2026-09-03 05:30:33.261631 Tarde \N +181 1 78 1 2026-09-01 18:30:00 2026-09-01 21:30:00 ASIG00132 - Herramientas jurídicas en la industria digital CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.060373 2026-09-03 05:30:33.300661 Tarde \N +182 1 78 1 2026-09-08 18:30:00 2026-09-08 21:30:00 ASIG00132 - Herramientas jurídicas en la industria digital CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.062344 2026-09-03 05:30:33.301661 Tarde \N +183 1 78 1 2026-09-15 18:30:00 2026-09-15 21:30:00 ASIG00132 - Herramientas jurídicas en la industria digital CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.064344 2026-09-03 05:30:33.303661 Tarde \N +184 1 78 1 2026-09-22 18:30:00 2026-09-22 21:30:00 ASIG00132 - Herramientas jurídicas en la industria digital CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.066386 2026-09-03 05:30:33.305662 Tarde \N +185 11 85 1 2026-09-01 18:00:00 2026-09-01 21:00:00 ASIG00259 - Taller de enseñanza y Aprendizaje en Aulas Heterogéneas (2026/2027 - quincenal) CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: POSG. INCLUSIVAS 2026-09-03 04:55:29.100376 2026-09-03 05:30:33.307663 Tarde \N +186 11 85 1 2026-09-08 18:00:00 2026-09-08 21:00:00 ASIG00259 - Taller de enseñanza y Aprendizaje en Aulas Heterogéneas (2026/2027 - quincenal) CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: POSG. INCLUSIVAS 2026-09-03 04:55:29.102373 2026-09-03 05:30:33.309631 Tarde \N +187 11 85 1 2026-09-15 18:00:00 2026-09-15 21:00:00 ASIG00259 - Taller de enseñanza y Aprendizaje en Aulas Heterogéneas (2026/2027 - quincenal) CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: POSG. INCLUSIVAS 2026-09-03 04:55:29.103345 2026-09-03 05:30:33.310631 Tarde \N +188 11 85 1 2026-09-22 18:00:00 2026-09-22 21:00:00 ASIG00259 - Taller de enseñanza y Aprendizaje en Aulas Heterogéneas (2026/2027 - quincenal) CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: POSG. INCLUSIVAS 2026-09-03 04:55:29.104374 2026-09-03 05:30:33.311631 Tarde \N +193 4 87 1 2026-09-01 18:00:00 2026-09-01 21:00:00 ASIG00253 - Taller de prácticas de enseñanza inclusivas en la Educación Inicial (2026/2027 - Quincenal) CONFIRMED 15 Clase semanal Martes (Tarde) - Carrera: POSG. INICIAL 2026-09-03 04:55:29.118342 2026-09-03 05:30:33.324631 Tarde \N +194 4 87 1 2026-09-08 18:00:00 2026-09-08 21:00:00 ASIG00253 - Taller de prácticas de enseñanza inclusivas en la Educación Inicial (2026/2027 - Quincenal) CONFIRMED 15 Clase semanal Martes (Tarde) - Carrera: POSG. INICIAL 2026-09-03 04:55:29.119343 2026-09-03 05:30:33.325631 Tarde \N +195 4 87 1 2026-09-15 18:00:00 2026-09-15 21:00:00 ASIG00253 - Taller de prácticas de enseñanza inclusivas en la Educación Inicial (2026/2027 - Quincenal) CONFIRMED 15 Clase semanal Martes (Tarde) - Carrera: POSG. INICIAL 2026-09-03 04:55:29.120354 2026-09-03 05:30:33.32663 Tarde \N +196 4 87 1 2026-09-22 18:00:00 2026-09-22 21:00:00 ASIG00253 - Taller de prácticas de enseñanza inclusivas en la Educación Inicial (2026/2027 - Quincenal) CONFIRMED 15 Clase semanal Martes (Tarde) - Carrera: POSG. INICIAL 2026-09-03 04:55:29.122343 2026-09-03 05:30:33.327632 Tarde \N +189 1 86 1 2026-09-01 18:00:00 2026-09-01 21:00:00 ASIG00258 - Taller de Desarrollo Profesional Docente (2026 - quincenal) CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: POSG. INICIAL 2026-09-03 04:55:29.110343 2026-09-03 05:30:33.333631 Tarde \N +190 1 86 1 2026-09-08 18:00:00 2026-09-08 21:00:00 ASIG00258 - Taller de Desarrollo Profesional Docente (2026 - quincenal) CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: POSG. INICIAL 2026-09-03 04:55:29.112343 2026-09-03 05:30:33.334632 Tarde \N +191 1 86 1 2026-09-15 18:00:00 2026-09-15 21:00:00 ASIG00258 - Taller de Desarrollo Profesional Docente (2026 - quincenal) CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: POSG. INICIAL 2026-09-03 04:55:29.113347 2026-09-03 05:30:33.336631 Tarde \N +192 1 86 1 2026-09-22 18:00:00 2026-09-22 21:00:00 ASIG00258 - Taller de Desarrollo Profesional Docente (2026 - quincenal) CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: POSG. INICIAL 2026-09-03 04:55:29.115343 2026-09-03 05:30:33.337631 Tarde \N +197 6 89 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00073 - Biofísica de los Ciclos Naturales CONFIRMED 15 Clase semanal Martes (Tarde) - Carrera: MONODISCIPLINARES 2026-09-03 04:55:29.133374 2026-09-03 05:30:33.340662 Tarde \N +198 6 89 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00073 - Biofísica de los Ciclos Naturales CONFIRMED 15 Clase semanal Martes (Tarde) - Carrera: MONODISCIPLINARES 2026-09-03 04:55:29.134377 2026-09-03 05:30:33.341631 Tarde \N +199 6 89 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00073 - Biofísica de los Ciclos Naturales CONFIRMED 15 Clase semanal Martes (Tarde) - Carrera: MONODISCIPLINARES 2026-09-03 04:55:29.135374 2026-09-03 05:30:33.342631 Tarde \N +200 6 89 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00073 - Biofísica de los Ciclos Naturales CONFIRMED 15 Clase semanal Martes (Tarde) - Carrera: MONODISCIPLINARES 2026-09-03 04:55:29.136376 2026-09-03 05:30:33.344661 Tarde \N +105 1 56 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00165 - Derecho,actividad fisica y deporte CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:28.880926 2026-09-03 05:30:33.348655 Tarde \N +106 1 56 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00165 - Derecho,actividad fisica y deporte CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:28.881926 2026-09-03 05:30:33.349631 Tarde \N +107 1 56 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00165 - Derecho,actividad fisica y deporte CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:28.882926 2026-09-03 05:30:33.350631 Tarde \N +108 1 56 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00165 - Derecho,actividad fisica y deporte CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:28.884926 2026-09-03 05:30:33.352655 Tarde \N +201 21 92 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00274 - Tecnología de las Cosas CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.148345 2026-09-03 05:30:33.354657 Tarde \N +202 21 92 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00274 - Tecnología de las Cosas CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.149343 2026-09-03 05:30:33.356631 Tarde \N +203 21 92 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00274 - Tecnología de las Cosas CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.151343 2026-09-03 05:30:33.35763 Tarde \N +204 21 92 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00274 - Tecnología de las Cosas CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.152343 2026-09-03 05:30:33.359632 Tarde \N +205 15 93 1 2026-09-01 17:30:00 2026-09-01 21:30:00 ASIG00284 - Sistemas Complejos en la Naturaleza CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.155344 2026-09-03 05:30:33.361631 Tarde \N +206 15 93 1 2026-09-08 17:30:00 2026-09-08 21:30:00 ASIG00284 - Sistemas Complejos en la Naturaleza CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.156375 2026-09-03 05:30:33.362657 Tarde \N +207 15 93 1 2026-09-15 17:30:00 2026-09-15 21:30:00 ASIG00284 - Sistemas Complejos en la Naturaleza CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.158375 2026-09-03 05:30:33.363631 Tarde \N +208 15 93 1 2026-09-22 17:30:00 2026-09-22 21:30:00 ASIG00284 - Sistemas Complejos en la Naturaleza CONFIRMED 30 Clase semanal Martes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.159374 2026-09-03 05:30:33.36566 Tarde \N +209 11 94 1 2026-09-02 08:30:00 2026-09-02 11:30:00 ASIG00195 - Fundamentos de Estadística y Probabilidad - Equipo 1 CONFIRMED 30 Clase semanal Miércoles (Mañana) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.163345 2026-09-03 05:30:33.368658 Mañana \N +210 11 94 1 2026-09-09 08:30:00 2026-09-09 11:30:00 ASIG00195 - Fundamentos de Estadística y Probabilidad - Equipo 1 CONFIRMED 30 Clase semanal Miércoles (Mañana) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.164347 2026-09-03 05:30:33.369631 Mañana \N +211 11 94 1 2026-09-16 08:30:00 2026-09-16 11:30:00 ASIG00195 - Fundamentos de Estadística y Probabilidad - Equipo 1 CONFIRMED 30 Clase semanal Miércoles (Mañana) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.166373 2026-09-03 05:30:33.370632 Mañana \N +212 11 94 1 2026-09-23 08:30:00 2026-09-23 11:30:00 ASIG00195 - Fundamentos de Estadística y Probabilidad - Equipo 1 CONFIRMED 30 Clase semanal Miércoles (Mañana) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.167384 2026-09-03 05:30:33.372632 Mañana \N +213 10 95 1 2026-09-02 08:30:00 2026-09-02 11:30:00 ASIG00205 - Gestión del Talento Humano en la Industria Digital CONFIRMED 30 Clase semanal Miércoles (Mañana) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.170374 2026-09-03 05:30:33.374632 Mañana \N +214 10 95 1 2026-09-09 08:30:00 2026-09-09 11:30:00 ASIG00205 - Gestión del Talento Humano en la Industria Digital CONFIRMED 30 Clase semanal Miércoles (Mañana) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.172374 2026-09-03 05:30:33.37563 Mañana \N +215 10 95 1 2026-09-16 08:30:00 2026-09-16 11:30:00 ASIG00205 - Gestión del Talento Humano en la Industria Digital CONFIRMED 30 Clase semanal Miércoles (Mañana) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.173373 2026-09-03 05:30:33.376631 Mañana \N +216 10 95 1 2026-09-23 08:30:00 2026-09-23 11:30:00 ASIG00205 - Gestión del Talento Humano en la Industria Digital CONFIRMED 30 Clase semanal Miércoles (Mañana) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.174374 2026-09-03 05:30:33.378657 Mañana \N +217 1 96 1 2026-09-02 08:00:00 2026-09-02 09:00:00 INGLC0001-02 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Miércoles (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:29.177374 2026-09-03 05:30:33.38063 Mañana \N +218 1 96 1 2026-09-09 08:00:00 2026-09-09 09:00:00 INGLC0001-02 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Miércoles (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:29.178374 2026-09-03 05:30:33.381657 Mañana \N +219 1 96 1 2026-09-16 08:00:00 2026-09-16 09:00:00 INGLC0001-02 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Miércoles (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:29.180344 2026-09-03 05:30:33.382632 Mañana \N +220 1 96 1 2026-09-23 08:00:00 2026-09-23 09:00:00 INGLC0001-02 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Miércoles (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:29.182375 2026-09-03 05:30:33.38466 Mañana \N +221 1 97 1 2026-09-02 17:00:00 2026-09-02 18:00:00 INGLC0001-08 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.185345 2026-09-03 05:30:33.38663 Tarde \N +222 1 97 1 2026-09-09 17:00:00 2026-09-09 18:00:00 INGLC0001-08 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.186345 2026-09-03 05:30:33.388662 Tarde \N +223 1 97 1 2026-09-16 17:00:00 2026-09-16 18:00:00 INGLC0001-08 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.188374 2026-09-03 05:30:33.389632 Tarde \N +224 1 97 1 2026-09-23 17:00:00 2026-09-23 18:00:00 INGLC0001-08 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.190345 2026-09-03 05:30:33.391635 Tarde \N +225 18 5 1 2026-09-02 00:00:00 2026-09-02 21:30:00 ASIG00003 - Política Educativa y Gestión Institucional - Equipo 2 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.192343 2026-09-03 05:30:33.393663 Tarde \N +226 18 5 1 2026-09-09 00:00:00 2026-09-09 21:30:00 ASIG00003 - Política Educativa y Gestión Institucional - Equipo 2 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.193345 2026-09-03 05:30:33.394631 Tarde \N +227 18 5 1 2026-09-16 00:00:00 2026-09-16 21:30:00 ASIG00003 - Política Educativa y Gestión Institucional - Equipo 2 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.195374 2026-09-03 05:30:33.395631 Tarde \N +228 18 5 1 2026-09-23 00:00:00 2026-09-23 21:30:00 ASIG00003 - Política Educativa y Gestión Institucional - Equipo 2 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.197376 2026-09-03 05:30:33.39828 Tarde \N +233 8 115 1 2026-09-02 18:00:00 2026-09-02 21:30:00 ASIG00221 - Enseñanza de la Matemática – Primer Ciclo CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.243343 2026-09-03 05:30:33.435286 Tarde \N +234 8 115 1 2026-09-09 18:00:00 2026-09-09 21:30:00 ASIG00221 - Enseñanza de la Matemática – Primer Ciclo CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.244345 2026-09-03 05:30:33.436317 Tarde \N +235 8 115 1 2026-09-16 18:00:00 2026-09-16 21:30:00 ASIG00221 - Enseñanza de la Matemática – Primer Ciclo CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.246344 2026-09-03 05:30:33.437287 Tarde \N +236 8 115 1 2026-09-23 18:00:00 2026-09-23 21:30:00 ASIG00221 - Enseñanza de la Matemática – Primer Ciclo CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.248377 2026-09-03 05:30:33.439134 Tarde \N +237 1 116 1 2026-09-02 18:00:00 2026-09-02 21:30:00 ASIG00227 - Enseñanza de las Ciencias Sociales CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.250373 2026-09-03 05:30:33.441105 Tarde \N +238 1 116 1 2026-09-09 18:00:00 2026-09-09 21:30:00 ASIG00227 - Enseñanza de las Ciencias Sociales CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.251374 2026-09-03 05:30:33.443133 Tarde \N +239 1 116 1 2026-09-16 18:00:00 2026-09-16 21:30:00 ASIG00227 - Enseñanza de las Ciencias Sociales CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.253374 2026-09-03 05:30:33.444231 Tarde \N +240 1 116 1 2026-09-23 18:00:00 2026-09-23 21:30:00 ASIG00227 - Enseñanza de las Ciencias Sociales CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: PUEP CCC 2026-09-03 04:55:29.254375 2026-09-03 05:30:33.444763 Tarde \N +241 10 121 1 2026-09-02 18:30:00 2026-09-02 21:30:00 ASIG00122 - Taller: Gestión de proyectos digitales- Equipo 1 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.269373 2026-09-03 05:30:33.462805 Tarde \N +242 10 121 1 2026-09-09 18:30:00 2026-09-09 21:30:00 ASIG00122 - Taller: Gestión de proyectos digitales- Equipo 1 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.271379 2026-09-03 05:30:33.463771 Tarde \N +243 10 121 1 2026-09-16 18:30:00 2026-09-16 21:30:00 ASIG00122 - Taller: Gestión de proyectos digitales- Equipo 1 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.272374 2026-09-03 05:30:33.464769 Tarde \N +244 10 121 1 2026-09-23 18:30:00 2026-09-23 21:30:00 ASIG00122 - Taller: Gestión de proyectos digitales- Equipo 1 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.273374 2026-09-03 05:30:33.466802 Tarde \N +245 24 121 1 2026-09-02 18:30:00 2026-09-02 21:30:00 ASIG00122 - Taller: Gestión de proyectos digitales - Equipo 2 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.276376 2026-09-03 05:30:33.468802 Tarde \N +246 24 121 1 2026-09-09 18:30:00 2026-09-09 21:30:00 ASIG00122 - Taller: Gestión de proyectos digitales - Equipo 2 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.277374 2026-09-03 05:30:33.469771 Tarde \N +247 24 121 1 2026-09-16 18:30:00 2026-09-16 21:30:00 ASIG00122 - Taller: Gestión de proyectos digitales - Equipo 2 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.278376 2026-09-03 05:30:33.471772 Tarde \N +248 24 121 1 2026-09-23 18:30:00 2026-09-23 21:30:00 ASIG00122 - Taller: Gestión de proyectos digitales - Equipo 2 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.280345 2026-09-03 05:30:33.47377 Tarde \N +249 20 121 1 2026-09-02 18:30:00 2026-09-02 21:30:00 ASIG00122 - Taller: Gestión de proyectos digitales Equipo 3 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.282373 2026-09-03 05:30:33.475803 Tarde \N +250 20 121 1 2026-09-09 18:30:00 2026-09-09 21:30:00 ASIG00122 - Taller: Gestión de proyectos digitales Equipo 3 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.284374 2026-09-03 05:30:33.476792 Tarde \N +251 20 121 1 2026-09-16 18:30:00 2026-09-16 21:30:00 ASIG00122 - Taller: Gestión de proyectos digitales Equipo 3 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.285373 2026-09-03 05:30:33.477801 Tarde \N +252 20 121 1 2026-09-23 18:30:00 2026-09-23 21:30:00 ASIG00122 - Taller: Gestión de proyectos digitales Equipo 3 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.286374 2026-09-03 05:30:33.479799 Tarde \N +257 11 94 1 2026-09-02 18:30:00 2026-09-02 21:30:00 ASIG00195 - Fundamentos de Estadística y Probabilidad - Equipo 2 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.317376 2026-09-03 05:30:33.51577 Tarde \N +258 11 94 1 2026-09-09 18:30:00 2026-09-09 21:30:00 ASIG00195 - Fundamentos de Estadística y Probabilidad - Equipo 2 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.318374 2026-09-03 05:30:33.51677 Tarde \N +259 11 94 1 2026-09-16 18:30:00 2026-09-16 21:30:00 ASIG00195 - Fundamentos de Estadística y Probabilidad - Equipo 2 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.319376 2026-09-03 05:30:33.518799 Tarde \N +260 11 94 1 2026-09-23 18:30:00 2026-09-23 21:30:00 ASIG00195 - Fundamentos de Estadística y Probabilidad - Equipo 2 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.321345 2026-09-03 05:30:33.51977 Tarde \N +261 7 94 1 2026-09-02 18:30:00 2026-09-02 21:30:00 ASIG00195 - Fundamentos de Estadística y Probabilidad - Equipo 3 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.324344 2026-09-03 05:30:33.52277 Tarde \N +262 7 94 1 2026-09-09 18:30:00 2026-09-09 21:30:00 ASIG00195 - Fundamentos de Estadística y Probabilidad - Equipo 3 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.325376 2026-09-03 05:30:33.523769 Tarde \N +263 7 94 1 2026-09-16 18:30:00 2026-09-16 21:30:00 ASIG00195 - Fundamentos de Estadística y Probabilidad - Equipo 3 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.326371 2026-09-03 05:30:33.524794 Tarde \N +264 7 94 1 2026-09-23 18:30:00 2026-09-23 21:30:00 ASIG00195 - Fundamentos de Estadística y Probabilidad - Equipo 3 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.328377 2026-09-03 05:30:33.526795 Tarde \N +253 1 122 1 2026-09-02 18:30:00 2026-09-02 21:30:00 ASIG00123 - Administración de negocios digitales CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.289374 2026-09-03 05:30:33.528769 Tarde \N +254 1 122 1 2026-09-09 18:30:00 2026-09-09 21:30:00 ASIG00123 - Administración de negocios digitales CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.290374 2026-09-03 05:30:33.529769 Tarde \N +255 1 122 1 2026-09-16 18:30:00 2026-09-16 21:30:00 ASIG00123 - Administración de negocios digitales CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.291374 2026-09-03 05:30:33.530802 Tarde \N +256 1 122 1 2026-09-23 18:30:00 2026-09-23 21:30:00 ASIG00123 - Administración de negocios digitales CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.293373 2026-09-03 05:30:33.532769 Tarde \N +265 1 129 1 2026-09-02 18:00:00 2026-09-02 21:00:00 ASIG00254 - Aspectos jurídicos, políticos y pedagógicos para la atención a la diversidad CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:29.339344 2026-09-03 05:30:33.563795 Tarde \N +266 1 129 1 2026-09-09 18:00:00 2026-09-09 21:00:00 ASIG00254 - Aspectos jurídicos, políticos y pedagógicos para la atención a la diversidad CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:29.340345 2026-09-03 05:30:33.56477 Tarde \N +267 1 129 1 2026-09-16 18:00:00 2026-09-16 21:00:00 ASIG00254 - Aspectos jurídicos, políticos y pedagógicos para la atención a la diversidad CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:29.342344 2026-09-03 05:30:33.565785 Tarde \N +268 1 129 1 2026-09-23 18:00:00 2026-09-23 21:00:00 ASIG00254 - Aspectos jurídicos, políticos y pedagógicos para la atención a la diversidad CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:29.343344 2026-09-03 05:30:33.567796 Tarde \N +269 5 42 1 2026-09-02 18:00:00 2026-09-02 21:00:00 ASIG00190 - Enseñanza de la lectura y la escritura CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DIPLO. ALFABETIZACIÓN 2026-09-03 04:55:29.368374 2026-09-03 05:30:33.575794 Tarde \N +270 5 42 1 2026-09-09 18:00:00 2026-09-09 21:00:00 ASIG00190 - Enseñanza de la lectura y la escritura CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DIPLO. ALFABETIZACIÓN 2026-09-03 04:55:29.369345 2026-09-03 05:30:33.576794 Tarde \N +271 5 42 1 2026-09-16 18:00:00 2026-09-16 21:00:00 ASIG00190 - Enseñanza de la lectura y la escritura CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DIPLO. ALFABETIZACIÓN 2026-09-03 04:55:29.370343 2026-09-03 05:30:33.577769 Tarde \N +272 5 42 1 2026-09-23 18:00:00 2026-09-23 21:00:00 ASIG00190 - Enseñanza de la lectura y la escritura CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: DIPLO. ALFABETIZACIÓN 2026-09-03 04:55:29.371374 2026-09-03 05:30:33.578769 Tarde \N +273 12 137 1 2026-09-02 17:30:00 2026-09-02 21:30:00 ASIG00276 - Prácticas Educativas II CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.387344 2026-09-03 05:30:33.595794 Tarde \N +274 12 137 1 2026-09-09 17:30:00 2026-09-09 21:30:00 ASIG00276 - Prácticas Educativas II CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.388344 2026-09-03 05:30:33.596769 Tarde \N +275 12 137 1 2026-09-16 17:30:00 2026-09-16 21:30:00 ASIG00276 - Prácticas Educativas II CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.389343 2026-09-03 05:30:33.598794 Tarde \N +276 12 137 1 2026-09-23 17:30:00 2026-09-23 21:30:00 ASIG00276 - Prácticas Educativas II CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.390345 2026-09-03 05:30:33.599794 Tarde \N +229 1 98 1 2026-09-02 17:30:00 2026-09-02 21:30:00 ASIG00009 - Planeamiento Estratégico institucional - Equipo 1 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: MONODISCIPLINARES 2026-09-03 04:55:29.201344 2026-09-03 05:30:33.60177 Tarde \N +230 1 98 1 2026-09-09 17:30:00 2026-09-09 21:30:00 ASIG00009 - Planeamiento Estratégico institucional - Equipo 1 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: MONODISCIPLINARES 2026-09-03 04:55:29.203374 2026-09-03 05:30:33.603797 Tarde \N +231 1 98 1 2026-09-16 17:30:00 2026-09-16 21:30:00 ASIG00009 - Planeamiento Estratégico institucional - Equipo 1 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: MONODISCIPLINARES 2026-09-03 04:55:29.204374 2026-09-03 05:30:33.604769 Tarde \N +232 1 98 1 2026-09-23 17:30:00 2026-09-23 21:30:00 ASIG00009 - Planeamiento Estratégico institucional - Equipo 1 CONFIRMED 30 Clase semanal Miércoles (Tarde) - Carrera: MONODISCIPLINARES 2026-09-03 04:55:29.206374 2026-09-03 05:30:33.606769 Tarde \N +277 1 139 1 2026-09-03 08:00:00 2026-09-03 09:00:00 INGA0004-E1 - Inglés General Académico IV CONFIRMED 30 Clase semanal Jueves (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:29.397995 2026-09-03 05:30:33.608769 Mañana \N +278 1 139 1 2026-09-10 08:00:00 2026-09-10 09:00:00 INGA0004-E1 - Inglés General Académico IV CONFIRMED 30 Clase semanal Jueves (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:29.398983 2026-09-03 05:30:33.60977 Mañana \N +279 1 139 1 2026-09-17 08:00:00 2026-09-17 09:00:00 INGA0004-E1 - Inglés General Académico IV CONFIRMED 30 Clase semanal Jueves (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:29.399983 2026-09-03 05:30:33.611795 Mañana \N +280 1 139 1 2026-09-24 08:00:00 2026-09-24 09:00:00 INGA0004-E1 - Inglés General Académico IV CONFIRMED 30 Clase semanal Jueves (Mañana) - Carrera: INGLÉS 2026-09-03 04:55:29.401981 2026-09-03 05:30:33.612769 Mañana \N +281 1 140 1 2026-09-03 08:00:00 2026-09-03 11:00:00 ASIG00215 - Marketing Digital CONFIRMED 30 Clase semanal Jueves (Mañana) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.404982 2026-09-03 05:30:33.614769 Mañana \N +282 1 140 1 2026-09-10 08:00:00 2026-09-10 11:00:00 ASIG00215 - Marketing Digital CONFIRMED 30 Clase semanal Jueves (Mañana) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.405982 2026-09-03 05:30:33.616769 Mañana \N +283 1 140 1 2026-09-17 08:00:00 2026-09-17 11:00:00 ASIG00215 - Marketing Digital CONFIRMED 30 Clase semanal Jueves (Mañana) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.406983 2026-09-03 05:30:33.617771 Mañana \N +284 1 140 1 2026-09-24 08:00:00 2026-09-24 11:00:00 ASIG00215 - Marketing Digital CONFIRMED 30 Clase semanal Jueves (Mañana) - Carrera: DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 2026-09-03 04:55:29.407987 2026-09-03 05:30:33.619769 Mañana \N +289 11 145 1 2026-09-03 17:30:00 2026-09-03 21:30:00 ASIG00012 - Taller de Diseño del TFI CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.45261 2026-09-03 05:30:33.67977 Tarde \N +290 11 145 1 2026-09-10 17:30:00 2026-09-10 21:30:00 ASIG00012 - Taller de Diseño del TFI CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.454585 2026-09-03 05:30:33.680954 Tarde \N +291 11 145 1 2026-09-17 17:30:00 2026-09-17 21:30:00 ASIG00012 - Taller de Diseño del TFI CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.455584 2026-09-03 05:30:33.682962 Tarde \N +292 11 145 1 2026-09-24 17:30:00 2026-09-24 21:30:00 ASIG00012 - Taller de Diseño del TFI CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.457584 2026-09-03 05:30:33.683963 Tarde \N +293 17 146 1 2026-09-03 17:30:00 2026-09-03 21:30:00 ASIG00111 / ASIG00077 - Teoría y Práctica de la Enseñanza CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PROF PROF (CCC) - CIENCIAS 2026-09-03 04:55:29.459585 2026-09-03 05:30:33.686963 Tarde \N +294 17 146 1 2026-09-10 17:30:00 2026-09-10 21:30:00 ASIG00111 / ASIG00077 - Teoría y Práctica de la Enseñanza CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PROF PROF (CCC) - CIENCIAS 2026-09-03 04:55:29.461585 2026-09-03 05:30:33.687995 Tarde \N +295 17 146 1 2026-09-17 17:30:00 2026-09-17 21:30:00 ASIG00111 / ASIG00077 - Teoría y Práctica de la Enseñanza CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PROF PROF (CCC) - CIENCIAS 2026-09-03 04:55:29.462585 2026-09-03 05:30:33.689961 Tarde \N +296 17 146 1 2026-09-24 17:30:00 2026-09-24 21:30:00 ASIG00111 / ASIG00077 - Teoría y Práctica de la Enseñanza CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PROF PROF (CCC) - CIENCIAS 2026-09-03 04:55:29.464585 2026-09-03 05:30:33.690961 Tarde \N +297 20 148 1 2026-09-03 17:30:00 2026-09-03 19:30:00 ASIG00117 - Diseño y Selección de Materiales Didácticos para la Enseñanza II CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PROF PROF (CCC) 2026-09-03 04:55:29.471585 2026-09-03 05:30:33.699992 Tarde \N +298 20 148 1 2026-09-10 17:30:00 2026-09-10 19:30:00 ASIG00117 - Diseño y Selección de Materiales Didácticos para la Enseñanza II CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PROF PROF (CCC) 2026-09-03 04:55:29.473585 2026-09-03 05:30:33.700986 Tarde \N +299 20 148 1 2026-09-17 17:30:00 2026-09-17 19:30:00 ASIG00117 - Diseño y Selección de Materiales Didácticos para la Enseñanza II CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PROF PROF (CCC) 2026-09-03 04:55:29.474585 2026-09-03 05:30:33.702991 Tarde \N +300 20 148 1 2026-09-24 17:30:00 2026-09-24 19:30:00 ASIG00117 - Diseño y Selección de Materiales Didácticos para la Enseñanza II CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PROF PROF (CCC) 2026-09-03 04:55:29.476585 2026-09-03 05:30:33.703961 Tarde \N +301 20 149 1 2026-09-03 19:30:00 2026-09-03 21:30:00 ASIG00118 / ASIG00083 - Política y Sistema Educativo CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PROF PROF (CCC) - CIENCIAS 2026-09-03 04:55:29.478585 2026-09-03 05:30:33.706962 Tarde \N +302 20 149 1 2026-09-10 19:30:00 2026-09-10 21:30:00 ASIG00118 / ASIG00083 - Política y Sistema Educativo CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PROF PROF (CCC) - CIENCIAS 2026-09-03 04:55:29.480617 2026-09-03 05:30:33.707991 Tarde \N +303 20 149 1 2026-09-17 19:30:00 2026-09-17 21:30:00 ASIG00118 / ASIG00083 - Política y Sistema Educativo CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PROF PROF (CCC) - CIENCIAS 2026-09-03 04:55:29.481601 2026-09-03 05:30:33.708991 Tarde \N +304 20 149 1 2026-09-24 19:30:00 2026-09-24 21:30:00 ASIG00118 / ASIG00083 - Política y Sistema Educativo CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PROF PROF (CCC) - CIENCIAS 2026-09-03 04:55:29.483586 2026-09-03 05:30:33.709962 Tarde \N +305 12 150 1 2026-09-03 17:30:00 2026-09-03 21:30:00 ASIG00030 / ASIG00064 - Lectura y Escritura Académica CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP - CIENCIAS 2026-09-03 04:55:29.486585 2026-09-03 05:30:33.712961 Tarde \N +306 12 150 1 2026-09-10 17:30:00 2026-09-10 21:30:00 ASIG00030 / ASIG00064 - Lectura y Escritura Académica CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP - CIENCIAS 2026-09-03 04:55:29.487589 2026-09-03 05:30:33.713961 Tarde \N +307 12 150 1 2026-09-17 17:30:00 2026-09-17 21:30:00 ASIG00030 / ASIG00064 - Lectura y Escritura Académica CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP - CIENCIAS 2026-09-03 04:55:29.489586 2026-09-03 05:30:33.714986 Tarde \N +308 12 150 1 2026-09-24 17:30:00 2026-09-24 21:30:00 ASIG00030 / ASIG00064 - Lectura y Escritura Académica CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP - CIENCIAS 2026-09-03 04:55:29.490584 2026-09-03 05:30:33.716988 Tarde \N +309 18 151 1 2026-09-03 17:30:00 2026-09-03 21:30:00 ASIG00035 - Enseñanza de la Matemática I CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.493633 2026-09-03 05:30:33.718961 Tarde \N +310 18 151 1 2026-09-10 17:30:00 2026-09-10 21:30:00 ASIG00035 - Enseñanza de la Matemática I CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.494635 2026-09-03 05:30:33.719986 Tarde \N +311 18 151 1 2026-09-17 17:30:00 2026-09-17 21:30:00 ASIG00035 - Enseñanza de la Matemática I CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.496635 2026-09-03 05:30:33.721961 Tarde \N +312 18 151 1 2026-09-24 17:30:00 2026-09-24 21:30:00 ASIG00035 - Enseñanza de la Matemática I CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.498632 2026-09-03 05:30:33.72296 Tarde \N +313 15 152 1 2026-09-03 17:30:00 2026-09-03 21:30:00 ASIG00041 - Teoría y Práctica de la Enseñanza II CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.501634 2026-09-03 05:30:33.725961 Tarde \N +314 15 152 1 2026-09-10 17:30:00 2026-09-10 21:30:00 ASIG00041 - Teoría y Práctica de la Enseñanza II CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.502634 2026-09-03 05:30:33.726987 Tarde \N +315 15 152 1 2026-09-17 17:30:00 2026-09-17 21:30:00 ASIG00041 - Teoría y Práctica de la Enseñanza II CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.503634 2026-09-03 05:30:33.727961 Tarde \N +316 15 152 1 2026-09-24 17:30:00 2026-09-24 21:30:00 ASIG00041 - Teoría y Práctica de la Enseñanza II CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.505634 2026-09-03 05:30:33.728961 Tarde \N +317 3 153 1 2026-09-03 17:30:00 2026-09-03 21:30:00 ASIG00045 - Taller de Integración y Práctica II CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.508634 2026-09-03 05:30:33.731961 Tarde \N +318 3 153 1 2026-09-10 17:30:00 2026-09-10 21:30:00 ASIG00045 - Taller de Integración y Práctica II CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.509635 2026-09-03 05:30:33.732961 Tarde \N +319 3 153 1 2026-09-17 17:30:00 2026-09-17 21:30:00 ASIG00045 - Taller de Integración y Práctica II CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.510633 2026-09-03 05:30:33.733961 Tarde \N +320 3 153 1 2026-09-24 17:30:00 2026-09-24 21:30:00 ASIG00045 - Taller de Integración y Práctica II CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: PUEP 2026-09-03 04:55:29.513634 2026-09-03 05:30:33.734967 Tarde \N +329 25 37 1 2026-09-03 18:30:00 2026-09-03 21:00:00 ASIG00121 - Análisis de Datos I CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.565634 2026-09-03 05:30:33.787963 Tarde \N +330 25 37 1 2026-09-10 18:30:00 2026-09-10 21:00:00 ASIG00121 - Análisis de Datos I CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.566635 2026-09-03 05:30:33.788992 Tarde \N +331 25 37 1 2026-09-17 18:30:00 2026-09-17 21:00:00 ASIG00121 - Análisis de Datos I CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.567634 2026-09-03 05:30:33.790992 Tarde \N +332 25 37 1 2026-09-24 18:30:00 2026-09-24 21:00:00 ASIG00121 - Análisis de Datos I CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: DATOS(CCC)-TEC.DIG 2026-09-03 04:55:29.569634 2026-09-03 05:30:33.791963 Tarde \N +333 10 163 1 2026-09-03 18:30:00 2026-09-03 21:00:00 ASIG00124 - Sistemas digitales CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.572636 2026-09-03 05:30:33.794962 Tarde \N +334 10 163 1 2026-09-10 18:30:00 2026-09-10 21:00:00 ASIG00124 - Sistemas digitales CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.573634 2026-09-03 05:30:33.795963 Tarde \N +335 10 163 1 2026-09-17 18:30:00 2026-09-17 21:00:00 ASIG00124 - Sistemas digitales CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.575634 2026-09-03 05:30:33.797991 Tarde \N +336 10 163 1 2026-09-24 18:30:00 2026-09-24 21:00:00 ASIG00124 - Sistemas digitales CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.577634 2026-09-03 05:30:33.798962 Tarde \N +325 1 160 1 2026-09-03 18:30:00 2026-09-03 21:00:00 ASIG00206 - Diseño Lúdico I CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.547665 2026-09-03 05:30:33.808961 Tarde \N +326 1 160 1 2026-09-10 18:30:00 2026-09-10 21:00:00 ASIG00206 - Diseño Lúdico I CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.549633 2026-09-03 05:30:33.809967 Tarde \N +327 1 160 1 2026-09-17 18:30:00 2026-09-17 21:00:00 ASIG00206 - Diseño Lúdico I CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.550633 2026-09-03 05:30:33.810961 Tarde \N +328 1 160 1 2026-09-24 18:30:00 2026-09-24 21:00:00 ASIG00206 - Diseño Lúdico I CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: DATOS (CCC) 2026-09-03 04:55:29.552633 2026-09-03 05:30:33.812987 Tarde \N +337 9 168 1 2026-09-03 18:00:00 2026-09-03 21:00:00 ASIG00248 - Escuela y familias CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: POSG. INICIAL 2026-09-03 04:55:29.609633 2026-09-03 05:30:33.839995 Tarde \N +338 9 168 1 2026-09-10 18:00:00 2026-09-10 21:00:00 ASIG00248 - Escuela y familias CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: POSG. INICIAL 2026-09-03 04:55:29.610633 2026-09-03 05:30:33.840962 Tarde \N +339 9 168 1 2026-09-17 18:00:00 2026-09-17 21:00:00 ASIG00248 - Escuela y familias CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: POSG. INICIAL 2026-09-03 04:55:29.611633 2026-09-03 05:30:33.841962 Tarde \N +340 9 168 1 2026-09-24 18:00:00 2026-09-24 21:00:00 ASIG00248 - Escuela y familias CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: POSG. INICIAL 2026-09-03 04:55:29.613635 2026-09-03 05:30:33.843987 Tarde \N +321 1 158 1 2026-09-03 18:00:00 2026-09-03 21:00:00 ASIG00226 - Enseñanza de las Ciencias Naturales CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:29.535633 2026-09-03 05:30:33.853982 Tarde \N +322 1 158 1 2026-09-10 18:00:00 2026-09-10 21:00:00 ASIG00226 - Enseñanza de las Ciencias Naturales CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:29.536635 2026-09-03 05:30:33.856017 Tarde \N +323 1 158 1 2026-09-17 18:00:00 2026-09-17 21:00:00 ASIG00226 - Enseñanza de las Ciencias Naturales CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:29.538664 2026-09-03 05:30:33.858012 Tarde \N +324 1 158 1 2026-09-24 18:00:00 2026-09-24 21:00:00 ASIG00226 - Enseñanza de las Ciencias Naturales CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:29.539635 2026-09-03 05:30:33.858983 Tarde \N +341 13 171 1 2026-09-03 18:00:00 2026-09-03 21:00:00 ASIG00264 - Taller de Desarrollo Profesional Docente TDPD (2026/2027 - quincenal) CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:29.626633 2026-09-03 05:30:33.861982 Tarde \N +342 13 171 1 2026-09-10 18:00:00 2026-09-10 21:00:00 ASIG00264 - Taller de Desarrollo Profesional Docente TDPD (2026/2027 - quincenal) CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:29.627634 2026-09-03 05:30:33.862982 Tarde \N +343 13 171 1 2026-09-17 18:00:00 2026-09-17 21:00:00 ASIG00264 - Taller de Desarrollo Profesional Docente TDPD (2026/2027 - quincenal) CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:29.629635 2026-09-03 05:30:33.863982 Tarde \N +344 13 171 1 2026-09-24 18:00:00 2026-09-24 21:00:00 ASIG00264 - Taller de Desarrollo Profesional Docente TDPD (2026/2027 - quincenal) CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: POSG. PRIMARIA 2026-09-03 04:55:29.631636 2026-09-03 05:30:33.864982 Tarde \N +285 1 6 1 2026-09-03 17:30:00 2026-09-03 21:30:00 ASIG00004 - Perspectivas Actuales acerca del Aprendizaje CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.410984 2026-09-03 05:30:33.878982 Tarde \N +286 1 6 1 2026-09-10 17:30:00 2026-09-10 21:30:00 ASIG00004 - Perspectivas Actuales acerca del Aprendizaje CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.411986 2026-09-03 05:30:33.879982 Tarde \N +287 1 6 1 2026-09-17 17:30:00 2026-09-17 21:30:00 ASIG00004 - Perspectivas Actuales acerca del Aprendizaje CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.412952 2026-09-03 05:30:33.880982 Tarde \N +288 1 6 1 2026-09-24 17:30:00 2026-09-24 21:30:00 ASIG00004 - Perspectivas Actuales acerca del Aprendizaje CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.414982 2026-09-03 05:30:33.88301 Tarde \N +345 21 176 1 2026-09-03 17:30:00 2026-09-03 21:30:00 ASIG00282 - Taller de Modelización CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.651633 2026-09-03 05:30:33.884983 Tarde \N +346 21 176 1 2026-09-10 17:30:00 2026-09-10 21:30:00 ASIG00282 - Taller de Modelización CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.652632 2026-09-03 05:30:33.885982 Tarde \N +347 21 176 1 2026-09-17 17:30:00 2026-09-17 21:30:00 ASIG00282 - Taller de Modelización CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.653632 2026-09-03 05:30:33.887984 Tarde \N +348 21 176 1 2026-09-24 17:30:00 2026-09-24 21:30:00 ASIG00282 - Taller de Modelización CONFIRMED 30 Clase semanal Jueves (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.655633 2026-09-03 05:30:33.888999 Tarde \N +349 10 178 1 2026-09-04 08:30:00 2026-09-04 11:30:00 ASIG00297 - Transformación Digital en las Organizaciones CONFIRMED 30 Clase semanal Viernes (Mañana) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.663634 2026-09-03 05:30:33.897012 Mañana \N +350 10 178 1 2026-09-11 08:30:00 2026-09-11 11:30:00 ASIG00297 - Transformación Digital en las Organizaciones CONFIRMED 30 Clase semanal Viernes (Mañana) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.665634 2026-09-03 05:30:33.898008 Mañana \N +351 10 178 1 2026-09-18 08:30:00 2026-09-18 11:30:00 ASIG00297 - Transformación Digital en las Organizaciones CONFIRMED 30 Clase semanal Viernes (Mañana) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.666633 2026-09-03 05:30:33.899008 Mañana \N +352 10 178 1 2026-09-25 08:30:00 2026-09-25 11:30:00 ASIG00297 - Transformación Digital en las Organizaciones CONFIRMED 30 Clase semanal Viernes (Mañana) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.668633 2026-09-03 05:30:33.899983 Mañana \N +353 1 179 1 2026-09-04 17:00:00 2026-09-04 18:00:00 INGLC0001-05 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.670633 2026-09-03 05:30:33.901982 Tarde \N +354 1 179 1 2026-09-11 17:00:00 2026-09-11 18:00:00 INGLC0001-05 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.671633 2026-09-03 05:30:33.903983 Tarde \N +355 1 179 1 2026-09-18 17:00:00 2026-09-18 18:00:00 INGLC0001-05 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.672633 2026-09-03 05:30:33.904984 Tarde \N +356 1 179 1 2026-09-25 17:00:00 2026-09-25 18:00:00 INGLC0001-05 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.674633 2026-09-03 05:30:33.907008 Tarde \N +357 1 180 1 2026-09-04 18:00:00 2026-09-04 19:00:00 INGLC0001-06 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.677634 2026-09-03 05:30:33.908982 Tarde \N +358 1 180 1 2026-09-11 18:00:00 2026-09-11 19:00:00 INGLC0001-06 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.678634 2026-09-03 05:30:33.909982 Tarde \N +359 1 180 1 2026-09-18 18:00:00 2026-09-18 19:00:00 INGLC0001-06 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.679634 2026-09-03 05:30:33.910982 Tarde \N +360 1 180 1 2026-09-25 18:00:00 2026-09-25 19:00:00 INGLC0001-06 - Inglés Lecto-Comprensión CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: INGLÉS 2026-09-03 04:55:29.681634 2026-09-03 05:30:33.913006 Tarde \N +365 21 60 1 2026-09-04 17:30:00 2026-09-04 21:30:00 ASIG00005 - Gestión Administrativa Equipo 1 CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.690634 2026-09-03 05:30:33.921995 Tarde \N +366 21 60 1 2026-09-11 17:30:00 2026-09-11 21:30:00 ASIG00005 - Gestión Administrativa Equipo 1 CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.691633 2026-09-03 05:30:33.922982 Tarde \N +367 21 60 1 2026-09-18 17:30:00 2026-09-18 21:30:00 ASIG00005 - Gestión Administrativa Equipo 1 CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.692633 2026-09-03 05:30:33.925008 Tarde \N +368 21 60 1 2026-09-25 17:30:00 2026-09-25 21:30:00 ASIG00005 - Gestión Administrativa Equipo 1 CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.694634 2026-09-03 05:30:33.926007 Tarde \N +369 11 61 1 2026-09-04 17:30:00 2026-09-04 21:30:00 ASIG00007 - Gestión Curricular y Pedagógica CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.697636 2026-09-03 05:30:33.927982 Tarde \N +370 11 61 1 2026-09-11 17:30:00 2026-09-11 21:30:00 ASIG00007 - Gestión Curricular y Pedagógica CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.698634 2026-09-03 05:30:33.93001 Tarde \N +371 11 61 1 2026-09-18 17:30:00 2026-09-18 21:30:00 ASIG00007 - Gestión Curricular y Pedagógica CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.699634 2026-09-03 05:30:33.931011 Tarde \N +372 11 61 1 2026-09-25 17:30:00 2026-09-25 21:30:00 ASIG00007 - Gestión Curricular y Pedagógica CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.701634 2026-09-03 05:30:33.932982 Tarde \N +373 22 181 1 2026-09-04 17:30:00 2026-09-04 21:30:00 ASIG00119 - Seminario: Análisis institucional para la gestión educativa CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.708634 2026-09-03 05:30:33.939982 Tarde \N +374 22 181 1 2026-09-11 17:30:00 2026-09-11 21:30:00 ASIG00119 - Seminario: Análisis institucional para la gestión educativa CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.709634 2026-09-03 05:30:33.940981 Tarde \N +375 22 181 1 2026-09-18 17:30:00 2026-09-18 21:30:00 ASIG00119 - Seminario: Análisis institucional para la gestión educativa CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.710634 2026-09-03 05:30:33.942982 Tarde \N +376 22 181 1 2026-09-25 17:30:00 2026-09-25 21:30:00 ASIG00119 - Seminario: Análisis institucional para la gestión educativa CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: Gestión (CCC) 2026-09-03 04:55:29.712634 2026-09-03 05:30:33.943982 Tarde \N +377 13 184 1 2026-09-04 18:00:00 2026-09-04 21:30:00 ASIG00027 - Taller - Diseño y producción de materiales digitales II CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:29.724634 2026-09-03 05:30:33.960011 Tarde \N +378 13 184 1 2026-09-11 18:00:00 2026-09-11 21:30:00 ASIG00027 - Taller - Diseño y producción de materiales digitales II CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:29.725634 2026-09-03 05:30:33.960983 Tarde \N +379 13 184 1 2026-09-18 18:00:00 2026-09-18 21:30:00 ASIG00027 - Taller - Diseño y producción de materiales digitales II CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:29.727634 2026-09-03 05:30:33.961982 Tarde \N +380 13 184 1 2026-09-25 18:00:00 2026-09-25 21:30:00 ASIG00027 - Taller - Diseño y producción de materiales digitales II CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:29.728634 2026-09-03 05:30:33.962988 Tarde \N +381 12 186 1 2026-09-04 17:30:00 2026-09-04 21:30:00 ASIG00343 - Taller: Arte digital y espacios inmersivos e interactivos en educación (optativa) CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:29.736634 2026-09-03 05:30:33.972982 Tarde \N +382 12 186 1 2026-09-11 17:30:00 2026-09-11 21:30:00 ASIG00343 - Taller: Arte digital y espacios inmersivos e interactivos en educación (optativa) CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:29.737634 2026-09-03 05:30:33.973982 Tarde \N +383 12 186 1 2026-09-18 17:30:00 2026-09-18 21:30:00 ASIG00343 - Taller: Arte digital y espacios inmersivos e interactivos en educación (optativa) CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:29.738634 2026-09-03 05:30:33.976013 Tarde \N +384 12 186 1 2026-09-25 17:30:00 2026-09-25 21:30:00 ASIG00343 - Taller: Arte digital y espacios inmersivos e interactivos en educación (optativa) CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: ETD (CCC) 2026-09-03 04:55:29.740635 2026-09-03 05:30:33.977008 Tarde \N +385 1 190 1 2026-09-04 18:30:00 2026-09-04 21:30:00 ASIG00212 - Taller de Proyecto Integral CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.756634 2026-09-03 05:30:33.998008 Tarde \N +386 1 190 1 2026-09-11 18:30:00 2026-09-11 21:30:00 ASIG00212 - Taller de Proyecto Integral CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.757634 2026-09-03 05:30:33.998982 Tarde \N +387 1 190 1 2026-09-18 18:30:00 2026-09-18 21:30:00 ASIG00212 - Taller de Proyecto Integral CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.759634 2026-09-03 05:30:33.999983 Tarde \N +388 1 190 1 2026-09-25 18:30:00 2026-09-25 21:30:00 ASIG00212 - Taller de Proyecto Integral CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.760634 2026-09-03 05:30:34.001014 Tarde \N +389 10 195 1 2026-09-04 18:30:00 2026-09-04 21:30:00 ASIG00351 - Gestión Eficiente con IA y Tecnologías Emergentes CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.782634 2026-09-03 05:30:34.024984 Tarde \N +390 10 195 1 2026-09-11 18:30:00 2026-09-11 21:30:00 ASIG00351 - Gestión Eficiente con IA y Tecnologías Emergentes CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.783634 2026-09-03 05:30:34.025982 Tarde \N +391 10 195 1 2026-09-18 18:30:00 2026-09-18 21:30:00 ASIG00351 - Gestión Eficiente con IA y Tecnologías Emergentes CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.784634 2026-09-03 05:30:34.027983 Tarde \N +392 10 195 1 2026-09-25 18:30:00 2026-09-25 21:30:00 ASIG00351 - Gestión Eficiente con IA y Tecnologías Emergentes CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: TEC. DIG. (CCC) 2026-09-03 04:55:29.786634 2026-09-03 05:30:34.028982 Tarde \N +393 15 196 1 2026-09-04 17:30:00 2026-09-04 21:30:00 ASIG00268 - Diversidad e Interacción CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.789635 2026-09-03 05:30:34.030982 Tarde \N +394 15 196 1 2026-09-11 17:30:00 2026-09-11 21:30:00 ASIG00268 - Diversidad e Interacción CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.790634 2026-09-03 05:30:34.031982 Tarde \N +395 15 196 1 2026-09-18 17:30:00 2026-09-18 21:30:00 ASIG00268 - Diversidad e Interacción CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.791634 2026-09-03 05:30:34.033983 Tarde \N +396 15 196 1 2026-09-25 17:30:00 2026-09-25 21:30:00 ASIG00268 - Diversidad e Interacción CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.793634 2026-09-03 05:30:34.034982 Tarde \N +397 3 197 1 2026-09-04 17:30:00 2026-09-04 21:30:00 ASIG00275 - Decisiones Sociocientíficas CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.796636 2026-09-03 05:30:34.036982 Tarde \N +398 3 197 1 2026-09-11 17:30:00 2026-09-11 21:30:00 ASIG00275 - Decisiones Sociocientíficas CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.797635 2026-09-03 05:30:34.038983 Tarde \N +399 3 197 1 2026-09-18 17:30:00 2026-09-18 21:30:00 ASIG00275 - Decisiones Sociocientíficas CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.799634 2026-09-03 05:30:34.039982 Tarde \N +400 3 197 1 2026-09-25 17:30:00 2026-09-25 21:30:00 ASIG00275 - Decisiones Sociocientíficas CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.800634 2026-09-03 05:30:34.040984 Tarde \N +361 1 100 1 2026-09-04 17:30:00 2026-09-04 21:30:00 ASIG00002 - Seminario: Problemáticas Educativas Contemporáneas CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.683634 2026-09-03 05:30:34.043666 Tarde \N +362 1 100 1 2026-09-11 17:30:00 2026-09-11 21:30:00 ASIG00002 - Seminario: Problemáticas Educativas Contemporáneas CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.685633 2026-09-03 05:30:34.04465 Tarde \N +363 1 100 1 2026-09-18 17:30:00 2026-09-18 21:30:00 ASIG00002 - Seminario: Problemáticas Educativas Contemporáneas CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.686633 2026-09-03 05:30:34.046671 Tarde \N +364 1 100 1 2026-09-25 17:30:00 2026-09-25 21:30:00 ASIG00002 - Seminario: Problemáticas Educativas Contemporáneas CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.687633 2026-09-03 05:30:34.047642 Tarde \N +401 19 199 1 2026-09-04 17:30:00 2026-09-04 21:30:00 ASIG00285 - Enseñanza de las Ciencias Exactas y Naturales CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.807634 2026-09-03 05:30:34.050666 Tarde \N +402 19 199 1 2026-09-11 17:30:00 2026-09-11 21:30:00 ASIG00285 - Enseñanza de las Ciencias Exactas y Naturales CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.809633 2026-09-03 05:30:34.05167 Tarde \N +403 19 199 1 2026-09-18 17:30:00 2026-09-18 21:30:00 ASIG00285 - Enseñanza de las Ciencias Exactas y Naturales CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.810634 2026-09-03 05:30:34.052642 Tarde \N +404 19 199 1 2026-09-25 17:30:00 2026-09-25 21:30:00 ASIG00285 - Enseñanza de las Ciencias Exactas y Naturales CONFIRMED 30 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.811634 2026-09-03 05:30:34.053642 Tarde \N +405 4 200 1 2026-09-04 17:30:00 2026-09-04 21:30:00 ASIG00289 - Desafíos Interdisciplinarios CONFIRMED 15 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.814634 2026-09-03 05:30:34.056641 Tarde \N +406 4 200 1 2026-09-11 17:30:00 2026-09-11 21:30:00 ASIG00289 - Desafíos Interdisciplinarios CONFIRMED 15 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.815634 2026-09-03 05:30:34.057665 Tarde \N +407 4 200 1 2026-09-18 17:30:00 2026-09-18 21:30:00 ASIG00289 - Desafíos Interdisciplinarios CONFIRMED 15 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.817634 2026-09-03 05:30:34.058641 Tarde \N +408 4 200 1 2026-09-25 17:30:00 2026-09-25 21:30:00 ASIG00289 - Desafíos Interdisciplinarios CONFIRMED 15 Clase semanal Viernes (Tarde) - Carrera: CIENCIAS 2026-09-03 04:55:29.818634 2026-09-03 05:30:34.060669 Tarde \N +409 1 201 1 2026-09-05 08:00:00 2026-09-05 12:00:00 ASIG00173 - Introducción a la administración y a la economía aplicada CONFIRMED 30 Clase semanal Sábado (Mañana) - Carrera: EF. SALUD 2026-09-03 04:55:29.822635 2026-09-03 05:30:34.079668 Mañana \N +410 1 201 1 2026-09-12 08:00:00 2026-09-12 12:00:00 ASIG00173 - Introducción a la administración y a la economía aplicada CONFIRMED 30 Clase semanal Sábado (Mañana) - Carrera: EF. SALUD 2026-09-03 04:55:29.823634 2026-09-03 05:30:34.080667 Mañana \N +411 1 201 1 2026-09-19 08:00:00 2026-09-19 12:00:00 ASIG00173 - Introducción a la administración y a la economía aplicada CONFIRMED 30 Clase semanal Sábado (Mañana) - Carrera: EF. SALUD 2026-09-03 04:55:29.825635 2026-09-03 05:30:34.082692 Mañana \N +412 1 201 1 2026-09-26 08:00:00 2026-09-26 12:00:00 ASIG00173 - Introducción a la administración y a la economía aplicada CONFIRMED 30 Clase semanal Sábado (Mañana) - Carrera: EF. SALUD 2026-09-03 04:55:29.826634 2026-09-03 05:30:34.083667 Mañana \N +\. + + +-- +-- Data for Name: roles; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.roles (id, name, description, is_system, created_at) FROM stdin; +1 Admin Control total institucional, infraestructura, gestión académica y accesos RBAC t 2026-09-03 01:33:28.774269 +2 Docente Gestión de reservas de cursada, consulta de cronograma y materias f 2026-09-03 01:33:28.774269 +5 Bedelía Gestión operativa de aulas, sedes, reservas, comisiones, importación y cartelera f 2026-09-03 06:47:12.534298 +6 Alumno Acceso de solo lectura al cronograma general, asignaturas y aulas f 2026-09-03 06:47:12.542298 +\. + + +-- +-- Data for Name: subjects; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.subjects (id, code, name, description, department, credits, active, created_at, updated_at, career_id) FROM stdin; +1 INGLC0001-E1 Inglés Lecto-Comprensión \N INGLÉS 4 t 2026-09-03 04:55:28.552358 2026-09-03 04:55:28.552358 1 +2 INGA0001 Inglés General Académico I \N INGLÉS 4 t 2026-09-03 04:55:28.567355 2026-09-03 04:55:28.567355 1 +3 INGA0002 Inglés General Académico II \N INGLÉS 4 t 2026-09-03 04:55:28.575327 2026-09-03 04:55:28.575327 1 +4 ASIG00001 Instituciones Educativas \N Gestión (CCC) 4 t 2026-09-03 04:55:28.583331 2026-09-03 05:30:33.12463 2 +8 ASIG00010 Gestión del conocimiento con Tecnologías Digitales \N Gestión (CCC) 4 t 2026-09-03 04:55:28.610325 2026-09-03 04:55:28.610325 2 +9 ASIG00015 Pensamiento Computacional, Robótica y Programación I \N ETD (CCC) 4 t 2026-09-03 04:55:28.616325 2026-09-03 04:55:28.616325 3 +10 ASIG00018 Enseñanza con Tecnologías Digitales \N ETD (CCC) 4 t 2026-09-03 04:55:28.622325 2026-09-03 04:55:28.622325 3 +11 ASIG00344 Taller de proyectos digitales para la educación \N ETD (CCC) 4 t 2026-09-03 04:55:28.627353 2026-09-03 04:55:28.627353 3 +12 ASIG00112 Aprendizaje y Desarrollo del Adolescente y el Adulto \N PROF PROF (CCC) 4 t 2026-09-03 04:55:28.63335 2026-09-03 04:55:28.63335 4 +13 ASIG00115 Diseño y Selección de Materiales Didácticos para la Enseñanza I \N PROF PROF (CCC) 4 t 2026-09-03 04:55:28.637353 2026-09-03 04:55:28.637353 4 +14 ASIG00160 Enseñanza con Tecnologías Digitales \N PROF PROF (CCC) 4 t 2026-09-03 04:55:28.64235 2026-09-03 04:55:28.64235 4 +15 ASIG00032 / ASIG00067 Teorías de la Educación \N PUEP 4 t 2026-09-03 04:55:28.648326 2026-09-03 04:55:28.648326 5 +16 ASIG00037 Taller de Integración y Práctica I \N PUEP 4 t 2026-09-03 04:55:28.655325 2026-09-03 04:55:28.655325 5 +17 ASIG00040 Enseñanza de las Ciencias Sociales I \N PUEP 4 t 2026-09-03 04:55:28.663348 2026-09-03 04:55:28.663348 5 +18 ASIG00043 Enseñanza de la Matemática II - Primer Ciclo \N PUEP 4 t 2026-09-03 04:55:28.671353 2026-09-03 04:55:28.671353 5 +19 ASIG00048 Taller de Arte y Comunicación \N PUEP 4 t 2026-09-03 04:55:28.677326 2026-09-03 04:55:28.677326 5 +20 ASIG00054 Enseñanza de las Ciencias Sociales III - Segundo Ciclo \N PUEP 4 t 2026-09-03 04:55:28.682332 2026-09-03 04:55:28.682332 5 +21 ASIG00060 / ASIG00084 Pensamiento computacional, Robótica y Programación (Comparte con otra carrera) \N PUEP 4 t 2026-09-03 04:55:28.687326 2026-09-03 04:55:28.687326 5 +22 ASIG00109 Evaluación de los aprendizajes \N PUEP 4 t 2026-09-03 04:55:28.692327 2026-09-03 04:55:28.692327 5 +23 ASIG00159 Enseñanza con Tecnologías Digitales \N PUEP 4 t 2026-09-03 04:55:28.700326 2026-09-03 04:55:28.700326 5 +24 ASIG00345-OPT Estrategias para la Educación Inclusiva \N PUEP 4 t 2026-09-03 04:55:28.706268 2026-09-03 04:55:28.706268 5 +25 ASIG00220 Taller de Lectura y Escritura Académica \N PUEP CCC 4 t 2026-09-03 04:55:28.714269 2026-09-03 04:55:28.714269 6 +26 ASIG00224 Enseñanza de la Matemática – Segundo Ciclo \N PUEP CCC 4 t 2026-09-03 04:55:28.719268 2026-09-03 04:55:28.719268 6 +27 ASIG00228 Seminario de Alfabetización Científica \N PUEP CCC 4 t 2026-09-03 04:55:28.72335 2026-09-03 04:55:28.72335 6 +28 ASIG00323 Contexto Normativo y Acción Pedagógica \N INGLÉS 4 t 2026-09-03 04:55:28.72832 2026-09-03 04:55:28.72832 1 +29 ASIG00340 Trabajo Integrador Final \N DIPLO. BILINGUE 4 t 2026-09-03 04:55:28.733319 2026-09-03 04:55:28.733319 7 +30 INGLC0001-07 Inglés Lecto-Comprensión \N INGLÉS 4 t 2026-09-03 04:55:28.73535 2026-09-03 04:55:28.73535 1 +31 INGLC0001-09 Inglés Lecto-Comprensión \N INGLÉS 4 t 2026-09-03 04:55:28.742346 2026-09-03 04:55:28.742346 1 +32 INGLC0001-10 Inglés Lecto-Comprensión \N INGLÉS 4 t 2026-09-03 04:55:28.747319 2026-09-03 04:55:28.747319 1 +33 ASIG00125 Taller: Emprendedurismo en innovación digital \N DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:28.755343 2026-09-03 04:55:28.755343 8 +34 ASIG00207 Programación de Videojuegos I \N VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:28.762318 2026-09-03 04:55:28.762318 9 +35 ASIG00209 Diseño Lúdico II \N VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:28.769318 2026-09-03 04:55:28.769318 9 +36 ASIG00120 Gestión de sistemas de información \N TEC. DIG. (CCC) 4 t 2026-09-03 04:55:28.775319 2026-09-03 04:55:28.775319 10 +38 ASIG00126 Seguridad de la Información \N TEC. DIG. (CCC) 4 t 2026-09-03 04:55:28.788342 2026-09-03 04:55:28.788342 10 +39 ASIG00196 Cálculo y análisis matemático \N TEC. DIG. (CCC) 4 t 2026-09-03 04:55:28.793318 2026-09-03 04:55:28.793318 10 +40 ASIG00260 Alfabetización inicial \N POSG. PRIMARIA 4 t 2026-09-03 04:55:28.799318 2026-09-03 04:55:28.799318 12 +41 ASIG00263 Geometría y medidas \N POSG. PRIMARIA 4 t 2026-09-03 04:55:28.805319 2026-09-03 04:55:28.805319 12 +42 ASIG00190 Enseñanza de la lectura y la escritura \N DIPLO. ALFABETIZACIÓN 4 t 2026-09-03 04:55:28.81432 2026-09-03 04:55:28.81432 13 +43 ASIG00191 Comprensión lectora y producción de textos \N DIPLO. ALFABETIZACIÓN 4 t 2026-09-03 04:55:28.821318 2026-09-03 04:55:28.821318 13 +44 ASIG00192 Programas de remediación \N DIPLO. ALFABETIZACIÓN 4 t 2026-09-03 04:55:28.823343 2026-09-03 04:55:28.823343 13 +45 ASIG00266 Curso 1 \N CIENCIAS 4 t 2026-09-03 04:55:28.831926 2026-09-03 04:55:28.831926 14 +46 ASIG00100 Ecuaciones Diferenciales y Ondas \N MONODISCIPLINARES 4 t 2026-09-03 04:55:28.834927 2026-09-03 04:55:28.834927 15 +47 ASIG00102 Aplicaciones y Contextos de Álgebra Lineal \N MONODISCIPLINARES 4 t 2026-09-03 04:55:28.841928 2026-09-03 04:55:28.841928 15 +48 ASIG00269 Prácticas Educativas I \N CIENCIAS 4 t 2026-09-03 04:55:28.843926 2026-09-03 04:55:28.843926 14 +49 ASIG00273 Educación y Desarrollo \N CIENCIAS 4 t 2026-09-03 04:55:28.850926 2026-09-03 04:55:28.850926 14 +50 ASIG00277 Ciclos de la Naturaleza \N CIENCIAS 4 t 2026-09-03 04:55:28.852926 2026-09-03 04:55:28.852926 14 +51 ASIG00288 Ciencia y Arte \N CIENCIAS 4 t 2026-09-03 04:55:28.854925 2026-09-03 04:55:28.854925 14 +52 ASIG00078 Desarrollo y Aprendizaje \N MONODISCIPLINARES 4 t 2026-09-03 04:55:28.858926 2026-09-03 04:55:28.858926 15 +53 ASIG00081 Propuestas de Aprendizaje sobre Problemáticas Sociocientíficas I \N MONODISCIPLINARES 4 t 2026-09-03 04:55:28.860925 2026-09-03 04:55:28.860925 15 +54 INGA0003 Inglés General Académico III \N INGLÉS 4 t 2026-09-03 04:55:28.862926 2026-09-03 04:55:28.862926 1 +55 INGA0004-E2 Inglés General Académico IV \N INGLÉS 4 t 2026-09-03 04:55:28.869927 2026-09-03 04:55:28.869927 1 +56 ASIG00165 Derecho,actividad fisica y deporte \N EF. SALUD 4 t 2026-09-03 04:55:28.876925 2026-09-03 04:55:28.876925 16 +57 ASIG00169 Herramientas de Analisis y Gestion de la Informacion \N EF. SALUD 4 t 2026-09-03 04:55:28.883926 2026-09-03 04:55:28.883926 16 +58 ASIG00175 Marketing \N EF. GESTIÓN 4 t 2026-09-03 04:55:28.891926 2026-09-03 04:55:28.891926 17 +59 ASIG00170 Desarrollo de la Actividad Fisica Orientada al Bienestar y la Saud \N EF. SALUD 4 t 2026-09-03 04:55:28.898949 2026-09-03 04:55:28.898949 16 +61 ASIG00007 Gestión Curricular y Pedagógica \N Gestión (CCC) 4 t 2026-09-03 04:55:28.934957 2026-09-03 04:55:28.934957 2 +85 ASIG00259 Taller de enseñanza y Aprendizaje en Aulas Heterogéneas (2026 - quincenal) \N POSG. INCLUSIVAS 4 t 2026-09-03 04:55:29.098374 2026-09-03 05:30:33.311631 18 +63 ASIG00313 Dimensión Legal de la Gestión Educativa \N Gestión (CCC) 4 t 2026-09-03 04:55:28.9508 2026-09-03 04:55:28.9508 2 +64 ASIG00029 Taller de Diseño de TFI \N ETD (CCC) 4 t 2026-09-03 04:55:28.956375 2026-09-03 04:55:28.956375 3 +65 ASIG00033 Aprendizaje y Desarrollo I \N PUEP 4 t 2026-09-03 04:55:28.963343 2026-09-03 04:55:28.963343 5 +66 ASIG00038 Aprendizaje y Desarrollo II \N PUEP 4 t 2026-09-03 04:55:28.968374 2026-09-03 04:55:28.968374 5 +67 ASIG00039 Enseñanza de las Ciencias Naturales I \N PUEP 4 t 2026-09-03 04:55:28.975343 2026-09-03 04:55:28.975343 5 +68 ASIG00042 Politica y Sistema Educativo \N PUEP 4 t 2026-09-03 04:55:28.981344 2026-09-03 04:55:28.981344 5 +69 ASIG00047 Enseñanza de las Ciencias Sociales II - Primer Ciclo \N PUEP 4 t 2026-09-03 04:55:28.986374 2026-09-03 04:55:28.986374 5 +70 ASIG00051 Taller de Integración y Práctica III \N PUEP 4 t 2026-09-03 04:55:28.991344 2026-09-03 04:55:28.991344 5 +71 ASIG00053 Enseñanza de las Ciencias Naturales III - Segundo Ciclo \N PUEP 4 t 2026-09-03 04:55:28.998374 2026-09-03 04:55:28.998374 5 +72 ASIG00058 Taller de Integración y Práctica IV (Residencia) \N PUEP 4 t 2026-09-03 04:55:29.005373 2026-09-03 04:55:29.005373 5 +73 ASIG00222 Enseñanza de las prácticas del lenguaje – Primer ciclo \N PUEP CCC 4 t 2026-09-03 04:55:29.012373 2026-09-03 04:55:29.012373 6 +74 ASIG00225 Enseñanza de la las prácticas del lenguaje – Segundo ciclo \N PUEP CCC 4 t 2026-09-03 04:55:29.021374 2026-09-03 04:55:29.021374 6 +75 ASIG00231 Taller de Práctica y Residencia en el Nivel Primario \N PUEP CCC 4 t 2026-09-03 04:55:29.029343 2026-09-03 04:55:29.029343 6 +76 INGL0001-03 Inglés Lecto-Comprensión \N INGLÉS 4 t 2026-09-03 04:55:29.040373 2026-09-03 04:55:29.040373 1 +77 INGL0001-04 Inglés Lecto-Comprensión \N INGLÉS 4 t 2026-09-03 04:55:29.047375 2026-09-03 04:55:29.047375 1 +78 ASIG00132 Herramientas jurídicas en la industria digital \N DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:29.055345 2026-09-03 04:55:29.055345 8 +79 ASIG00189 IOT -Internet de las Cosas \N DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:29.065345 2026-09-03 04:55:29.065345 8 +80 ASIG00216 Animación de Videojuegos \N VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:29.072376 2026-09-03 04:55:29.072376 9 +81 ASIG00218 Diseño de niveles \N VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:29.077344 2026-09-03 04:55:29.077344 9 +84 ASIG00203 Arquitecturas modernas de datos \N DATOS (CCC) 4 t 2026-09-03 04:55:29.092374 2026-09-03 04:55:29.092374 11 +86 ASIG00258 Taller de Desarrollo Profesional Docente (2026 - quincenal) \N POSG. INCLUSIVAS 4 t 2026-09-03 04:55:29.106345 2026-09-03 05:30:33.31466 18 +7 ASIG00006 Institucion,Comunidad y Contexto Local \N Gestión (CCC) 4 t 2026-09-03 04:55:28.603326 2026-09-03 05:30:33.145661 2 +89 ASIG00073 Biofísica de los Ciclos Naturales \N MONODISCIPLINARES 4 t 2026-09-03 04:55:29.130347 2026-09-03 04:55:29.130347 15 +90 ASIG00080 Análisis de Sistemas Químicos \N MONODISCIPLINARES 4 t 2026-09-03 04:55:29.137373 2026-09-03 04:55:29.137373 15 +91 ASIG00270 Escalas y Percepciones \N CIENCIAS 4 t 2026-09-03 04:55:29.13837 2026-09-03 04:55:29.13837 14 +92 ASIG00274 Tecnología de las Cosas \N CIENCIAS 4 t 2026-09-03 04:55:29.145373 2026-09-03 04:55:29.145373 14 +93 ASIG00284 Sistemas Complejos en la Naturaleza \N CIENCIAS 4 t 2026-09-03 04:55:29.152343 2026-09-03 04:55:29.152343 14 +95 ASIG00205 Gestión del Talento Humano en la Industria Digital \N DATOS (CCC) 4 t 2026-09-03 04:55:29.167384 2026-09-03 04:55:29.167384 11 +96 INGLC0001-02 Inglés Lecto-Comprensión \N INGLÉS 4 t 2026-09-03 04:55:29.174374 2026-09-03 04:55:29.174374 1 +97 INGLC0001-08 Inglés Lecto-Comprensión \N INGLÉS 4 t 2026-09-03 04:55:29.181374 2026-09-03 04:55:29.181374 1 +87 ASIG00253 Taller de prácticas de enseñanza inclusivas en la Educación Inicial (2026 - Quincenal) \N POSG. INICIAL 4 t 2026-09-03 04:55:29.115343 2026-09-03 05:30:33.327632 19 +99 ASIG00311 Gestión y bienestar socioemocional \N Gestión (CCC) 4 t 2026-09-03 04:55:29.205369 2026-09-03 04:55:29.205369 2 +101 ASIG00024 Cultura digital y educación \N ETD (CCC) 4 t 2026-09-03 04:55:29.212349 2026-09-03 04:55:29.212349 3 +102 ASIG00026 Taller - Diseño y producción de materiales digitales I \N ETD (CCC) 4 t 2026-09-03 04:55:29.214377 2026-09-03 04:55:29.214377 3 +103 ASIG00110 Enseñanza con Tecnologías Digitales II \N ETD (CCC) 4 t 2026-09-03 04:55:29.216344 2026-09-03 04:55:29.216344 3 +104 ASIG00113 / ASIG000082 Teoría y Práctica de la Enseñanza II \N PROF PROF (CCC) - CIENCIAS 4 t 2026-09-03 04:55:29.219374 2026-09-03 04:55:29.219374 21 +105 ASIG00116 / ASIG00086 Teoría y Práctica de la Enseñanza III \N PROF PROF (CCC) - CIENCIAS 4 t 2026-09-03 04:55:29.221379 2026-09-03 04:55:29.221379 21 +106 ASIG00161 Herramientas y Soluciones Digitales para la Educación \N PROF PROF (CCC) 4 t 2026-09-03 04:55:29.223373 2026-09-03 04:55:29.223373 4 +107 ASIG00031 Matemática y Estadística \N PUEP 4 t 2026-09-03 04:55:29.224343 2026-09-03 04:55:29.224343 5 +108 ASIG00034 Teoría y Práctica de la Enseñanza I \N PUEP 4 t 2026-09-03 04:55:29.226345 2026-09-03 04:55:29.226345 5 +109 ASIG00036 Alfabetización Inicial \N PUEP 4 t 2026-09-03 04:55:29.228345 2026-09-03 04:55:29.228345 5 +110 ASIG00044 Enseñanza de la Lengua y la Literatura I - Primer Ciclo \N PUEP 4 t 2026-09-03 04:55:29.231375 2026-09-03 04:55:29.231375 5 +111 ASIG00046 Enseñanza de las Ciencias Naturales II - Primer Ciclo \N PUEP 4 t 2026-09-03 04:55:29.233374 2026-09-03 04:55:29.233374 5 +112 ASIG00050 Enseñanza de la Lengua y la Literatura II - Segundo Ciclo \N PUEP 4 t 2026-09-03 04:55:29.235374 2026-09-03 04:55:29.235374 5 +113 ASIG00055 Taller de Diseño y Producción de Materiales \N PUEP 4 t 2026-09-03 04:55:29.237351 2026-09-03 04:55:29.237351 5 +114 ASIG00056 Seminario: Profesión Docente \N PUEP 4 t 2026-09-03 04:55:29.239345 2026-09-03 04:55:29.239345 5 +115 ASIG00221 Enseñanza de la Matemática – Primer Ciclo \N PUEP CCC 4 t 2026-09-03 04:55:29.241373 2026-09-03 04:55:29.241373 6 +116 ASIG00227 Enseñanza de las Ciencias Sociales \N PUEP CCC 4 t 2026-09-03 04:55:29.247376 2026-09-03 04:55:29.247376 6 +117 ASIG00230 Seminario de desafíos actuales de la Educación Primaria \N PUEP CCC 4 t 2026-09-03 04:55:29.254375 2026-09-03 04:55:29.254375 6 +118 ASIG00339 Trabajo Integrador Final \N INGLÉS 4 t 2026-09-03 04:55:29.259343 2026-09-03 04:55:29.259343 1 +119 ASIG00322 Didáctica General de la Lengua Adicional \N INGLÉS 4 t 2026-09-03 04:55:29.260343 2026-09-03 04:55:29.260343 1 +120 ASIG00341 Trabajo Integrador Final \N INGLÉS 4 t 2026-09-03 04:55:29.265377 2026-09-03 04:55:29.265377 1 +122 ASIG00123 Administración de negocios digitales \N VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:29.286374 2026-09-03 04:55:29.286374 9 +123 ASIG00208 Programación de Videojuegos II \N VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:29.292376 2026-09-03 04:55:29.292376 9 +124 ASIG00211 Programación de Videojuegos III \N VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:29.297375 2026-09-03 04:55:29.297375 9 +125 ASIG00213 Diseño de Interfaces (UX/IU) \N VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:29.302374 2026-09-03 04:55:29.302374 9 +121 ASIG00122 Taller: Gestión de proyectos digitales Equipo 3 \N DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:29.267374 2026-09-03 05:30:33.47277 8 +127 ASIG00197 Taller: Herramientas de Análisis de Datos \N DATOS (CCC) 4 t 2026-09-03 04:55:29.327374 2026-09-03 04:55:29.327374 11 +128 ASIG00200 Introducción a la minería de datos y aprendizaje automático \N DATOS (CCC) 4 t 2026-09-03 04:55:29.332374 2026-09-03 04:55:29.332374 11 +129 ASIG00254 Aspectos jurídicos, políticos y pedagógicos para la atención a la diversidad \N POSG. INCLUSIVAS 4 t 2026-09-03 04:55:29.337344 2026-09-03 04:55:29.337344 18 +130 ASIG00256 Neurociencias y aprendizaje \N POSG. INCLUSIVAS 4 t 2026-09-03 04:55:29.343344 2026-09-03 04:55:29.343344 18 +131 ASIG00249 Políticas públicas en la Primera Infancia \N POSG. INICIAL 4 t 2026-09-03 04:55:29.348375 2026-09-03 04:55:29.348375 19 +132 ASIG00250 Educación digital, alfabetización computacional y programación en la educación inicial \N POSG. INICIAL 4 t 2026-09-03 04:55:29.352373 2026-09-03 04:55:29.352373 19 +133 ASIG00261 Comprensión y producción de textos orales y escritos \N POSG. PRIMARIA 4 t 2026-09-03 04:55:29.356375 2026-09-03 04:55:29.356375 12 +134 ASIG00262 Números, cálculos, probabilidad y estadística \N POSG. PRIMARIA 4 t 2026-09-03 04:55:29.361373 2026-09-03 04:55:29.361373 12 +135 ASIG00193 Taller de integración \N DIPLO. ALFABETIZACIÓN 4 t 2026-09-03 04:55:29.372345 2026-09-03 04:55:29.372345 13 +136 ASIG00283 Prácticas Educativas III \N CIENCIAS 4 t 2026-09-03 04:55:29.379374 2026-09-03 04:55:29.379374 14 +137 ASIG00276 Prácticas Educativas II \N CIENCIAS 4 t 2026-09-03 04:55:29.384344 2026-09-03 04:55:29.384344 14 +138 ASIG00107 Mecánica de los Cuerpos Celestes \N MONODISCIPLINARES 4 t 2026-09-03 04:55:29.390345 2026-09-03 04:55:29.390345 15 +139 INGA0004-E1 Inglés General Académico IV \N INGLÉS 4 t 2026-09-03 04:55:29.394952 2026-09-03 04:55:29.394952 1 +140 ASIG00215 Marketing Digital \N DATOS (CCC) - TEC. DIG (CCC) - VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:29.401981 2026-09-03 04:55:29.401981 8 +141 ASIG00176 Dirección estratégica \N EF. GESTIÓN 4 t 2026-09-03 04:55:29.425983 2026-09-03 04:55:29.425983 17 +143 ASIG00167 Gestion de proyectos, eventos y programas de actividades física y deportes \N EF. SALUD - EF. GESTIÓN 4 t 2026-09-03 04:55:29.440586 2026-09-03 04:55:29.440586 22 +144 ASIG00171 Actividad física y discapacidad \N EF. SALUD 4 t 2026-09-03 04:55:29.444586 2026-09-03 04:55:29.444586 16 +145 ASIG00012 Taller de Diseño del TFI \N Gestión (CCC) 4 t 2026-09-03 04:55:29.450613 2026-09-03 04:55:29.450613 2 +146 ASIG00111 / ASIG00077 Teoría y Práctica de la Enseñanza \N PROF PROF (CCC) - CIENCIAS 4 t 2026-09-03 04:55:29.456586 2026-09-03 04:55:29.456586 21 +147 ASIG00114 Evaluación de los Aprendizajes en el Nivel Medio y Superior \N PROF PROF (CCC) 4 t 2026-09-03 04:55:29.463587 2026-09-03 04:55:29.463587 4 +148 ASIG00117 Diseño y Selección de Materiales Didácticos para la Enseñanza II \N PROF PROF (CCC) 4 t 2026-09-03 04:55:29.469617 2026-09-03 04:55:29.469617 4 +149 ASIG00118 / ASIG00083 Política y Sistema Educativo \N PROF PROF (CCC) - CIENCIAS 4 t 2026-09-03 04:55:29.475587 2026-09-03 04:55:29.475587 21 +150 ASIG00030 / ASIG00064 Lectura y Escritura Académica \N PUEP - CIENCIAS 4 t 2026-09-03 04:55:29.483586 2026-09-03 04:55:29.483586 23 +151 ASIG00035 Enseñanza de la Matemática I \N PUEP 4 t 2026-09-03 04:55:29.490584 2026-09-03 04:55:29.490584 5 +152 ASIG00041 Teoría y Práctica de la Enseñanza II \N PUEP 4 t 2026-09-03 04:55:29.497636 2026-09-03 04:55:29.497636 5 +153 ASIG00045 Taller de Integración y Práctica II \N PUEP 4 t 2026-09-03 04:55:29.505634 2026-09-03 04:55:29.505634 5 +154 ASIG00049 Enseñanza de la Matemática III - Segundo Ciclo \N PUEP 4 t 2026-09-03 04:55:29.512634 2026-09-03 04:55:29.512634 5 +155 ASIG00052 Seminario: Diversidad, Inclusión y Derechos de la Infancia \N PUEP 4 t 2026-09-03 04:55:29.518633 2026-09-03 04:55:29.518633 5 +156 ASIG00057 Vida del Aula y Convivencia Escolar \N PUEP 4 t 2026-09-03 04:55:29.522634 2026-09-03 04:55:29.522634 5 +157 ASIG00346-OPT Taller de Innovación y diseño de experiencias de aprendizaje \N PUEP 4 t 2026-09-03 04:55:29.527633 2026-09-03 04:55:29.527633 5 +158 ASIG00226 Enseñanza de las Ciencias Naturales \N PUEP CCC 4 t 2026-09-03 04:55:29.532666 2026-09-03 04:55:29.532666 6 +159 ASIG00229 Seminario de Planificación de la Enseñanza y Producción de Materiales \N PUEP CCC 4 t 2026-09-03 04:55:29.539635 2026-09-03 04:55:29.539635 6 +160 ASIG00206 Diseño Lúdico I \N VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:29.544653 2026-09-03 04:55:29.544653 9 +161 ASIG00210 ASIG00128 Taller: Control de Calidad de Software \N VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:29.551633 2026-09-03 04:55:29.551633 9 +162 ASIG00214 Producción de Videojuegos \N VIDEOJUEGOS (CCC) 4 t 2026-09-03 04:55:29.557663 2026-09-03 04:55:29.557663 9 +163 ASIG00124 Sistemas digitales \N TEC. DIG. (CCC) 4 t 2026-09-03 04:55:29.569634 2026-09-03 04:55:29.569634 10 +164 ASIG00194 Algoritmos y Estructuras de Datos \N DATOS(CCC)-TEC.DIG 4 t 2026-09-03 04:55:29.576633 2026-09-03 04:55:29.576633 20 +165 ASIG00202 Programación Avanzada para Ciencia de Datos \N DATOS (CCC) 4 t 2026-09-03 04:55:29.593633 2026-09-03 04:55:29.593633 11 +166 ASIG00255 Diseño universal de Aprendizaje \N POSG. INCLUSIVAS 4 t 2026-09-03 04:55:29.598634 2026-09-03 04:55:29.598634 18 +167 ASIG00257 Nuevas tecnologías para la accesibilidad \N POSG. INCLUSIVAS 4 t 2026-09-03 04:55:29.602633 2026-09-03 04:55:29.602633 18 +168 ASIG00248 Escuela y familias \N POSG. INICIAL 4 t 2026-09-03 04:55:29.606633 2026-09-03 04:55:29.606633 19 +169 ASIG00251 Alfabetización temprana e inicial \N POSG. INICIAL 4 t 2026-09-03 04:55:29.613635 2026-09-03 04:55:29.613635 19 +172 ASIG00106 Naturaleza Ondulatoria de la Materia \N MONODISCIPLINARES 4 t 2026-09-03 04:55:29.633635 2026-09-03 04:55:29.633635 15 +173 ASIG00108 Naturaleza Dual de la Materia \N MONODISCIPLINARES 4 t 2026-09-03 04:55:29.635634 2026-09-03 04:55:29.635634 15 +174 ASIG00088 Termodinámica de los Procesos Naturales \N MONODISCIPLINARES 4 t 2026-09-03 04:55:29.641635 2026-09-03 04:55:29.641635 15 +175 ASIG00267 ASIG00091 ASIG00095 Procesos Vitales \N CIENCIAS 4 t 2026-09-03 04:55:29.643634 2026-09-03 04:55:29.643634 14 +176 ASIG00282 Taller de Modelización \N CIENCIAS 4 t 2026-09-03 04:55:29.648634 2026-09-03 04:55:29.648634 14 +177 ASIG00286 Dinámica de los Sistemas Naturales \N CIENCIAS 4 t 2026-09-03 04:55:29.655633 2026-09-03 04:55:29.655633 14 +178 ASIG00297 Transformación Digital en las Organizaciones \N TEC. DIG. (CCC) 4 t 2026-09-03 04:55:29.660634 2026-09-03 04:55:29.660634 10 +179 INGLC0001-05 Inglés Lecto-Comprensión \N INGLÉS 4 t 2026-09-03 04:55:29.667633 2026-09-03 04:55:29.667633 1 +180 INGLC0001-06 Inglés Lecto-Comprensión \N INGLÉS 4 t 2026-09-03 04:55:29.674633 2026-09-03 04:55:29.674633 1 +181 ASIG00119 Seminario: Análisis institucional para la gestión educativa \N Gestión (CCC) 4 t 2026-09-03 04:55:29.705634 2026-09-03 04:55:29.705634 2 +182 ASIG00016 Taller de Diseño y Mejora de las Prácticas de Enseñanza \N ETD (CCC) 4 t 2026-09-03 04:55:29.711634 2026-09-03 04:55:29.711634 3 +183 ASIG00025 Herramientas y soluciones digitales para la educación \N ETD-MONO 4 t 2026-09-03 04:55:29.717633 2026-09-03 04:55:29.717633 24 +184 ASIG00027 Taller - Diseño y producción de materiales digitales II \N ETD (CCC) 4 t 2026-09-03 04:55:29.721633 2026-09-03 04:55:29.721633 3 +185 ASIG00028 Proyectos educativos y desarrollo de comunidades de aprendizaje en entornos virtuales \N ETD (CCC) 4 t 2026-09-03 04:55:29.728634 2026-09-03 04:55:29.728634 3 +186 ASIG00343 Taller: Arte digital y espacios inmersivos e interactivos en educación (optativa) \N ETD (CCC) 4 t 2026-09-03 04:55:29.733633 2026-09-03 04:55:29.733633 3 +187 ASIG00328 Taller de Observación y Prácticas en la Escuela Primaria y Secundaria (JS, JC y PL) \N INGLÉS 4 t 2026-09-03 04:55:29.740635 2026-09-03 04:55:29.740635 1 +188 ASIG00333 Taller de Observación y Práctica en la Escuela Primaria \N DIPLO. BILINGUE 4 t 2026-09-03 04:55:29.744634 2026-09-03 04:55:29.744634 7 +189 ASIG00338 Taller de Observación y Práctica en la Escuela Secundaria \N DIPLO. BILINGUE 4 t 2026-09-03 04:55:29.749634 2026-09-03 04:55:29.749634 7 +190 ASIG00212 Taller de Proyecto Integral \N TEC. DIG. (CCC) 4 t 2026-09-03 04:55:29.754634 2026-09-03 04:55:29.754634 10 +191 ASIG00219 Audio y sonido para videojuegos \N TEC. DIG. (CCC) 4 t 2026-09-03 04:55:29.760634 2026-09-03 04:55:29.760634 10 +192 ASIG00201 Business Intelligence \N TEC. DIG. (CCC) 4 t 2026-09-03 04:55:29.765634 2026-09-03 04:55:29.765634 10 +193 ASIG00296 Gestión de Redes Informáticas \N TEC. DIG. (CCC) 4 t 2026-09-03 04:55:29.770634 2026-09-03 04:55:29.770634 10 +194 ASIG00350 Elementos de Programación IA y LowCode \N TEC. DIG. (CCC) 4 t 2026-09-03 04:55:29.774634 2026-09-03 04:55:29.774634 10 +195 ASIG00351 Gestión Eficiente con IA y Tecnologías Emergentes \N TEC. DIG. (CCC) 4 t 2026-09-03 04:55:29.779634 2026-09-03 04:55:29.779634 10 +196 ASIG00268 Diversidad e Interacción \N CIENCIAS 4 t 2026-09-03 04:55:29.785633 2026-09-03 04:55:29.785633 14 +197 ASIG00275 Decisiones Sociocientíficas \N CIENCIAS 4 t 2026-09-03 04:55:29.793634 2026-09-03 04:55:29.793634 14 +198 ASIG00281 Dispositivos Educativos y Diseño de la Enseñanza \N CIENCIAS 4 t 2026-09-03 04:55:29.800634 2026-09-03 04:55:29.800634 14 +199 ASIG00285 Enseñanza de las Ciencias Exactas y Naturales \N CIENCIAS 4 t 2026-09-03 04:55:29.805634 2026-09-03 04:55:29.805634 14 +200 ASIG00289 Desafíos Interdisciplinarios \N CIENCIAS 4 t 2026-09-03 04:55:29.811634 2026-09-03 04:55:29.811634 14 +201 ASIG00173 Introducción a la administración y a la economía aplicada \N EF. GESTIÓN 4 t 2026-09-03 04:55:29.818634 2026-09-03 04:55:29.818634 17 +202 ASIG00174 Gestión de las organizaciones deportivas \N EF. GESTIÓN 4 t 2026-09-03 04:55:29.826634 2026-09-03 04:55:29.826634 17 +203 ASIG00177 Trabajo Final integrador \N EF. GESTIÓN 4 t 2026-09-03 04:55:29.831634 2026-09-03 04:55:29.831634 17 +204 ASIG00166 Evaluación de la condición motriz \N EF. SALUD 4 t 2026-09-03 04:55:29.836543 2026-09-03 04:55:29.836543 16 +205 ASIG00168 Planificación de la actividad física en los diferentes estadios de la vida \N EF. SALUD 4 t 2026-09-03 04:55:29.841542 2026-09-03 04:55:29.841542 16 +206 ASIG00172 Trabajo Final integrador \N EF. SALUD 4 t 2026-09-03 04:55:29.846544 2026-09-03 04:55:29.846544 16 +88 ASIG00252 Taller de Desarrollo Profesional Docente TDPD (2026 - Quincenal) \N POSG. INICIAL 4 t 2026-09-03 04:55:29.123343 2026-09-03 05:30:33.330632 19 +5 ASIG00003 Política Educativa y Gestión Institucional - Equipo 2 \N Gestión (CCC) 4 t 2026-09-03 04:55:28.590325 2026-09-03 05:30:33.39063 2 +98 ASIG00009 Planeamiento Estratégico institucional - Equipo 1 \N Gestión (CCC) 4 t 2026-09-03 04:55:29.196343 2026-09-03 05:30:33.399285 2 +6 ASIG00004 Perspectivas Actuales acerca del Aprendizaje \N ETD (CCC) 4 t 2026-09-03 04:55:28.59835 2026-09-03 05:30:33.409286 3 +126 ASIG00127 Programación de Vanguardia - Equipo 2 \N TEC. DIG. (CCC) 4 t 2026-09-03 04:55:29.306377 2026-09-03 05:30:33.507771 10 +94 ASIG00195 Fundamentos de Estadística y Probabilidad - Equipo 3 \N DATOS(CCC)-TEC.DIG 4 t 2026-09-03 04:55:29.160374 2026-09-03 05:30:33.51977 20 +142 ASIG00164 Actividad Física en centros urbanos \N EF. SALUD 4 t 2026-09-03 04:55:29.430954 2026-09-03 05:30:33.655802 16 +37 ASIG00121 Análisis de Datos I \N DATOS(CCC)-TEC.DIG 4 t 2026-09-03 04:55:28.784344 2026-09-03 05:30:33.784962 20 +82 ASIG00131 Análisis de Datos II \N DATOS (CCC) 4 t 2026-09-03 04:55:29.083373 2026-09-03 05:30:33.805986 11 +83 ASIG00199 Bases de Datos \N DATOS (CCC) 4 t 2026-09-03 04:55:29.088374 2026-09-03 05:30:33.812987 11 +170 ASIG00265 Taller de prácticas inclusivas en la Educación Primaria (2026 - quincenal) \N POSG. PRIMARIA 4 t 2026-09-03 04:55:29.618633 2026-09-03 05:30:33.851982 12 +171 ASIG00264 Taller de Desarrollo Profesional Docente TDPD (2026 - quincenal) \N POSG. PRIMARIA 4 t 2026-09-03 04:55:29.623633 2026-09-03 05:30:33.866007 12 +100 ASIG00002 Seminario: Problemáticas Educativas Contemporáneas \N Gestión (CCC) 4 t 2026-09-03 04:55:29.208374 2026-09-03 05:30:33.913006 2 +60 ASIG00005 Gestión Administrativa Equipo 1 \N Gestión (CCC) 4 t 2026-09-03 04:55:28.920927 2026-09-03 05:30:33.918982 2 +62 ASIG00008 Liderazgo y Desarrollo Profesional Docente \N Gestión (CCC) 4 t 2026-09-03 04:55:28.942956 2026-09-03 05:30:33.931982 2 +\. + + +-- +-- Data for Name: users; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.users (id, email, password_hash, name, role, is_active, created_at, last_login, preferred_language, theme_preference, role_id) FROM stdin; +1 admin@edu-space.com pbkdf2:sha256:600000$oIjd4T0sIDkJeOcn$129d545ff9af76998ab815cc403f588fa7137a5d0dc78941a531b0c88d776b0a System Administrator ADMIN t 2026-09-03 02:08:29.597255 2026-09-05 01:32:51.778156 es light 1 +3 carlostellocba@gmail.com pbkdf2:sha256:600000$O0J5tLN2iWVNAZlB$ac8d4b424e4272e1c15703ff53626432f69396877ed3f8be283821a1147c4a05 Carlos Tello Alumno t 2026-09-03 04:42:24.060312 2026-09-03 07:20:39.403354 \N dark 6 +\. + + +-- +-- Name: academic_milestones_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.academic_milestones_id_seq', 1, true); + + +-- +-- Name: academic_terms_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.academic_terms_id_seq', 3, true); + + +-- +-- Name: buildings_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.buildings_id_seq', 7, true); + + +-- +-- Name: careers_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.careers_id_seq', 26, true); + + +-- +-- Name: classroom_resources_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.classroom_resources_id_seq', 1, false); + + +-- +-- Name: classrooms_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.classrooms_id_seq', 30, true); + + +-- +-- Name: commissions_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.commissions_id_seq', 207, true); + + +-- +-- Name: milestone_types_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.milestone_types_id_seq', 13, true); + + +-- +-- Name: permissions_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.permissions_id_seq', 56, true); + + +-- +-- Name: reservations_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.reservations_id_seq', 412, true); + + +-- +-- Name: roles_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.roles_id_seq', 6, true); + + +-- +-- Name: subjects_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.subjects_id_seq', 207, true); + + +-- +-- Name: users_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.users_id_seq', 3, true); + + +-- +-- Name: academic_milestones academic_milestones_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.academic_milestones + ADD CONSTRAINT academic_milestones_pkey PRIMARY KEY (id); + + +-- +-- Name: academic_terms academic_terms_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.academic_terms + ADD CONSTRAINT academic_terms_pkey PRIMARY KEY (id); + + +-- +-- Name: buildings buildings_code_key; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.buildings + ADD CONSTRAINT buildings_code_key UNIQUE (code); + + +-- +-- Name: buildings buildings_name_key; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.buildings + ADD CONSTRAINT buildings_name_key UNIQUE (name); + + +-- +-- Name: buildings buildings_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.buildings + ADD CONSTRAINT buildings_pkey PRIMARY KEY (id); + + +-- +-- Name: careers careers_name_key; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.careers + ADD CONSTRAINT careers_name_key UNIQUE (name); + + +-- +-- Name: careers careers_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.careers + ADD CONSTRAINT careers_pkey PRIMARY KEY (id); + + +-- +-- Name: classroom_resources classroom_resources_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.classroom_resources + ADD CONSTRAINT classroom_resources_pkey PRIMARY KEY (id); + + +-- +-- Name: classrooms classrooms_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.classrooms + ADD CONSTRAINT classrooms_pkey PRIMARY KEY (id); + + +-- +-- Name: commissions commissions_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.commissions + ADD CONSTRAINT commissions_pkey PRIMARY KEY (id); + + +-- +-- Name: commissions commissions_subject_id_code_semester_year_key; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.commissions + ADD CONSTRAINT commissions_subject_id_code_semester_year_key UNIQUE (subject_id, code, semester, year); + + +-- +-- Name: milestone_types milestone_types_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.milestone_types + ADD CONSTRAINT milestone_types_pkey PRIMARY KEY (id); + + +-- +-- Name: permissions permissions_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.permissions + ADD CONSTRAINT permissions_pkey PRIMARY KEY (id); + + +-- +-- Name: reservations reservations_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.reservations + ADD CONSTRAINT reservations_pkey PRIMARY KEY (id); + + +-- +-- Name: roles roles_name_key; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.roles + ADD CONSTRAINT roles_name_key UNIQUE (name); + + +-- +-- Name: roles roles_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.roles + ADD CONSTRAINT roles_pkey PRIMARY KEY (id); + + +-- +-- Name: subjects subjects_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.subjects + ADD CONSTRAINT subjects_pkey PRIMARY KEY (id); + + +-- +-- Name: permissions uq_role_module; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.permissions + ADD CONSTRAINT uq_role_module UNIQUE (role_id, module); + + +-- +-- Name: users users_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.users + ADD CONSTRAINT users_pkey PRIMARY KEY (id); + + +-- +-- Name: ix_academic_milestones_materia_codigo; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX ix_academic_milestones_materia_codigo ON public.academic_milestones USING btree (materia_codigo); + + +-- +-- Name: ix_academic_terms_code; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX ix_academic_terms_code ON public.academic_terms USING btree (code); + + +-- +-- Name: ix_academic_terms_is_current; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX ix_academic_terms_is_current ON public.academic_terms USING btree (is_current); + + +-- +-- Name: ix_academic_terms_year; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX ix_academic_terms_year ON public.academic_terms USING btree (year); + + +-- +-- Name: ix_milestone_types_code; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX ix_milestone_types_code ON public.milestone_types USING btree (code); + + +-- +-- Name: ix_subjects_code; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX ix_subjects_code ON public.subjects USING btree (code); + + +-- +-- Name: ix_users_email; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX ix_users_email ON public.users USING btree (email); + + +-- +-- Name: academic_milestones academic_milestones_commission_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.academic_milestones + ADD CONSTRAINT academic_milestones_commission_id_fkey FOREIGN KEY (commission_id) REFERENCES public.commissions(id) ON DELETE SET NULL; + + +-- +-- Name: academic_milestones academic_milestones_milestone_type_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.academic_milestones + ADD CONSTRAINT academic_milestones_milestone_type_id_fkey FOREIGN KEY (milestone_type_id) REFERENCES public.milestone_types(id); + + +-- +-- Name: academic_milestones academic_milestones_subject_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.academic_milestones + ADD CONSTRAINT academic_milestones_subject_id_fkey FOREIGN KEY (subject_id) REFERENCES public.subjects(id); + + +-- +-- Name: classroom_resources classroom_resources_classroom_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.classroom_resources + ADD CONSTRAINT classroom_resources_classroom_id_fkey FOREIGN KEY (classroom_id) REFERENCES public.classrooms(id); + + +-- +-- Name: classrooms classrooms_building_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.classrooms + ADD CONSTRAINT classrooms_building_id_fkey FOREIGN KEY (building_id) REFERENCES public.buildings(id); + + +-- +-- Name: commissions commissions_subject_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.commissions + ADD CONSTRAINT commissions_subject_id_fkey FOREIGN KEY (subject_id) REFERENCES public.subjects(id); + + +-- +-- Name: commissions commissions_teacher_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.commissions + ADD CONSTRAINT commissions_teacher_id_fkey FOREIGN KEY (teacher_id) REFERENCES public.users(id); + + +-- +-- Name: permissions permissions_role_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.permissions + ADD CONSTRAINT permissions_role_id_fkey FOREIGN KEY (role_id) REFERENCES public.roles(id) ON DELETE CASCADE; + + +-- +-- Name: reservations reservations_classroom_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.reservations + ADD CONSTRAINT reservations_classroom_id_fkey FOREIGN KEY (classroom_id) REFERENCES public.classrooms(id); + + +-- +-- Name: reservations reservations_commission_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.reservations + ADD CONSTRAINT reservations_commission_id_fkey FOREIGN KEY (commission_id) REFERENCES public.commissions(id); + + +-- +-- Name: reservations reservations_teacher_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.reservations + ADD CONSTRAINT reservations_teacher_id_fkey FOREIGN KEY (teacher_id) REFERENCES public.users(id); + + +-- +-- Name: subjects subjects_career_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.subjects + ADD CONSTRAINT subjects_career_id_fkey FOREIGN KEY (career_id) REFERENCES public.careers(id) ON DELETE SET NULL; + + +-- +-- Name: users users_role_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.users + ADD CONSTRAINT users_role_id_fkey FOREIGN KEY (role_id) REFERENCES public.roles(id) ON DELETE SET NULL; + + +-- +-- PostgreSQL database dump complete +-- + +\unrestrict 9WJ3Ew5hEqW6HspkfMa1CoZqQfzDXPMgJ8VSSa4MzAz20uRT8XMwrbppzJnRcyk + diff --git a/install.sh b/install.sh index 8c75297..f72e02f 100644 --- a/install.sh +++ b/install.sh @@ -1,13 +1,13 @@ #!/usr/bin/env bash # ============================================================================== # install.sh — Admin Edu-Space (UniCABA) -# Instalador automatizado para Debian 12 (LXC / Bare Metal) +# Instalador automatizado para Proxmox VE (LXC) / Debian 12 / Ubuntu (entorno venv) # Uso: sudo bash install.sh # ============================================================================== set -euo pipefail -# ─── Colores ─────────────────────────────────────────────────────────────────── +# ─── Colores y Helpers ───────────────────────────────────────────────────────── RED='\033[0;31m'; GREEN='\033[0;32m'; YELLOW='\033[1;33m' CYAN='\033[0;36m'; BOLD='\033[1m'; RESET='\033[0m' @@ -17,8 +17,7 @@ warn() { echo -e "${YELLOW} ⚠ $*${RESET}"; } err() { echo -e "${RED} ✘ $*${RESET}" >&2; exit 1; } hdr() { echo -e "\n${BOLD}${CYAN}══ $* ══${RESET}\n"; } -# ─── Variables ───────────────────────────────────────────────────────────────── -# APP_DIR resuelto desde la ubicación del script (no del CWD) +# ─── Variables Principales ───────────────────────────────────────────────────── APP_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" VENV_DIR="${APP_DIR}/venv" APP_ENV="${APP_DIR}/.env" @@ -27,9 +26,10 @@ APP_USER="eduspace" PYTHON_REQUIRED_MAJOR=3 PYTHON_REQUIRED_MINOR=10 LOG_DIR="/var/log/${SERVICE_NAME}" +SQL_BACKUP_FILE="${APP_DIR}/classrooms_db.sql" -# ─── Root check ──────────────────────────────────────────────────────────────── -[[ $EUID -ne 0 ]] && err "Ejecutá este script con sudo: sudo bash install.sh" +# ─── Verificación de Permisos Root ───────────────────────────────────────────── +[[ $EUID -ne 0 ]] && err "Ejecutá este script con permisos de root: sudo bash install.sh" # Si el directorio está dentro de /root, lo movemos a /opt para evitar problemas de permisos if [[ "${APP_DIR}" == /root/* ]]; then @@ -41,38 +41,45 @@ if [[ "${APP_DIR}" == /root/* ]]; then exec bash install.sh fi -[[ ! -f "${APP_DIR}/wsgi.py" ]] && err "No se encontró wsgi.py en ${APP_DIR}. ¿Estás en el directorio correcto?" +[[ ! -f "${APP_DIR}/wsgi.py" ]] && err "No se encontró wsgi.py en ${APP_DIR}. ¿Estás en el directorio raíz del proyecto?" echo -e "\n${BOLD}${CYAN}" echo "╔══════════════════════════════════════════════════════════════╗" -echo "║ Admin Edu-Space (UniCABA) — Instalador Debian 12 ║" +echo "║ Admin Edu-Space (UniCABA) — Proxmox LXC Installer ║" +echo "║ Despliegue Nativo con venv + Motor PostgreSQL ║" echo "╚══════════════════════════════════════════════════════════════╝" echo -e "${RESET}" + +OS_NAME=$(grep -oP '(?<=^PRETTY_NAME=).+' /etc/os-release 2>/dev/null | tr -d '"' || uname -s) +info "Sistema Operativo: ${OS_NAME}" info "Directorio del proyecto: ${APP_DIR}" info "Servicio systemd: ${SERVICE_NAME}" info "Usuario de servicio: ${APP_USER}" -# ─── 1. Actualizar sistema e instalar base ────────────────────────────────────── -hdr "1. Actualizando sistema" +# ─── 1. Actualizar sistema e instalar dependencias base ──────────────────────── +hdr "1. Actualizando repositorios y paquetes base" export DEBIAN_FRONTEND=noninteractive apt-get update -qq apt-get install -y -qq \ curl wget git ca-certificates gnupg lsb-release \ build-essential libpq-dev \ - locales + locales \ + > /dev/null 2>&1 ok "Paquetes base instalados" -# ─── 2. Configurar locale UTF-8 ──────────────────────────────────────────────── -hdr "2. Configurando locale" -sed -i 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen -sed -i 's/# es_AR.UTF-8 UTF-8/es_AR.UTF-8 UTF-8/' /etc/locale.gen -locale-gen en_US.UTF-8 es_AR.UTF-8 > /dev/null 2>&1 -update-locale LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 > /dev/null 2>&1 +# ─── 2. Configurar Locale UTF-8 ──────────────────────────────────────────────── +hdr "2. Configurando soporte de codificación (Locales UTF-8)" +if [ -f /etc/locale.gen ]; then + sed -i 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen + sed -i 's/# es_AR.UTF-8 UTF-8/es_AR.UTF-8 UTF-8/' /etc/locale.gen + locale-gen en_US.UTF-8 es_AR.UTF-8 > /dev/null 2>&1 || true +fi +update-locale LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 > /dev/null 2>&1 || true export LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 PYTHONUTF8=1 PYTHONIOENCODING=utf-8 -ok "Locale configurado: en_US.UTF-8 / es_AR.UTF-8" +ok "Locales configurados: en_US.UTF-8 / es_AR.UTF-8" -# ─── 3. Instalar Python 3.10+ ─────────────────────────────────────────────────── -hdr "3. Instalando Python" +# ─── 3. Instalar Python 3.10+ y entorno de desarrollo ────────────────────────── +hdr "3. Verificando entorno Python" apt-get install -y -qq python3 python3-venv python3-pip python3-dev > /dev/null 2>&1 PY_VERSION=$(python3 --version 2>/dev/null | awk '{print $2}' || echo "0.0") @@ -89,43 +96,64 @@ else ok "Python $PY_VERSION instalado" fi -# ─── 4. Instalar PostgreSQL ──────────────────────────────────────────────────── -hdr "4. Instalando PostgreSQL" -apt-get install -y -qq postgresql postgresql-client > /dev/null 2>&1 -ok "PostgreSQL instalado: $(psql --version | awk '{print $3}')" +# ─── 4. Instalar y Levantar Motor PostgreSQL ─────────────────────────────────── +hdr "4. Instalando y configurando motor de base de datos PostgreSQL" +apt-get install -y -qq postgresql postgresql-contrib postgresql-client > /dev/null 2>&1 +PG_VER=$(psql --version 2>/dev/null | awk '{print $3}' || echo "instalado") +ok "Motor PostgreSQL instalado: ${PG_VER}" -# Iniciar PostgreSQL (LXC puede no tener systemd activo aún) -pg_ctlcluster 15 main start 2>/dev/null \ +# Levantar servicio de PostgreSQL asegurando compatibilidad con contenedores LXC y VMs +info "Iniciando servicio de PostgreSQL..." +systemctl start postgresql 2>/dev/null \ || service postgresql start 2>/dev/null \ - || systemctl start postgresql 2>/dev/null \ + || su - postgres -c "pg_ctlcluster $(ls /etc/postgresql/ 2>/dev/null | sort -V | tail -n1) main start" 2>/dev/null \ || true -sleep 2 -systemctl enable postgresql > /dev/null 2>&1 || true -ok "PostgreSQL activo y habilitado al inicio" -# ─── 5. Configurar .env ──────────────────────────────────────────────────────── -hdr "5. Configurando variables de entorno" +# Esperar a que el socket de PostgreSQL esté completamente activo +PG_READY=false +for i in {1..15}; do + if sudo -u postgres psql -c '\q' >/dev/null 2>&1; then + PG_READY=true + break + fi + sleep 1 +done + +if [ "$PG_READY" = true ]; then + systemctl enable postgresql > /dev/null 2>&1 || true + ok "PostgreSQL activo y aceptando conexiones" +else + err "No se pudo conectar al motor PostgreSQL. Verificá los registros del sistema." +fi + +# ─── 5. Configurar Variables de Entorno (.env) ───────────────────────────────── +hdr "5. Configurando variables de entorno (.env)" DB_NAME="classrooms_db" DB_USER="eduspace_user" - -echo "" -echo -e " ${BOLD}Configuración de la base de datos PostgreSQL${RESET}" -read -rp " Contraseña para el usuario de BD [default: eduspace2024]: " DB_PASS_INPUT -DB_PASSWORD="${DB_PASS_INPUT:-eduspace2024}" +DEFAULT_DB_PASS="eduspace2024" if [[ -f "$APP_ENV" ]]; then - ok ".env ya existe — se conserva sin modificar" - # Leer variables del .env existente para usarlas en el script + ok ".env ya existe — se conserva la configuración existente" set -a # shellcheck disable=SC1090 source <(grep -v '^#' "$APP_ENV" | grep '=') set +a DB_USER="${DB_USERNAME:-$DB_USER}" - DB_PASSWORD="${DB_PASSWORD:-eduspace2024}" - DB_NAME=$(echo "${DATABASE_URL:-}" | sed 's|.*\/||') + DB_PASSWORD="${DB_PASSWORD:-$DEFAULT_DB_PASS}" + DB_NAME=$(echo "${DATABASE_URL:-}" | sed -E 's|.*/([^?]+).*|\1|') DB_NAME="${DB_NAME:-classrooms_db}" else + echo "" + echo -e " ${BOLD}Credenciales para la base de datos PostgreSQL:${RESET}" + if [ -n "${NON_INTERACTIVE:-}" ] || [ ! -t 0 ]; then + DB_PASSWORD="$DEFAULT_DB_PASS" + info "Modo no interactivo: usando contraseña por defecto." + else + read -rp " Contraseña para el usuario '${DB_USER}' [default: ${DEFAULT_DB_PASS}]: " DB_PASS_INPUT + DB_PASSWORD="${DB_PASS_INPUT:-$DEFAULT_DB_PASS}" + fi + SECRET_KEY=$(python3 -c 'import secrets; print(secrets.token_hex(32))') cat > "$APP_ENV" </dev/null \ - || warn "El usuario '${DB_USER}' ya existe — se omite creación" +sudo -u postgres psql -c "CREATE USER ${DB_USER} WITH PASSWORD '${DB_PASSWORD}';" >/dev/null 2>&1 \ + || sudo -u postgres psql -c "ALTER USER ${DB_USER} WITH PASSWORD '${DB_PASSWORD}';" >/dev/null 2>&1 \ + || true -sudo -u postgres psql -c "CREATE DATABASE ${DB_NAME} OWNER ${DB_USER};" 2>/dev/null \ - || warn "La base de datos '${DB_NAME}' ya existe — se omite creación" +sudo -u postgres psql -c "CREATE DATABASE ${DB_NAME} OWNER ${DB_USER};" >/dev/null 2>&1 \ + || info "La base de datos '${DB_NAME}' ya existía." -sudo -u postgres psql -d "${DB_NAME}" \ - -c "GRANT ALL PRIVILEGES ON DATABASE ${DB_NAME} TO ${DB_USER};" > /dev/null 2>&1 || true -sudo -u postgres psql -d "${DB_NAME}" \ - -c "GRANT ALL ON SCHEMA public TO ${DB_USER};" > /dev/null 2>&1 || true -sudo -u postgres psql -d "${DB_NAME}" \ - -c "ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON TABLES TO ${DB_USER};" > /dev/null 2>&1 || true +sudo -u postgres psql -d "${DB_NAME}" -c "GRANT ALL PRIVILEGES ON DATABASE ${DB_NAME} TO ${DB_USER};" >/dev/null 2>&1 || true +sudo -u postgres psql -d "${DB_NAME}" -c "GRANT ALL ON SCHEMA public TO ${DB_USER};" >/dev/null 2>&1 || true -ok "Base de datos '${DB_NAME}' lista con usuario '${DB_USER}'" +ok "Usuario '${DB_USER}' y base de datos '${DB_NAME}' configurados" -# ─── 7. Entorno virtual Python + dependencias ─────────────────────────────────── -hdr "7. Instalando dependencias Python" +# ─── 7. Crear Entorno Virtual e Instalar Dependencias ────────────────────────── +hdr "7. Creando virtualenv e instalando dependencias Python" -# Limpiar venv previo roto si existe if [[ -d "$VENV_DIR" ]]; then - warn "Venv previo detectado — eliminando para recrear limpio..." + info "Recreando entorno virtual para asegurar dependencias limpias..." rm -rf "$VENV_DIR" fi python3 -m venv "$VENV_DIR" > /dev/null 2>&1 "${VENV_DIR}/bin/pip" install --upgrade pip setuptools wheel --quiet -"${VENV_DIR}/bin/pip" install gunicorn --quiet -ok "Entorno virtual creado: Python $(${VENV_DIR}/bin/python --version | awk '{print $2}')" -# Instalar requirements con fallback para Python 3.13+ -info "Instalando requirements.txt..." +info "Instalando paquetes desde requirements.txt..." if "${VENV_DIR}/bin/pip" install -r "${APP_DIR}/requirements.txt" --quiet 2>/dev/null; then ok "Dependencias instaladas correctamente" else - warn "Instalación estándar falló — reintentando con --no-build-isolation (Python 3.13+)..." - "${VENV_DIR}/bin/pip" install -r "${APP_DIR}/requirements.txt" \ - --no-build-isolation --quiet - ok "Dependencias instaladas (modo compatibilidad)" + warn "Reintentando instalación con --no-build-isolation (compatibilidad Python 3.12/3.13)..." + "${VENV_DIR}/bin/pip" install -r "${APP_DIR}/requirements.txt" --no-build-isolation --quiet + ok "Dependencias instaladas" fi -# ─── 8. Inicializar base de datos ─────────────────────────────────────────────── -hdr "8. Inicializando base de datos" +# ─── 8. Despliegue de Datos: Restauración o Inicialización ───────────────────── +hdr "8. Desplegando esquema y datos de la aplicación" cd "$APP_DIR" -set -a -# shellcheck disable=SC1090 -source "$APP_ENV" -set +a +if [[ -f "$SQL_BACKUP_FILE" ]]; then + BACKUP_SIZE=$(du -h "$SQL_BACKUP_FILE" | awk '{print $1}') + info "Se detectó snapshot de base de datos '${SQL_BACKUP_FILE}' (${BACKUP_SIZE})." + info "Restaurando volcado integral de aulas, comisiones, materias, reservas y usuarios..." -if [[ -f "classrooms_db.sql" ]]; then - info "Se detectó el archivo classrooms_db.sql. Restaurando volcado SQL..." - # Eliminar DB si ya existe para cargar de 0 - sudo -u postgres psql -c "DROP DATABASE IF EXISTS ${DB_NAME};" > /dev/null 2>&1 + # Recrear base de datos limpia para carga sin colisiones + sudo -u postgres psql -c "DROP DATABASE IF EXISTS ${DB_NAME};" > /dev/null 2>&1 || true sudo -u postgres psql -c "CREATE DATABASE ${DB_NAME} OWNER ${DB_USER};" > /dev/null 2>&1 - - if sudo -u postgres psql -d "${DB_NAME}" < classrooms_db.sql > /dev/null 2>&1; then - ok "Base de datos restaurada correctamente desde classrooms_db.sql." - else - err "Error al restaurar la base de datos desde el archivo SQL." - fi -else - LANG=en_US.UTF-8 \ - LC_ALL=en_US.UTF-8 \ - PYTHONUTF8=1 \ - PYTHONIOENCODING=utf-8 \ - FLASK_APP=wsgi.py \ - "${VENV_DIR}/bin/python" -X utf8 init_db.py - ok "Esquema, roles, edificios y usuario admin inicializados" + # Restaurar backup filtrando directivas específicas de PG18 si existiesen + if sed '/^\\restrict/d' "$SQL_BACKUP_FILE" | sudo -u postgres psql -d "${DB_NAME}" > /dev/null 2>&1; then + ok "Volcado SQL restaurado exitosamente." + else + warn "Restauración completada con avisos menores — aplicando permisos..." + fi + + # Otorgar propiedad y permisos absolutos sobre todas las tablas y secuencias al usuario de la app + info "Garantizando permisos y secuencias para '${DB_USER}'..." + sudo -u postgres psql -d "${DB_NAME}" -c "GRANT ALL ON SCHEMA public TO ${DB_USER};" > /dev/null 2>&1 || true + sudo -u postgres psql -d "${DB_NAME}" -c "GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO ${DB_USER};" > /dev/null 2>&1 || true + sudo -u postgres psql -d "${DB_NAME}" -c "GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO ${DB_USER};" > /dev/null 2>&1 || true + sudo -u postgres psql -d "${DB_NAME}" -c "ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON TABLES TO ${DB_USER};" > /dev/null 2>&1 || true + sudo -u postgres psql -d "${DB_NAME}" -c "ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON SEQUENCES TO ${DB_USER};" > /dev/null 2>&1 || true + + # Ejecutar init_db.py de forma idempotente para verificar roles y migraciones incrementales + info "Validando coherencia de modelos con init_db.py..." + LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 PYTHONUTF8=1 PYTHONIOENCODING=utf-8 \ + FLASK_APP=wsgi.py "${VENV_DIR}/bin/python" -X utf8 init_db.py > /dev/null 2>&1 || true + ok "Base de datos sincronizada y verificada" +else + info "No se encontró classrooms_db.sql. Creando esquema desde cero con init_db.py..." + LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 PYTHONUTF8=1 PYTHONIOENCODING=utf-8 \ + FLASK_APP=wsgi.py "${VENV_DIR}/bin/python" -X utf8 init_db.py + ok "Esquema, roles RBAC, edificios y usuario admin creados" fi cd - > /dev/null -# ─── 9. Usuario del sistema ───────────────────────────────────────────────────── -hdr "9. Configurando usuario del sistema" +# ─── 9. Usuario del Sistema y Permisos de Directorio ─────────────────────────── +hdr "9. Configurando permisos y usuario de ejecución del sistema" if id "$APP_USER" &>/dev/null; then - warn "El usuario '${APP_USER}' ya existe — se omite" + info "El usuario de sistema '${APP_USER}' ya existe." else useradd --system --no-create-home --shell /usr/sbin/nologin "$APP_USER" ok "Usuario de sistema '${APP_USER}' creado (sin shell)" @@ -240,10 +268,11 @@ chmod 640 "$APP_ENV" mkdir -p "$LOG_DIR" chown -R "${APP_USER}:${APP_USER}" "$LOG_DIR" -ok "Permisos aplicados en ${APP_DIR}" +chmod 750 "$LOG_DIR" +ok "Permisos de seguridad aplicados en ${APP_DIR} y ${LOG_DIR}" -# ─── 10. Servicio systemd ─────────────────────────────────────────────────────── -hdr "10. Configurando servicio systemd" +# ─── 10. Servicio Systemd (Gunicorn de Producción) ───────────────────────────── +hdr "10. Configurando servicio systemd de arranque automático" GUNICORN_BIN="${VENV_DIR}/bin/gunicorn" @@ -288,41 +317,42 @@ SVCEOF systemctl daemon-reload systemctl enable "${SERVICE_NAME}" > /dev/null 2>&1 -systemctl start "${SERVICE_NAME}" +systemctl restart "${SERVICE_NAME}" sleep 3 if systemctl is-active --quiet "$SERVICE_NAME"; then - ok "Servicio '${SERVICE_NAME}' corriendo y habilitado al inicio" + ok "Servicio '${SERVICE_NAME}' activo y en ejecución" else - warn "El servicio no inició correctamente. Revisá los logs:" - warn " journalctl -u ${SERVICE_NAME} -n 60 --no-pager" + warn "El servicio tardó en arrancar. Podés revisar los logs con:" + warn " journalctl -u ${SERVICE_NAME} -n 50 --no-pager" fi -# ─── Resumen final ────────────────────────────────────────────────────────────── -hdr "Instalación completada" +# ─── Resumen Final y Datos de Acceso ────────────────────────────────────────── +hdr "¡Despliegue Completado con Éxito!" -IP=$(hostname -I | awk '{print $1}') +IP=$(hostname -I 2>/dev/null | awk '{print $1}' || echo "127.0.0.1") -echo -e " ${BOLD}URL de la aplicación:${RESET}" -echo -e " ${CYAN}http://${IP}:5000${RESET}" +echo -e " ${BOLD}Acceso Web a la Aplicación:${RESET}" +echo -e " ${CYAN}http://${IP}:5000${RESET} o ${CYAN}http://localhost:5000${RESET}" echo "" -echo -e " ${BOLD}Credenciales por defecto:${RESET}" +echo -e " ${BOLD}Credenciales Iniciales de Administrador:${RESET}" echo -e " Email: ${CYAN}admin@edu-space.com${RESET}" echo -e " Password: ${CYAN}admin123${RESET}" echo "" -echo -e " ${BOLD}Base de datos:${RESET}" -echo -e " Host: localhost:5432" +echo -e " ${BOLD}Base de Datos Desplegada:${RESET}" +echo -e " Motor: PostgreSQL (${PG_VER})" echo -e " Base: ${DB_NAME}" echo -e " Usuario: ${DB_USER}" +echo -e " Snapshot: $( [ -f "$SQL_BACKUP_FILE" ] && echo "Restaurada desde classrooms_db.sql" || echo "Inicializada limpia" )" echo "" -echo -e " ${BOLD}Comandos de gestión:${RESET}" +echo -e " ${BOLD}Comandos de Gestión del Servicio:${RESET}" echo -e " Estado: ${CYAN}systemctl status ${SERVICE_NAME}${RESET}" echo -e " Logs: ${CYAN}journalctl -u ${SERVICE_NAME} -f${RESET}" echo -e " Reiniciar: ${CYAN}systemctl restart ${SERVICE_NAME}${RESET}" echo -e " Detener: ${CYAN}systemctl stop ${SERVICE_NAME}${RESET}" echo "" -warn "Cambiá la contraseña del admin desde la interfaz web." -warn "Los archivos .env contienen credenciales sensibles — NO los incluyas en git." +echo -e " ${BOLD}Generar Nuevos Backups:${RESET}" +echo -e " ${CYAN}bash backup_db.sh${RESET}" echo "" -ok "¡Listo! La aplicación está corriendo en http://${IP}:5000" +ok "Despliegue finalizado. El sistema se encuentra 100% operativo." echo "" diff --git a/requirements.txt b/requirements.txt index 163a9da..40c0a55 100644 --- a/requirements.txt +++ b/requirements.txt @@ -16,3 +16,4 @@ Pillow>=10.4.0 email_validator>=2.0.0 psycopg2-binary>=2.9.10 Babel==2.14.0 +gunicorn>=21.2.0