Setup completo del portal interno donna.aal-law.com: * Landing público con OAuth login + grid de apps autenticado * Flujo OAuth2 contra Mailcow (mail.aal-law.com) * Sesiones SSO compartidas en el dominio (cookie donna_session, 8h) * Whitelist de dominios aal-law.com / aalnlaw.com * App "Control de Escrituras" migrada desde ZH-Consultores/control-escrituras (mismo schema, mismo frontend, ahora con shared Auth/Db/Config libs) * Migraciones SQL para users, escrituras_tramites, escrituras_historial * Caddy on :80 con rewrite extless → .php * Backup diario MariaDB (systemd timer + script) con retención 14d * Documentación de arquitectura en README + infra files en docs/infra
52 lines
2.4 KiB
SQL
52 lines
2.4 KiB
SQL
-- ============================================================
|
|
-- Donna Portal — Schema 002: Control de Escrituras
|
|
-- (migrado del repo ZH-Consultores/control-escrituras)
|
|
-- ============================================================
|
|
|
|
CREATE TABLE IF NOT EXISTS escrituras_tramites (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
tramite VARCHAR(255) NOT NULL DEFAULT '',
|
|
cliente VARCHAR(255) NOT NULL DEFAULT '',
|
|
abogado VARCHAR(100) NOT NULL DEFAULT '',
|
|
notaria VARCHAR(100) NOT NULL DEFAULT '',
|
|
inscribe ENUM('Sí','No') NOT NULL DEFAULT 'Sí',
|
|
altera_turno ENUM('Sí','No') NOT NULL DEFAULT 'No',
|
|
instrucciones TEXT NOT NULL,
|
|
fecha_solicitud DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
estatus ENUM(
|
|
'Solicitado',
|
|
'Recibido',
|
|
'En Proceso',
|
|
'Protocolizado',
|
|
'En Registro',
|
|
'Inscrito'
|
|
) NOT NULL DEFAULT 'Solicitado',
|
|
ultima_actualizacion DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
ON UPDATE CURRENT_TIMESTAMP,
|
|
observaciones TEXT NOT NULL,
|
|
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
creado_por VARCHAR(255) NOT NULL DEFAULT '',
|
|
actualizado_por VARCHAR(255) NOT NULL DEFAULT '',
|
|
|
|
INDEX idx_estatus (estatus),
|
|
INDEX idx_abogado (abogado),
|
|
INDEX idx_inscribe (inscribe),
|
|
INDEX idx_altera (altera_turno),
|
|
INDEX idx_fecha (fecha_solicitud DESC)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
|
|
|
CREATE TABLE IF NOT EXISTS escrituras_historial (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
tramite_id INT NOT NULL,
|
|
modificado_por VARCHAR(255) NOT NULL DEFAULT '',
|
|
modificado_en DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
campo VARCHAR(100) NOT NULL DEFAULT '',
|
|
valor_anterior TEXT NOT NULL,
|
|
valor_nuevo TEXT NOT NULL,
|
|
|
|
INDEX idx_tramite (tramite_id),
|
|
INDEX idx_fecha (modificado_en DESC),
|
|
CONSTRAINT fk_escrituras_historial_tramite
|
|
FOREIGN KEY (tramite_id) REFERENCES escrituras_tramites(id) ON DELETE CASCADE
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|