migrations/2022/05/Version20220518115141.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. final class Version20220518115141 extends AbstractMigration
  7. {
  8.     public function up(Schema $schema): void
  9.     {
  10.         $this->addSql('ALTER TABLE connector_visma_accounting CHANGE contact_id contact_id BINARY(16) NOT NULL COMMENT \'(DC2Type:contact_id)\', ADD customers_synced_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', ADD customer_invoices_synced_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', ADD vouchers_synced_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', DROP last_sync_at, DROP last_pulled_page, DROP initialized');
  11.         $this->addSql('ALTER TABLE connector_visma_accounting RENAME TO app_connector_visma_accounting');
  12.         $this->addSql('ALTER TABLE connector_visma_accounting_api_token CHANGE contact_id contact_id BINARY(16) NOT NULL COMMENT \'(DC2Type:contact_id)\'');
  13.         $this->addSql('ALTER TABLE connector_visma_accounting_api_token RENAME TO app_connector_visma_accounting_api_token');
  14.         $this->addSql('CREATE TABLE app_connector_visma_accounting_customer (id BINARY(16) NOT NULL COMMENT \'(DC2Type:connector_visma_accounting_customer_id)\', owned_by_id BINARY(16) NOT NULL COMMENT \'(DC2Type:contact_id)\', contact_id BINARY(16) NOT NULL COMMENT \'(DC2Type:contact_id)\', visma_id VARCHAR(36) NOT NULL, updated_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_61E04B735E70BCD7 (owned_by_id), INDEX IDX_61E04B73E7A1254A (contact_id), UNIQUE INDEX connector_visma_accounting_customer_unique_id (owned_by_id, contact_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  15.         $this->addSql('CREATE TABLE app_connector_visma_accounting_customer_invoice (id BINARY(16) NOT NULL COMMENT \'(DC2Type:connector_visma_accounting_customer_invoice_id)\', owned_by_id BINARY(16) NOT NULL COMMENT \'(DC2Type:contact_id)\', invoice_id BINARY(16) NOT NULL COMMENT \'(DC2Type:invoice_id)\', visma_id VARCHAR(36) NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', updated_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_32E804B65E70BCD7 (owned_by_id), INDEX IDX_32E804B62989F1FD (invoice_id), UNIQUE INDEX connector_visma_accounting_customer_invoice_unique_id (owned_by_id, invoice_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  16.         $this->addSql('CREATE TABLE app_connector_visma_accounting_voucher (id BINARY(16) NOT NULL COMMENT \'(DC2Type:connector_visma_accounting_voucher_id)\', owned_by_id BINARY(16) NOT NULL COMMENT \'(DC2Type:contact_id)\', invoice_payment_id BINARY(16) DEFAULT NULL COMMENT \'(DC2Type:invoice_payment_id)\', visma_id VARCHAR(36) NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', updated_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', number VARCHAR(255) NOT NULL, INDEX IDX_1FBEC1D25E70BCD7 (owned_by_id), INDEX IDX_1FBEC1D2FD1FD325 (invoice_payment_id), UNIQUE INDEX connector_visma_accounting_voucher_unique_id (owned_by_id, invoice_payment_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  17.         $this->addSql('ALTER TABLE app_connector_visma_accounting_customer ADD CONSTRAINT FK_61E04B735E70BCD7 FOREIGN KEY (owned_by_id) REFERENCES contact (id)');
  18.         $this->addSql('ALTER TABLE app_connector_visma_accounting_customer ADD CONSTRAINT FK_61E04B73E7A1254A FOREIGN KEY (contact_id) REFERENCES contact (id)');
  19.         $this->addSql('ALTER TABLE app_connector_visma_accounting_customer_invoice ADD CONSTRAINT FK_32E804B65E70BCD7 FOREIGN KEY (owned_by_id) REFERENCES contact (id)');
  20.         $this->addSql('ALTER TABLE app_connector_visma_accounting_customer_invoice ADD CONSTRAINT FK_32E804B62989F1FD FOREIGN KEY (invoice_id) REFERENCES invoice (id)');
  21.         $this->addSql('ALTER TABLE app_connector_visma_accounting_voucher ADD CONSTRAINT FK_1FBEC1D25E70BCD7 FOREIGN KEY (owned_by_id) REFERENCES contact (id)');
  22.         $this->addSql('ALTER TABLE app_connector_visma_accounting_voucher ADD CONSTRAINT FK_1FBEC1D2FD1FD325 FOREIGN KEY (invoice_payment_id) REFERENCES invoice_payment (id)');
  23.     }
  24.     public function down(Schema $schema): void
  25.     {
  26.         $this->addSql('ALTER TABLE app_connector_visma_accounting CHANGE contact_id contact_id BINARY(16) DEFAULT NULL COMMENT \'(DC2Type:contact_id)\', ADD last_sync_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', ADD last_pulled_page INT NOT NULL, ADD initialized TINYINT(1) NOT NULL, DROP customers_synced_at, DROP customer_invoices_synced_at, DROP vouchers_synced_at');
  27.         $this->addSql('ALTER TABLE app_connector_visma_accounting RENAME TO connector_visma_accounting');
  28.         $this->addSql('ALTER TABLE app_connector_visma_accounting_api_token CHANGE contact_id contact_id BINARY(16) DEFAULT NULL COMMENT \'(DC2Type:contact_id)\'');
  29.         $this->addSql('ALTER TABLE app_connector_visma_accounting_api_token RENAME TO connector_visma_accounting_api_token');
  30.         $this->addSql('DROP TABLE app_connector_visma_accounting_customer');
  31.         $this->addSql('DROP TABLE app_connector_visma_accounting_customer_invoice');
  32.         $this->addSql('DROP TABLE app_connector_visma_accounting_voucher');
  33.     }
  34. }