migrations/Version20260318160119.php line 1

  1. <?php
  2. declare(strict_types=1);
  3. namespace DoctrineMigrations;
  4. use Doctrine\DBAL\Schema\Schema;
  5. use Doctrine\Migrations\AbstractMigration;
  6. /**
  7.  * Auto-generated Migration: Please modify to your needs!
  8.  */
  9. final class Version20260318160119 extends AbstractMigration
  10. {
  11.     public function getDescription(): string
  12.     {
  13.         return '';
  14.     }
  15.     public function up(Schema $schema): void
  16.     {
  17.         // this up() migration is auto-generated, please modify it to your needs
  18.         $this->abortIf(
  19.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  20.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  21.         );
  22.         $this->addSql('CREATE TABLE app_contact (
  23.           id INT AUTO_INCREMENT NOT NULL,
  24.           full_name VARCHAR(255) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  25.           email VARCHAR(255) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  26.           object VARCHAR(255) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  27.           message LONGTEXT CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  28.           phone VARCHAR(255) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  29.           is_read TINYINT(1) NOT NULL,
  30.           deleted TINYINT(1) NOT NULL,
  31.           sended_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\',
  32.           is_answered TINYINT(1) NOT NULL,
  33.           PRIMARY KEY(id)
  34.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  35.         $this->abortIf(
  36.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  37.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  38.         );
  39.         $this->addSql('CREATE TABLE app_faq (
  40.           id INT AUTO_INCREMENT NOT NULL,
  41.           question VARCHAR(500) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  42.           answer LONGTEXT CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  43.           deleted TINYINT(1) NOT NULL,
  44.           valid TINYINT(1) NOT NULL,
  45.           PRIMARY KEY(id)
  46.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  47.         $this->abortIf(
  48.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  49.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  50.         );
  51.         $this->addSql('CREATE TABLE attendance (
  52.           id INT AUTO_INCREMENT NOT NULL,
  53.           event_id_id INT NOT NULL,
  54.           creator_user_id_id INT DEFAULT NULL,
  55.           registration_id INT DEFAULT NULL,
  56.           dni VARCHAR(50) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  57.           event_ext_code VARCHAR(50) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  58.           method VARCHAR(10) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  59.           created DATETIME NOT NULL,
  60.           updated DATETIME NOT NULL,
  61.           checkin_time DATETIME NOT NULL,
  62.           qr_code VARCHAR(50) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  63.           INDEX IDX_6DE30D91E5784294 (creator_user_id_id),
  64.           INDEX IDX_6DE30D913E5F2F7B (event_id_id),
  65.           INDEX IDX_6DE30D91833D8F43 (registration_id),
  66.           PRIMARY KEY(id)
  67.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  68.         $this->abortIf(
  69.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  70.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  71.         );
  72.         $this->addSql('CREATE TABLE centers (
  73.           id INT AUTO_INCREMENT NOT NULL,
  74.           name VARCHAR(255) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  75.           address VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  76.           phone VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  77.           mail VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  78.           created DATETIME NOT NULL,
  79.           updated DATETIME NOT NULL,
  80.           PRIMARY KEY(id)
  81.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  82.         $this->abortIf(
  83.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  84.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  85.         );
  86.         $this->addSql('CREATE TABLE event_request (
  87.           id INT AUTO_INCREMENT NOT NULL,
  88.           event_id INT NOT NULL,
  89.           user_id INT NOT NULL,
  90.           status VARCHAR(20) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  91.           observations LONGTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  92.           requested_at DATETIME NOT NULL,
  93.           INDEX IDX_BEC02630A76ED395 (user_id),
  94.           INDEX IDX_BEC0263071F7E88B (event_id),
  95.           PRIMARY KEY(id)
  96.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  97.         $this->abortIf(
  98.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  99.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  100.         );
  101.         $this->addSql('CREATE TABLE events (
  102.           id INT AUTO_INCREMENT NOT NULL,
  103.           center_id INT DEFAULT NULL,
  104.           manager_user_id INT DEFAULT NULL,
  105.           modality_id INT DEFAULT NULL,
  106.           name VARCHAR(255) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  107.           ext_code VARCHAR(255) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  108.           start_date DATE NOT NULL,
  109.           end_date DATE NOT NULL,
  110.           start_time TIME DEFAULT NULL,
  111.           end_time TIME DEFAULT NULL,
  112.           max_registrations INT DEFAULT NULL,
  113.           created DATETIME NOT NULL,
  114.           updated DATETIME NOT NULL,
  115.           generation_qr TINYINT(1) DEFAULT NULL,
  116.           status VARCHAR(255) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  117.           hours INT DEFAULT NULL,
  118.           participants INT DEFAULT NULL,
  119.           target_groups VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  120.           target_admin VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  121.           total_days INT DEFAULT NULL,
  122.           shift INT DEFAULT NULL,
  123.           number_checkings INT DEFAULT NULL,
  124.           min_compliance DOUBLE PRECISION DEFAULT NULL,
  125.           image VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  126.           description LONGTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  127.           objetives LONGTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  128.           skills LONGTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  129.           contents LONGTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  130.           prerequisites LONGTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  131.           technical_requirements LONGTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  132.           date_and_time VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  133.           location VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  134.           published TINYINT(1) NOT NULL,
  135.           inscripciones_inicio DATE DEFAULT NULL,
  136.           inscripciones_fin DATE DEFAULT NULL,
  137.           planned_materials LONGTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  138.           internal_observations LONGTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  139.           control_asistencias TINYINT(1) DEFAULT 1 NOT NULL,
  140.           cuestionario_conocimiento TINYINT(1) DEFAULT 0 NOT NULL,
  141.           actividades_practicas TINYINT(1) DEFAULT 0 NOT NULL,
  142.           evaluacion_certificacion_interna LONGTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  143.           INDEX IDX_5387574A5932F377 (center_id),
  144.           INDEX IDX_5387574A2D6D889B (modality_id),
  145.           INDEX IDX_5387574A19A3E683 (manager_user_id),
  146.           PRIMARY KEY(id)
  147.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  148.         $this->abortIf(
  149.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  150.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  151.         );
  152.         $this->addSql('CREATE TABLE events_taxonomy_value (
  153.           events_id INT NOT NULL,
  154.           taxonomy_value_id INT NOT NULL,
  155.           INDEX IDX_EDA70D9354C09375 (taxonomy_value_id),
  156.           INDEX IDX_EDA70D939D6A1065 (events_id),
  157.           PRIMARY KEY(events_id, taxonomy_value_id)
  158.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  159.         $this->abortIf(
  160.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  161.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  162.         );
  163.         $this->addSql('CREATE TABLE events_user (
  164.           events_id INT NOT NULL,
  165.           user_id INT NOT NULL,
  166.           INDEX IDX_E1C3D233A76ED395 (user_id),
  167.           INDEX IDX_E1C3D2339D6A1065 (events_id),
  168.           PRIMARY KEY(events_id, user_id)
  169.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  170.         $this->abortIf(
  171.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  172.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  173.         );
  174.         $this->addSql('CREATE TABLE home_slider (
  175.           id INT AUTO_INCREMENT NOT NULL,
  176.           event_id INT NOT NULL,
  177.           position INT NOT NULL,
  178.           enabled TINYINT(1) NOT NULL,
  179.           INDEX IDX_3FC379BA71F7E88B (event_id),
  180.           PRIMARY KEY(id)
  181.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  182.         $this->abortIf(
  183.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  184.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  185.         );
  186.         $this->addSql('CREATE TABLE logs (
  187.           id INT AUTO_INCREMENT NOT NULL,
  188.           level VARCHAR(50) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  189.           service VARCHAR(50) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  190.           message LONGTEXT CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  191.           created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\',
  192.           PRIMARY KEY(id)
  193.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  194.         $this->abortIf(
  195.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  196.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  197.         );
  198.         $this->addSql('CREATE TABLE messenger_messages (
  199.           id BIGINT AUTO_INCREMENT NOT NULL,
  200.           body LONGTEXT CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  201.           headers LONGTEXT CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  202.           queue_name VARCHAR(190) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  203.           created_at DATETIME NOT NULL,
  204.           available_at DATETIME NOT NULL,
  205.           delivered_at DATETIME DEFAULT NULL,
  206.           INDEX IDX_75EA56E016BA31DB (delivered_at),
  207.           INDEX IDX_75EA56E0FB7336F0 (queue_name),
  208.           INDEX IDX_75EA56E0E3BD61CE (available_at),
  209.           PRIMARY KEY(id)
  210.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  211.         $this->abortIf(
  212.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  213.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  214.         );
  215.         $this->addSql('CREATE TABLE params (
  216.           id INT AUTO_INCREMENT NOT NULL,
  217.           param VARCHAR(50) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  218.           value VARCHAR(254) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  219.           section INT NOT NULL,
  220.           info VARCHAR(1024) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  221.           UNIQUE INDEX UNIQ_8FCE0EF3A4FA7C89 (param),
  222.           PRIMARY KEY(id)
  223.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  224.         $this->abortIf(
  225.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  226.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  227.         );
  228.         $this->addSql('CREATE TABLE penalty_reason (
  229.           id INT AUTO_INCREMENT NOT NULL,
  230.           code VARCHAR(64) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  231.           label VARCHAR(255) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  232.           is_penalizable TINYINT(1) DEFAULT 0 NOT NULL,
  233.           duration_months INT DEFAULT NULL,
  234.           is_active TINYINT(1) DEFAULT 1 NOT NULL,
  235.           sort_order INT DEFAULT 0 NOT NULL,
  236.           created_at DATETIME NOT NULL,
  237.           updated_at DATETIME NOT NULL,
  238.           UNIQUE INDEX UNIQ_PENALTY_REASON_CODE (code),
  239.           INDEX IDX_PENALTY_REASON_SORT (sort_order),
  240.           INDEX IDX_PENALTY_REASON_ACTIVE (is_active),
  241.           PRIMARY KEY(id)
  242.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  243.         $this->abortIf(
  244.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  245.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  246.         );
  247.         $this->addSql('CREATE TABLE registration_qualifications (
  248.           id INT AUTO_INCREMENT NOT NULL,
  249.           event_id INT NOT NULL,
  250.           registration_id INT NOT NULL,
  251.           calificado_por_id INT DEFAULT NULL,
  252.           penalty_reason_id INT DEFAULT NULL,
  253.           applied_user_penalty_id INT DEFAULT NULL,
  254.           tipo_calificacion VARCHAR(30) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  255.           calificacion VARCHAR(20) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  256.           observaciones LONGTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  257.           fecha_creacion DATETIME NOT NULL,
  258.           fecha_actualizacion DATETIME NOT NULL,
  259.           origen VARCHAR(30) CHARACTER SET utf8mb4 DEFAULT \'MANUAL\' NOT NULL COLLATE `utf8mb4_unicode_ci`,
  260.           ajustada_manualmente TINYINT(1) DEFAULT 0 NOT NULL,
  261.           tiene_penalizacion TINYINT(1) DEFAULT 0 NOT NULL,
  262.           motivo_penalizacion_tipo VARCHAR(64) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  263.           penalizacion_aplicada TINYINT(1) DEFAULT 0 NOT NULL,
  264.           INDEX IDX_40FBDC1E22A8D3AB (calificado_por_id),
  265.           INDEX IDX_REGISTRATION_QUALIFICATIONS_APPLIED_PENALTY (applied_user_penalty_id),
  266.           UNIQUE INDEX uniq_registration_tipo (
  267.             registration_id, tipo_calificacion
  268.           ),
  269.           INDEX IDX_40FBDC1E71F7E88B (event_id),
  270.           INDEX IDX_40FBDC1E833D8F43 (registration_id),
  271.           INDEX IDX_REGISTRATION_QUALIFICATION_PENALTY_REASON (penalty_reason_id),
  272.           PRIMARY KEY(id)
  273.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  274.         $this->abortIf(
  275.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  276.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  277.         );
  278.         $this->addSql('CREATE TABLE registrations (
  279.           id INT AUTO_INCREMENT NOT NULL,
  280.           user_id_id INT NOT NULL,
  281.           event_id_id INT NOT NULL,
  282.           qr_code VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  283.           manual_code VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  284.           created DATETIME NOT NULL,
  285.           updated DATETIME NOT NULL,
  286.           last_scanned DATETIME DEFAULT NULL,
  287.           valid TINYINT(1) NOT NULL,
  288.           method VARCHAR(10) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  289.           dni VARCHAR(10) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  290.           active TINYINT(1) DEFAULT 1 NOT NULL,
  291.           INDEX IDX_53DE51E73E5F2F7B (event_id_id),
  292.           INDEX IDX_53DE51E79D86650F (user_id_id),
  293.           PRIMARY KEY(id)
  294.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  295.         $this->abortIf(
  296.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  297.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  298.         );
  299.         $this->addSql('CREATE TABLE reset_password_request (
  300.           id INT AUTO_INCREMENT NOT NULL,
  301.           user_id INT DEFAULT NULL,
  302.           selector VARCHAR(20) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  303.           hashed_token VARCHAR(100) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  304.           requested_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\',
  305.           expires_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\',
  306.           INDEX IDX_7CE748AA76ED395 (user_id),
  307.           PRIMARY KEY(id)
  308.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  309.         $this->abortIf(
  310.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  311.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  312.         );
  313.         $this->addSql('CREATE TABLE role (
  314.           id INT AUTO_INCREMENT NOT NULL,
  315.           role_name VARCHAR(100) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  316.           libelle VARCHAR(100) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  317.           PRIMARY KEY(id)
  318.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  319.         $this->abortIf(
  320.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  321.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  322.         );
  323.         $this->addSql('CREATE TABLE taxonomy (
  324.           id INT AUTO_INCREMENT NOT NULL,
  325.           name VARCHAR(255) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  326.           description VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  327.           PRIMARY KEY(id)
  328.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  329.         $this->abortIf(
  330.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  331.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  332.         );
  333.         $this->addSql('CREATE TABLE taxonomy_value (
  334.           id INT AUTO_INCREMENT NOT NULL,
  335.           taxonomy_id INT NOT NULL,
  336.           code VARCHAR(255) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  337.           label VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  338.           INDEX IDX_48109C999557E6F6 (taxonomy_id),
  339.           PRIMARY KEY(id)
  340.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  341.         $this->abortIf(
  342.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  343.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  344.         );
  345.         $this->addSql('CREATE TABLE user (
  346.           id INT AUTO_INCREMENT NOT NULL,
  347.           management_center_id INT DEFAULT NULL,
  348.           username VARCHAR(180) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  349.           roles JSON NOT NULL,
  350.           nom_complet VARCHAR(50) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  351.           dni VARCHAR(10) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  352.           address VARCHAR(250) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  353.           phone VARCHAR(50) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  354.           notes VARCHAR(50) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  355.           email VARCHAR(100) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  356.           valid TINYINT(1) NOT NULL,
  357.           deleted TINYINT(1) NOT NULL,
  358.           password VARCHAR(255) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  359.           admin TINYINT(1) NOT NULL,
  360.           surname VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  361.           custom_filter_year VARCHAR(12) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  362.           activation_token VARCHAR(64) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  363.           active TINYINT(1) NOT NULL,
  364.           UNIQUE INDEX UNIQ_8D93D649F85E0677 (username),
  365.           UNIQUE INDEX UNIQ_8D93D649E7927C74 (email),
  366.           UNIQUE INDEX UNIQ_8D93D6497F8F253B (dni),
  367.           INDEX IDX_USER_MANAGEMENT_CENTER (management_center_id),
  368.           PRIMARY KEY(id)
  369.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  370.         $this->abortIf(
  371.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  372.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  373.         );
  374.         $this->addSql('CREATE TABLE user_penalty (
  375.           id INT AUTO_INCREMENT NOT NULL,
  376.           user_id INT NOT NULL,
  377.           penalty_reason_id INT DEFAULT NULL,
  378.           reason LONGTEXT CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  379.           start_date DATE NOT NULL,
  380.           end_date DATE DEFAULT NULL,
  381.           created_at DATETIME NOT NULL,
  382.           active TINYINT(1) NOT NULL,
  383.           reason_type VARCHAR(64) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  384.           INDEX IDX_USER_PENALTY_REASON (penalty_reason_id),
  385.           INDEX IDX_F7EF91D2A76ED395 (user_id),
  386.           PRIMARY KEY(id)
  387.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  388.         $this->abortIf(
  389.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  390.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  391.         );
  392.         $this->addSql('CREATE TABLE user_profile (
  393.           id INT AUTO_INCREMENT NOT NULL,
  394.           user_id INT NOT NULL,
  395.           centro_trabajo_id INT DEFAULT NULL,
  396.           puesto_trabajo_id INT DEFAULT NULL,
  397.           especialidad_id INT DEFAULT NULL,
  398.           grupo_id INT DEFAULT NULL,
  399.           situacion_laboral_id INT DEFAULT NULL,
  400.           fecha_nacimiento DATE NOT NULL,
  401.           sexo VARCHAR(10) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  402.           codigo_postal VARCHAR(10) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  403.           provincia VARCHAR(100) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  404.           municipio VARCHAR(100) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  405.           telefono VARCHAR(20) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  406.           nombre VARCHAR(100) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  407.           apellido1 VARCHAR(100) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  408.           apellido2 VARCHAR(100) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`,
  409.           tipo_via VARCHAR(50) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  410.           nombre_via VARCHAR(150) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  411.           numero_via VARCHAR(10) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  412.           portal VARCHAR(10) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  413.           bloque VARCHAR(10) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  414.           escalera VARCHAR(10) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  415.           planta VARCHAR(10) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  416.           puerta VARCHAR(10) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  417.           tipo_formador VARCHAR(30) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  418.           entidad_externa VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  419.           cif_entidad_externa VARCHAR(20) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  420.           direccion_entidad_externa VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  421.           contacto_entidad_externa VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`,
  422.           UNIQUE INDEX UNIQ_D95AB405A76ED395 (user_id),
  423.           INDEX IDX_D95AB405EFEE8B82 (puesto_trabajo_id),
  424.           INDEX IDX_D95AB4059C833003 (grupo_id),
  425.           INDEX IDX_D95AB40556DEA406 (centro_trabajo_id),
  426.           INDEX IDX_D95AB40516A490EC (especialidad_id),
  427.           INDEX IDX_D95AB4058577D28 (situacion_laboral_id),
  428.           PRIMARY KEY(id)
  429.         ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\'');
  430.     }
  431.     public function down(Schema $schema): void
  432.     {
  433.         // this down() migration is auto-generated, please modify it to your needs
  434.         $this->abortIf(
  435.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  436.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  437.         );
  438.         $this->addSql('DROP TABLE app_contact');
  439.         $this->abortIf(
  440.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  441.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  442.         );
  443.         $this->addSql('DROP TABLE app_faq');
  444.         $this->abortIf(
  445.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  446.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  447.         );
  448.         $this->addSql('DROP TABLE attendance');
  449.         $this->abortIf(
  450.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  451.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  452.         );
  453.         $this->addSql('DROP TABLE centers');
  454.         $this->abortIf(
  455.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  456.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  457.         );
  458.         $this->addSql('DROP TABLE event_request');
  459.         $this->abortIf(
  460.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  461.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  462.         );
  463.         $this->addSql('DROP TABLE events');
  464.         $this->abortIf(
  465.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  466.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  467.         );
  468.         $this->addSql('DROP TABLE events_taxonomy_value');
  469.         $this->abortIf(
  470.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  471.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  472.         );
  473.         $this->addSql('DROP TABLE events_user');
  474.         $this->abortIf(
  475.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  476.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  477.         );
  478.         $this->addSql('DROP TABLE home_slider');
  479.         $this->abortIf(
  480.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  481.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  482.         );
  483.         $this->addSql('DROP TABLE logs');
  484.         $this->abortIf(
  485.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  486.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  487.         );
  488.         $this->addSql('DROP TABLE messenger_messages');
  489.         $this->abortIf(
  490.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  491.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  492.         );
  493.         $this->addSql('DROP TABLE params');
  494.         $this->abortIf(
  495.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  496.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  497.         );
  498.         $this->addSql('DROP TABLE penalty_reason');
  499.         $this->abortIf(
  500.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  501.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  502.         );
  503.         $this->addSql('DROP TABLE registration_qualifications');
  504.         $this->abortIf(
  505.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  506.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  507.         );
  508.         $this->addSql('DROP TABLE registrations');
  509.         $this->abortIf(
  510.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  511.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  512.         );
  513.         $this->addSql('DROP TABLE reset_password_request');
  514.         $this->abortIf(
  515.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  516.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  517.         );
  518.         $this->addSql('DROP TABLE role');
  519.         $this->abortIf(
  520.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  521.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  522.         );
  523.         $this->addSql('DROP TABLE taxonomy');
  524.         $this->abortIf(
  525.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  526.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  527.         );
  528.         $this->addSql('DROP TABLE taxonomy_value');
  529.         $this->abortIf(
  530.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  531.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  532.         );
  533.         $this->addSql('DROP TABLE user');
  534.         $this->abortIf(
  535.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  536.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  537.         );
  538.         $this->addSql('DROP TABLE user_penalty');
  539.         $this->abortIf(
  540.             !$this->connection->getDatabasePlatform() instanceof \Doctrine\DBAL\Platforms\MySQL57Platform,
  541.             "Migration can only be executed safely on '\Doctrine\DBAL\Platforms\MySQL57Platform'."
  542.         );
  543.         $this->addSql('DROP TABLE user_profile');
  544.     }
  545. }