<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250827185534 extends AbstractMigration
{
public function getDescription(): string
{
return 'Crear tablas tramite_drupal y pasos_tramite_drupal';
}
public function up(Schema $schema): void
{
// Crear tabla tramite_drupal
$this->addSql('CREATE TABLE tramite_drupal (
id INT AUTO_INCREMENT NOT NULL,
drupal_id VARCHAR(50) NOT NULL UNIQUE,
title VARCHAR(255) DEFAULT NULL,
url TEXT DEFAULT NULL,
status VARCHAR(10) DEFAULT NULL,
descripcion TEXT DEFAULT NULL,
areas_title VARCHAR(255) DEFAULT NULL,
areas_url TEXT DEFAULT NULL,
organismos_descripcion TEXT DEFAULT NULL,
requisitos_titulo VARCHAR(255) DEFAULT NULL,
requisitos_subtitulo VARCHAR(255) DEFAULT NULL,
requisitos_descripcion TEXT DEFAULT NULL,
costos_titulo VARCHAR(255) DEFAULT NULL,
costos_name VARCHAR(255) DEFAULT NULL,
costos_price DECIMAL(10,2) DEFAULT NULL,
informacion_adicional_descripcion TEXT DEFAULT NULL,
sector_economico VARCHAR(100) DEFAULT NULL,
tramite_modalidad_online TINYINT(1) DEFAULT NULL,
tramite_modalidad_presencial TinyINT(1) DEFAULT NULL,
activo TINYINT(1) NOT NULL DEFAULT 1,
created_at DATETIME NOT NULL,
updated_at DATETIME NOT NULL,
deleted_at DATETIME DEFAULT NULL,
PRIMARY KEY(id),
INDEX IDX_DRUPAL_ID (drupal_id),
INDEX IDX_SECTOR_ECONOMICO (sector_economico),
INDEX IDX_ACTIVO (activo),
INDEX IDX_DELETED_AT (deleted_at)
) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
// Crear tabla pasos_tramite_drupal
$this->addSql('CREATE TABLE pasos_tramite_drupal (
id INT AUTO_INCREMENT NOT NULL,
tramite_drupal_id INT NOT NULL,
title VARCHAR(255) DEFAULT NULL,
descripcion TEXT DEFAULT NULL,
link_uri TEXT DEFAULT NULL,
link_title VARCHAR(255) DEFAULT NULL,
orden INT NOT NULL,
activo TINYINT(1) NOT NULL DEFAULT 1,
created_at DATETIME NOT NULL,
updated_at DATETIME NOT NULL,
deleted_at DATETIME DEFAULT NULL,
PRIMARY KEY(id),
INDEX IDX_TRAMITE_DRUPAL (tramite_drupal_id),
INDEX IDX_ORDEN (orden),
INDEX IDX_ACTIVO (activo),
INDEX IDX_DELETED_AT (deleted_at),
CONSTRAINT FK_PASOS_TRAMITE_DRUPAL FOREIGN KEY (tramite_drupal_id) REFERENCES tramite_drupal (id) ON DELETE CASCADE
) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
}
public function down(Schema $schema): void
{
// Eliminar tabla pasos_tramite_drupal primero por la foreign key
$this->addSql('DROP TABLE pasos_tramite_drupal');
// Eliminar tabla tramite_drupal
$this->addSql('DROP TABLE tramite_drupal');
}
}