<?php
declare(strict_types=1);
namespace PPSDKDoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220308170919_TransactionFeeds extends AbstractMigration
{
public function getDescription(): string
{
return 'PPSDK-104 - transactions feeds';
}
public function up(Schema $schema): void
{
$this->addSql('CREATE TABLE transaction_feed_definitions (id INT AUTO_INCREMENT NOT NULL, created_by_admin_id INT DEFAULT NULL, updated_by_admin_id INT DEFAULT NULL, deleted_by_admin_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, created_when DATETIME NOT NULL, updated_when DATETIME NOT NULL, deleted TINYINT(1) NOT NULL, not_deleted TINYINT(1) DEFAULT NULL, deleted_when DATETIME DEFAULT NULL, handler_identifier VARCHAR(80) NOT NULL, handler_params LONGTEXT NOT NULL COMMENT \'(DC2Type:json)\', INDEX IDX_7FE2592264F1F4EE (created_by_admin_id), INDEX IDX_7FE25922681D6437 (updated_by_admin_id), INDEX IDX_7FE2592254C5E183 (deleted_by_admin_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE transaction_feed_import_requests (id INT AUTO_INCREMENT NOT NULL, definition_id INT DEFAULT NULL, created_by_admin_id INT DEFAULT NULL, updated_by_admin_id INT DEFAULT NULL, deleted_by_admin_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, definition_name VARCHAR(255) NOT NULL, import_status VARCHAR(30) NOT NULL, import_started_when DATETIME DEFAULT NULL, import_finished_when DATETIME DEFAULT NULL, import_log LONGTEXT NOT NULL COMMENT \'(DC2Type:json)\', created_transactions_count INT NOT NULL, updated_transactions_count INT NOT NULL, warnings_count INT NOT NULL, created_when DATETIME NOT NULL, updated_when DATETIME NOT NULL, deleted TINYINT(1) NOT NULL, not_deleted TINYINT(1) DEFAULT NULL, deleted_when DATETIME DEFAULT NULL, handler_identifier VARCHAR(80) NOT NULL, handler_params LONGTEXT NOT NULL COMMENT \'(DC2Type:json)\', import_file_attached TINYINT(1) NOT NULL, import_file_attached_when DATETIME DEFAULT NULL, import_file_url VARCHAR(255) NOT NULL, import_file_storage_path VARCHAR(255) NOT NULL, import_file_file_size INT NOT NULL, import_file_mime_type VARCHAR(40) NOT NULL, INDEX IDX_8601DA33D11EA911 (definition_id), INDEX IDX_8601DA3364F1F4EE (created_by_admin_id), INDEX IDX_8601DA33681D6437 (updated_by_admin_id), INDEX IDX_8601DA3354C5E183 (deleted_by_admin_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE transaction_feed_import_affected_transactions (transaction_feed_import_request_id INT NOT NULL, transaction_id INT NOT NULL, INDEX IDX_DAF92EE51C03002F (transaction_feed_import_request_id), INDEX IDX_DAF92EE52FC0CB0F (transaction_id), PRIMARY KEY(transaction_feed_import_request_id, transaction_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE transaction_feed_definitions ADD CONSTRAINT FK_7FE2592264F1F4EE FOREIGN KEY (created_by_admin_id) REFERENCES administrators (id)');
$this->addSql('ALTER TABLE transaction_feed_definitions ADD CONSTRAINT FK_7FE25922681D6437 FOREIGN KEY (updated_by_admin_id) REFERENCES administrators (id)');
$this->addSql('ALTER TABLE transaction_feed_definitions ADD CONSTRAINT FK_7FE2592254C5E183 FOREIGN KEY (deleted_by_admin_id) REFERENCES administrators (id)');
$this->addSql('ALTER TABLE transaction_feed_import_requests ADD CONSTRAINT FK_8601DA33D11EA911 FOREIGN KEY (definition_id) REFERENCES transaction_feed_definitions (id)');
$this->addSql('ALTER TABLE transaction_feed_import_requests ADD CONSTRAINT FK_8601DA3364F1F4EE FOREIGN KEY (created_by_admin_id) REFERENCES administrators (id)');
$this->addSql('ALTER TABLE transaction_feed_import_requests ADD CONSTRAINT FK_8601DA33681D6437 FOREIGN KEY (updated_by_admin_id) REFERENCES administrators (id)');
$this->addSql('ALTER TABLE transaction_feed_import_requests ADD CONSTRAINT FK_8601DA3354C5E183 FOREIGN KEY (deleted_by_admin_id) REFERENCES administrators (id)');
$this->addSql('ALTER TABLE transaction_feed_import_affected_transactions ADD CONSTRAINT FK_DAF92EE51C03002F FOREIGN KEY (transaction_feed_import_request_id) REFERENCES transaction_feed_import_requests (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE transaction_feed_import_affected_transactions ADD CONSTRAINT FK_DAF92EE52FC0CB0F FOREIGN KEY (transaction_id) REFERENCES transactions (id) ON DELETE CASCADE');
}
public function down(Schema $schema): void
{
$this->addSql('ALTER TABLE transaction_feed_import_requests DROP FOREIGN KEY FK_8601DA33D11EA911');
$this->addSql('ALTER TABLE transaction_feed_import_affected_transactions DROP FOREIGN KEY FK_DAF92EE51C03002F');
$this->addSql('DROP TABLE transaction_feed_definitions');
$this->addSql('DROP TABLE transaction_feed_import_requests');
$this->addSql('DROP TABLE transaction_feed_import_affected_transactions');
}
}