Files
whatsapp/migrations/20260304_lab_config_doc_headers.php
2026-03-10 18:42:51 -05:00

51 lines
1.9 KiB
PHP

<?php
require_once __DIR__ . '/../config/config.php';
$db = Database::getInstance();
// ── 1. Tabla lab_config ───────────────────────────────────────────────
$db->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";