-- RGPD (art.º 15.º/17.º): pedidos de acesso e de apagamento de dados pessoais. -- O visitante submete um pedido na Política de Privacidade; fica aqui (o email -- está desligado, por isso o pedido é guardado, como as leads). O backoffice -- processa: acesso = exportar os dados; apagamento = anonimizar. CREATE TABLE IF NOT EXISTS `rgpd_requests` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `gym_id` INT NOT NULL DEFAULT 0, `email` VARCHAR(190) NOT NULL, `request_type` ENUM('acesso','apagamento') NOT NULL, `message` TEXT NULL, `status` ENUM('novo','concluido') NOT NULL DEFAULT 'novo', `consent` TINYINT(1) NOT NULL DEFAULT 0, `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, `processed_at` DATETIME NULL DEFAULT NULL, `processed_by` INT UNSIGNED NULL DEFAULT NULL, `deleted_at` DATETIME NULL DEFAULT NULL, `deleted_by` INT UNSIGNED NULL DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_rgpd_requests_status` (`status`, `created_at`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;