<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use App\Utils\CommonFunctions;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20251007201048 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// Crear tabla configuracion_solr
$this->addSql('CREATE TABLE configuracion_solr (
id INT AUTO_INCREMENT NOT NULL,
nombre VARCHAR(255) NOT NULL,
campos_retorno TEXT DEFAULT NULL COMMENT \'Campos de retorno Solr (fl)\',
campos_busqueda TEXT DEFAULT NULL COMMENT \'Campos de búsqueda con pesos (qf)\',
operador_query VARCHAR(10) DEFAULT NULL COMMENT \'Operador de query (q.op): OR, AND\',
filtros TEXT DEFAULT NULL COMMENT \'Filtros adicionales (fq)\',
resultados_por_pagina INT DEFAULT NULL COMMENT \'Número de resultados por página\',
highlighting_tag_pre VARCHAR(50) DEFAULT NULL COMMENT \'Tag de apertura para highlighting\',
highlighting_tag_post VARCHAR(50) DEFAULT NULL COMMENT \'Tag de cierre para highlighting\',
highlighting_fragmento_size INT DEFAULT NULL COMMENT \'Tamaño del fragmento de highlighting\',
highlighting_campos TEXT DEFAULT NULL COMMENT \'Campos para highlighting (hl.fl)\',
def_type VARCHAR(50) DEFAULT NULL COMMENT \'DefType de Solr (edismax, dismax, lucene)\',
indent TINYINT(1) DEFAULT 0 NOT NULL COMMENT \'Formatear respuesta JSON\',
activo TINYINT(1) DEFAULT 0 NOT NULL COMMENT \'Configuración activa\',
descripcion TEXT DEFAULT NULL COMMENT \'Descripción de la configuración\',
created_at DATETIME NOT NULL,
updated_at DATETIME NOT NULL,
PRIMARY KEY(id),
INDEX IDX_ACTIVO (activo),
INDEX IDX_UPDATED_AT (updated_at)
) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
// Insertar configuración por defecto
$this->addSql(CommonFunctions::getFile(__DIR__ . '/Data/insert_configuracion_solr.sql'));
}
public function down(Schema $schema): void
{
// Rollback: eliminar tabla
$this->addSql('DROP TABLE configuracion_solr');
}
}