# Módulo de Colegiación Web — COGITI Cádiz

Implementación del portal web de captura de solicitudes de nuevas altas colegiales (Ordinaria, Bonificada y Traslados) para el Colegio Oficial de Graduados e Ingenieros Técnicos Industriales de Cádiz.

Se integra de forma bidireccional con **Intranet V2** (`intranet_v2`) mediante la base de datos remota MySQL (`cogiticadizweb`).

---

## 1. Estructura de Archivos en la Landing

- **`solicitud.php`**: Formulario público oficial con diseño responsive, protección CSRF y rate-limiting, validación algorítmica de DNI/NIE e IBAN español, captura de titulación oficial (Orden CIN/351/2009), modalidad profesional, mandato SEPA, firma digital en pantalla (Canvas) y subida protegida de adjuntos (DNI, Título, Foto, DARDE, Certificado de traslado).
- **`subsanar.php`**: Portal de subsanación para adjuntar documentación corregida tras requerimiento de Secretaría mediante código público de expediente.
- **`funciones.php`**: Lógica de dominio, estados, normalización de textos en mayúsculas sin tildes, inserciones transaccionales y notificaciones por correo con PHPMailer.
- **`README.md`**: Esta documentación técnica.
- **`../colegiacion.php`**: Página informativa de presentación colegial con enlace directo al formulario web de alta (el acceso a subsanación se gestiona de forma segura mediante enlace privado remitido por correo electrónico).

---

## 2. Flujo de Datos e Integración con `intranet_v2`

```
 [Solicitante en Web Pública]
       │
       ▼
 [solicitud.php]
       │
       ├─► Guarda adjuntos en `assets/adjuntos/colegiacion/<id>/`
       ├─► Inserta solicitud en MySQL `cogiticadizweb` (Estado: PRESENTADA)
       ├─► Notifica por email a Secretaría y envía confirmación al colegiado
       │
       ▼
 [INTRANET V2 (pages/colegiacion/)]
       │
       ├─► Sincronizador periódico / botón manual `sincronizar_web.php`
       ├─► Importa expediente a base local `intranet`
       ├─► Cotejo inteligente con Asistente IA (Gemini / OpenAI)
       ├─► Asignación de Registro de Entrada CPROF (E-X/YYYY)
       ├─► Aprobación en Acta de Junta de Gobierno
       ├─► Consolidación en PostgreSQL CPROF (`usuarios`, salida S-X/YYYY)
       └─► Carnet Colegial Digital y Credenciales de Acceso
```

---

## 3. Tablas de Base de Datos (`cogiticadizweb`)

1. **`colegiacion_solicitudes`**: Cabecera del expediente con código público de 32 hex, datos de filiación, contacto y residencia.
2. **`colegiacion_titulaciones`**: Titulación habilitante oficial (CIN/351/2009), universidad, escuela y código CSV.
3. **`colegiacion_datos_profesionales`**: Modalidad de ejercicio (asalariado, autónomo, funcionario, desempleado), bonificación y cuenta bancaria SEPA.
4. **`colegiacion_documentos`**: Metadatos de adjuntos (DNI, TITULO, FOTO, DARDE, MANDATO_SEPA, CERTIFICADO_TRASLADO, FIRMA).
5. **`colegiacion_eventos`**: Pista de auditoría cronológica de eventos y estados.
