query('CREATE TABLE IF NOT EXISTS lab_config ( clave VARCHAR(80) NOT NULL PRIMARY KEY, valor LONGTEXT NOT NULL DEFAULT "", updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4'); echo "tabla lab_config OK\n"; // Valores iniciales $defaults = [ ['empresa_nombre', 'Laboratorio Clínico Ximena'], ['empresa_subtitulo', 'Análisis Clínicos'], ['empresa_direccion', ''], ['empresa_telefono', ''], ['empresa_email', ''], ['empresa_ciudad', ''], ['doc_color', '#1565c0'], ['doc_logo_base64', ''], ['doc_pie_pagina', 'Documento generado digitalmente. Verifique su autenticidad en el sistema.'], ]; foreach ($defaults as [$k, $v]) { $db->query('INSERT IGNORE INTO lab_config(clave, valor) VALUES(?, ?)', [$k, $v]); } echo count($defaults) . " valores iniciales insertados (IGNORE)\n"; // ── 2. Columnas nuevas en lab_formularios ───────────────────────────── $cols = [ 'doc_encabezado VARCHAR(200) NULL DEFAULT NULL', 'doc_subtitulo VARCHAR(200) NULL DEFAULT NULL', 'doc_logo_base64 LONGTEXT NULL DEFAULT NULL', 'doc_color VARCHAR(20) NULL DEFAULT NULL', 'doc_pie_pagina VARCHAR(500) NULL DEFAULT NULL', ]; foreach ($cols as $def) { $name = explode(' ', trim($def))[0]; $exists = $db->fetchAll("SHOW COLUMNS FROM lab_formularios WHERE Field = '$name'"); if (!$exists) { $db->query("ALTER TABLE lab_formularios ADD COLUMN $def"); echo "Columna agregada: $name\n"; } else { echo "Ya existía: $name\n"; } } echo "\nMigración completada OK\n";