<?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 Version20230111172023 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE estado_tramite (id INT AUTO_INCREMENT NOT NULL, nombre VARCHAR(255) NOT NULL, codigo VARCHAR(255) NOT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE licencia_conducir (id INT AUTO_INCREMENT NOT NULL, tipo_vehiculo_id INT DEFAULT NULL, clase VARCHAR(255) NOT NULL, descripcion VARCHAR(255) NOT NULL, edad INT DEFAULT NULL, licencias_anteriores VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, deleted_at DATETIME DEFAULT NULL, INDEX IDX_E20963FD10D3FB8D (tipo_vehiculo_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE map_estado_tramite (id INT AUTO_INCREMENT NOT NULL, estado_tramite_id INT DEFAULT NULL, estado_map VARCHAR(255) NOT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, INDEX IDX_EE97393E3BB4B628 (estado_tramite_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE map_paso (id INT AUTO_INCREMENT NOT NULL, nombre VARCHAR(255) NOT NULL, codigo VARCHAR(255) NOT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE map_paso_tramite (id INT AUTO_INCREMENT NOT NULL, tramite_id INT DEFAULT NULL, map_paso_id INT DEFAULT NULL, estado_inicial VARCHAR(255) NOT NULL, orden INT NOT NULL, activo TINYINT(1) NOT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, INDEX IDX_460CE252820C2849 (tramite_id), INDEX IDX_460CE252D9B04A9E (map_paso_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE paso_tramite (id INT AUTO_INCREMENT NOT NULL, map_paso_id INT DEFAULT NULL, estado_tramite_id INT DEFAULT NULL, usuario_tramite_id INT DEFAULT NULL, uuid VARCHAR(255) NOT NULL, id_tramite_std VARCHAR(255) DEFAULT NULL, orden INT NOT NULL, data LONGTEXT DEFAULT NULL, clase_proceso VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, INDEX IDX_DE396FBCD9B04A9E (map_paso_id), INDEX IDX_DE396FBC3BB4B628 (estado_tramite_id), INDEX IDX_DE396FBC713C62EB (usuario_tramite_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE tipo_vehiculo (id INT AUTO_INCREMENT NOT NULL, nombre VARCHAR(255) NOT NULL, codigo VARCHAR(255) NOT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, deleted_at DATETIME DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE usuario_tramite (id INT AUTO_INCREMENT NOT NULL, usuario_miba_id INT DEFAULT NULL, tramite_id INT DEFAULT NULL, uuid VARCHAR(255) NOT NULL, estado VARCHAR(255) NOT NULL, porcentaje INT NOT NULL, data LONGTEXT DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, INDEX IDX_E6148562D8B8AEE7 (usuario_miba_id), INDEX IDX_E6148562820C2849 (tramite_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE licencia_conducir ADD CONSTRAINT FK_E20963FD10D3FB8D FOREIGN KEY (tipo_vehiculo_id) REFERENCES tipo_vehiculo (id)');
$this->addSql('ALTER TABLE map_estado_tramite ADD CONSTRAINT FK_EE97393E3BB4B628 FOREIGN KEY (estado_tramite_id) REFERENCES estado_tramite (id)');
$this->addSql('ALTER TABLE map_paso_tramite ADD CONSTRAINT FK_460CE252820C2849 FOREIGN KEY (tramite_id) REFERENCES tramite (id)');
$this->addSql('ALTER TABLE map_paso_tramite ADD CONSTRAINT FK_460CE252D9B04A9E FOREIGN KEY (map_paso_id) REFERENCES map_paso (id)');
$this->addSql('ALTER TABLE paso_tramite ADD CONSTRAINT FK_DE396FBCD9B04A9E FOREIGN KEY (map_paso_id) REFERENCES map_paso (id)');
$this->addSql('ALTER TABLE paso_tramite ADD CONSTRAINT FK_DE396FBC3BB4B628 FOREIGN KEY (estado_tramite_id) REFERENCES estado_tramite (id)');
$this->addSql('ALTER TABLE paso_tramite ADD CONSTRAINT FK_DE396FBC713C62EB FOREIGN KEY (usuario_tramite_id) REFERENCES usuario_tramite (id)');
$this->addSql('ALTER TABLE usuario_tramite ADD CONSTRAINT FK_E6148562D8B8AEE7 FOREIGN KEY (usuario_miba_id) REFERENCES usuario_miba (id)');
$this->addSql('ALTER TABLE usuario_tramite ADD CONSTRAINT FK_E6148562820C2849 FOREIGN KEY (tramite_id) REFERENCES tramite (id)');
$this->addSql('ALTER TABLE tramite ADD codigo VARCHAR(255) DEFAULT NULL');
$this->addSql('ALTER TABLE usuario_miba ADD fecha_nacimiento DATE DEFAULT NULL, ADD sexo VARCHAR(5) NOT NULL');
// Licencias
$this->addSql(CommonFunctions::getFile(__DIR__ . '/Data/LicenciasConducir/insert_licencias_conducir.sql'));
$this->addSql(CommonFunctions::getFile(__DIR__ . '/Data/LicenciasConducir/update_tramites.sql'));
$this->addSql(CommonFunctions::getFile(__DIR__ . '/Data/LicenciasConducir/insert_tramites_licencia_conducir.sql'));
$this->addSql(CommonFunctions::getFile(__DIR__ . '/Data/TramitesServicios/insert_estados_tramites.sql'));
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE map_estado_tramite DROP FOREIGN KEY FK_EE97393E3BB4B628');
$this->addSql('ALTER TABLE paso_tramite DROP FOREIGN KEY FK_DE396FBC3BB4B628');
$this->addSql('ALTER TABLE map_paso_tramite DROP FOREIGN KEY FK_460CE252D9B04A9E');
$this->addSql('ALTER TABLE paso_tramite DROP FOREIGN KEY FK_DE396FBCD9B04A9E');
$this->addSql('ALTER TABLE licencia_conducir DROP FOREIGN KEY FK_E20963FD10D3FB8D');
$this->addSql('ALTER TABLE paso_tramite DROP FOREIGN KEY FK_DE396FBC713C62EB');
$this->addSql('DROP TABLE estado_tramite');
$this->addSql('DROP TABLE licencia_conducir');
$this->addSql('DROP TABLE map_estado_tramite');
$this->addSql('DROP TABLE map_paso');
$this->addSql('DROP TABLE map_paso_tramite');
$this->addSql('DROP TABLE paso_tramite');
$this->addSql('DROP TABLE tipo_vehiculo');
$this->addSql('DROP TABLE usuario_tramite');
$this->addSql('ALTER TABLE tramite DROP codigo');
$this->addSql('ALTER TABLE usuario_miba DROP fecha_nacimiento, DROP sexo');
}
}