migrations/Version20230105151623.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 Version20230105151623 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 omni.channel_facebook_id_seq INCREMENT BY 1 MINVALUE 1 START 1');
  19.         $this->addSql('CREATE SEQUENCE omni.channel_instagram_id_seq INCREMENT BY 1 MINVALUE 1 START 1');
  20.         $this->addSql('CREATE TABLE omni.channel_facebook (id INT NOT NULL, channel_id INT NOT NULL, tenant_id INT NOT NULL, user_id BIGINT NOT NULL, page_id BIGINT NOT NULL, user_access_token TEXT NOT NULL, page_access_token TEXT NOT NULL, granted_scopes VARCHAR(255) NOT NULL, created_at TIMESTAMP(6) WITHOUT TIME ZONE NOT NULL, updated_at TIMESTAMP(6) WITHOUT TIME ZONE NOT NULL, is_deleted BOOLEAN DEFAULT false NOT NULL, deleted_at TIMESTAMP(6) WITHOUT TIME ZONE DEFAULT NULL, PRIMARY KEY(id))');
  21.         $this->addSql('CREATE UNIQUE INDEX UNIQ_88ACB25B72F5A1AA ON omni.channel_facebook (channel_id)');
  22.         $this->addSql('CREATE INDEX IDX_88ACB25B9033212A ON omni.channel_facebook (tenant_id)');
  23.         $this->addSql('CREATE TABLE omni.channel_instagram (id INT NOT NULL, channel_id INT NOT NULL, tenant_id INT NOT NULL, user_id BIGINT NOT NULL, page_id BIGINT NOT NULL, ig_user_id BIGINT NOT NULL, user_access_token TEXT NOT NULL, page_access_token TEXT NOT NULL, granted_scopes VARCHAR(255) NOT NULL, created_at TIMESTAMP(6) WITHOUT TIME ZONE NOT NULL, updated_at TIMESTAMP(6) WITHOUT TIME ZONE NOT NULL, is_deleted BOOLEAN DEFAULT false NOT NULL, deleted_at TIMESTAMP(6) WITHOUT TIME ZONE DEFAULT NULL, PRIMARY KEY(id))');
  24.         $this->addSql('CREATE UNIQUE INDEX UNIQ_D8F8CCBD72F5A1AA ON omni.channel_instagram (channel_id)');
  25.         $this->addSql('CREATE INDEX IDX_D8F8CCBD9033212A ON omni.channel_instagram (tenant_id)');
  26.         $this->addSql('ALTER TABLE omni.channel_facebook ADD CONSTRAINT FK_88ACB25B72F5A1AA FOREIGN KEY (channel_id) REFERENCES omni.channel (id) NOT DEFERRABLE INITIALLY IMMEDIATE');
  27.         $this->addSql('ALTER TABLE omni.channel_facebook ADD CONSTRAINT FK_88ACB25B9033212A FOREIGN KEY (tenant_id) REFERENCES account.tenant (id) NOT DEFERRABLE INITIALLY IMMEDIATE');
  28.         $this->addSql('ALTER TABLE omni.channel_instagram ADD CONSTRAINT FK_D8F8CCBD72F5A1AA FOREIGN KEY (channel_id) REFERENCES omni.channel (id) NOT DEFERRABLE INITIALLY IMMEDIATE');
  29.         $this->addSql('ALTER TABLE omni.channel_instagram ADD CONSTRAINT FK_D8F8CCBD9033212A FOREIGN KEY (tenant_id) REFERENCES account.tenant (id) NOT DEFERRABLE INITIALLY IMMEDIATE');
  30.         $this->addSql('ALTER TABLE omni.channel DROP facebook_user_access_token');
  31.         $this->addSql('ALTER TABLE omni.channel DROP facebook_granted_scopes');
  32.         $this->addSql('ALTER TABLE omni.channel DROP facebook_user_id');
  33.         $this->addSql('ALTER TABLE omni.channel DROP is_active');
  34.         $this->addSql('ALTER TABLE omni.channel DROP facebook_page_id');
  35.         $this->addSql('ALTER TABLE omni.channel DROP facebook_page_access_token');
  36.         $this->addSql('ALTER TABLE omni.channel DROP identifier');
  37.         $this->addSql('ALTER TABLE omni.contact DROP channel_type');
  38.     }
  39.     public function down(Schema $schema): void
  40.     {
  41.         // this down() migration is auto-generated, please modify it to your needs
  42.         $this->addSql('CREATE SCHEMA public');
  43.         $this->addSql('DROP SEQUENCE omni.channel_facebook_id_seq CASCADE');
  44.         $this->addSql('DROP SEQUENCE omni.channel_instagram_id_seq CASCADE');
  45.         $this->addSql('ALTER TABLE omni.channel_facebook DROP CONSTRAINT FK_88ACB25B72F5A1AA');
  46.         $this->addSql('ALTER TABLE omni.channel_facebook DROP CONSTRAINT FK_88ACB25B9033212A');
  47.         $this->addSql('ALTER TABLE omni.channel_instagram DROP CONSTRAINT FK_D8F8CCBD72F5A1AA');
  48.         $this->addSql('ALTER TABLE omni.channel_instagram DROP CONSTRAINT FK_D8F8CCBD9033212A');
  49.         $this->addSql('DROP TABLE omni.channel_facebook');
  50.         $this->addSql('DROP TABLE omni.channel_instagram');
  51.         $this->addSql('ALTER TABLE omni.contact ADD channel_type VARCHAR(100) NOT NULL');
  52.         $this->addSql('ALTER TABLE omni.channel ADD facebook_user_access_token TEXT DEFAULT NULL');
  53.         $this->addSql('ALTER TABLE omni.channel ADD facebook_granted_scopes VARCHAR(255) DEFAULT NULL');
  54.         $this->addSql('ALTER TABLE omni.channel ADD facebook_user_id BIGINT DEFAULT NULL');
  55.         $this->addSql('ALTER TABLE omni.channel ADD is_active BOOLEAN DEFAULT false NOT NULL');
  56.         $this->addSql('ALTER TABLE omni.channel ADD facebook_page_id BIGINT DEFAULT NULL');
  57.         $this->addSql('ALTER TABLE omni.channel ADD facebook_page_access_token TEXT DEFAULT NULL');
  58.         $this->addSql('ALTER TABLE omni.channel ADD identifier TEXT DEFAULT NULL');
  59.     }
  60. }