migrations/Version20260313124832.php line 1

Open in your IDE?
  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 Version20260313124832 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->addSql('CREATE SEQUENCE encuesta_plantilla_id_seq INCREMENT BY 1 MINVALUE 1 START 1');
  19.         $this->addSql('CREATE SEQUENCE encuesta_pregunta_id_seq INCREMENT BY 1 MINVALUE 1 START 1');
  20.         $this->addSql('CREATE TABLE encuesta_plantilla (id INT NOT NULL, tipo VARCHAR(20) NOT NULL, nombre VARCHAR(255) NOT NULL, activa BOOLEAN NOT NULL, PRIMARY KEY(id))');
  21.         $this->addSql('CREATE TABLE encuesta_pregunta (id INT NOT NULL, plantilla_id INT NOT NULL, orden INT NOT NULL, texto VARCHAR(500) NOT NULL, activa BOOLEAN NOT NULL, PRIMARY KEY(id))');
  22.         $this->addSql('CREATE INDEX IDX_3C1707EEA08F3969 ON encuesta_pregunta (plantilla_id)');
  23.         $this->addSql('ALTER TABLE encuesta_pregunta ADD CONSTRAINT FK_3C1707EEA08F3969 FOREIGN KEY (plantilla_id) REFERENCES encuesta_plantilla (id) NOT DEFERRABLE INITIALLY IMMEDIATE');
  24.         // Datos iniciales: plantilla colegio (p1-p5)
  25.         $this->addSql("INSERT INTO encuesta_plantilla (id, tipo, nombre, activa) VALUES (nextval('encuesta_plantilla_id_seq'), 'colegio', 'Encuesta Colegio (inicial)', true)");
  26.         $this->addSql("INSERT INTO encuesta_pregunta (id, plantilla_id, orden, texto, activa) VALUES
  27.             (nextval('encuesta_pregunta_id_seq'), currval('encuesta_plantilla_id_seq'), 1, 'El sistema y la atención facilitaron el agendamiento de la actividad', true),
  28.             (nextval('encuesta_pregunta_id_seq'), currval('encuesta_plantilla_id_seq'), 2, 'El servicio entregado por la universidad fue lo esperado', true),
  29.             (nextval('encuesta_pregunta_id_seq'), currval('encuesta_plantilla_id_seq'), 3, 'La información entregada por las y los embajadores durante la actividad fue de calidad y fidedigna', true),
  30.             (nextval('encuesta_pregunta_id_seq'), currval('encuesta_plantilla_id_seq'), 4, 'Volvería a agendar una actividad con la UC', true),
  31.             (nextval('encuesta_pregunta_id_seq'), currval('encuesta_plantilla_id_seq'), 5, 'Recomendaría a mis estudiantes postular a la UC', true)
  32.         ");
  33.         // Datos iniciales: plantilla embajador (p1-p7)
  34.         $this->addSql("INSERT INTO encuesta_plantilla (id, tipo, nombre, activa) VALUES (nextval('encuesta_plantilla_id_seq'), 'embajador', 'Encuesta Embajador (inicial)', true)");
  35.         $this->addSql("INSERT INTO encuesta_pregunta (id, plantilla_id, orden, texto, activa) VALUES
  36.             (nextval('encuesta_pregunta_id_seq'), currval('encuesta_plantilla_id_seq'), 1, 'Las condiciones entregadas por el colegio fueron las necesarias para realizar la actividad', true),
  37.             (nextval('encuesta_pregunta_id_seq'), currval('encuesta_plantilla_id_seq'), 2, 'La comunicación con el orientador u orientadora fue efectiva y cordial', true),
  38.             (nextval('encuesta_pregunta_id_seq'), currval('encuesta_plantilla_id_seq'), 3, 'La actitud de los profesores a cargo me permitió realizar la actividad de manera correcta', true),
  39.             (nextval('encuesta_pregunta_id_seq'), currval('encuesta_plantilla_id_seq'), 4, 'Participaría nuevamente en una actividad con este establecimiento', true),
  40.             (nextval('encuesta_pregunta_id_seq'), currval('encuesta_plantilla_id_seq'), 5, 'Si aplica: El transporte se llevó a cabo en los tiempos acordados y no interrumpió mi participación en la actividad', true),
  41.             (nextval('encuesta_pregunta_id_seq'), currval('encuesta_plantilla_id_seq'), 6, 'Si aplica: La comunicación con los y/o las embajadoras de carrera fue fluida y aportó al desarrollo de la actividad', true),
  42.             (nextval('encuesta_pregunta_id_seq'), currval('encuesta_plantilla_id_seq'), 7, 'Si aplica: La distribución del trabajo con mi(s) compañero(s) de Difusión fue equitativa y fluida', true)
  43.         ");
  44.     }
  45.     public function down(Schema $schema): void
  46.     {
  47.         // this down() migration is auto-generated, please modify it to your needs
  48.         $this->addSql('CREATE SCHEMA public');
  49.         $this->addSql('DROP SEQUENCE encuesta_plantilla_id_seq CASCADE');
  50.         $this->addSql('DROP SEQUENCE encuesta_pregunta_id_seq CASCADE');
  51.         $this->addSql('ALTER TABLE encuesta_pregunta DROP CONSTRAINT FK_3C1707EEA08F3969');
  52.         $this->addSql('DROP TABLE encuesta_plantilla');
  53.         $this->addSql('DROP TABLE encuesta_pregunta');
  54.     }
  55. }