migrations/Version20251007201048.php line 1

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace DoctrineMigrations;
  4. use App\Utils\CommonFunctions;
  5. use Doctrine\DBAL\Schema\Schema;
  6. use Doctrine\Migrations\AbstractMigration;
  7. /**
  8.  * Auto-generated Migration: Please modify to your needs!
  9.  */
  10. final class Version20251007201048 extends AbstractMigration
  11. {
  12.     public function getDescription(): string
  13.     {
  14.         return '';
  15.     }
  16.     public function up(Schema $schema): void
  17.     {
  18.         // Crear tabla configuracion_solr
  19.         $this->addSql('CREATE TABLE configuracion_solr (
  20.             id INT AUTO_INCREMENT NOT NULL,
  21.             nombre VARCHAR(255) NOT NULL,
  22.             campos_retorno TEXT DEFAULT NULL COMMENT \'Campos de retorno Solr (fl)\',
  23.             campos_busqueda TEXT DEFAULT NULL COMMENT \'Campos de búsqueda con pesos (qf)\',
  24.             operador_query VARCHAR(10) DEFAULT NULL COMMENT \'Operador de query (q.op): OR, AND\',
  25.             filtros TEXT DEFAULT NULL COMMENT \'Filtros adicionales (fq)\',
  26.             resultados_por_pagina INT DEFAULT NULL COMMENT \'Número de resultados por página\',
  27.             highlighting_tag_pre VARCHAR(50) DEFAULT NULL COMMENT \'Tag de apertura para highlighting\',
  28.             highlighting_tag_post VARCHAR(50) DEFAULT NULL COMMENT \'Tag de cierre para highlighting\',
  29.             highlighting_fragmento_size INT DEFAULT NULL COMMENT \'Tamaño del fragmento de highlighting\',
  30.             highlighting_campos TEXT DEFAULT NULL COMMENT \'Campos para highlighting (hl.fl)\',
  31.             def_type VARCHAR(50) DEFAULT NULL COMMENT \'DefType de Solr (edismax, dismax, lucene)\',
  32.             indent TINYINT(1) DEFAULT 0 NOT NULL COMMENT \'Formatear respuesta JSON\',
  33.             activo TINYINT(1) DEFAULT 0 NOT NULL COMMENT \'Configuración activa\',
  34.             descripcion TEXT DEFAULT NULL COMMENT \'Descripción de la configuración\',
  35.             created_at DATETIME NOT NULL,
  36.             updated_at DATETIME NOT NULL,
  37.             PRIMARY KEY(id),
  38.             INDEX IDX_ACTIVO (activo),
  39.             INDEX IDX_UPDATED_AT (updated_at)
  40.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  41.         // Insertar configuración por defecto
  42.         $this->addSql(CommonFunctions::getFile(__DIR__ '/Data/insert_configuracion_solr.sql'));
  43.     }
  44.     public function down(Schema $schema): void
  45.     {
  46.         // Rollback: eliminar tabla
  47.         $this->addSql('DROP TABLE configuracion_solr');
  48.     }
  49. }