<?php
declare(strict_types=1);
namespace PPSDKDoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
final class Version20220331231611_UTMBenefitsUpdate extends AbstractMigration
{
public function getDescription(): string
{
return 'Adds availability option to UTM campaign benefits and relation between benefit and custom cashback coefficient';
}
public function up(Schema $schema): void
{
$this->addSql('ALTER TABLE custom_cashback_coefficients ADD utm_campaign_benefit_id INT DEFAULT NULL');
$this->addSql('ALTER TABLE custom_cashback_coefficients ADD CONSTRAINT FK_9810944D2C429B84 FOREIGN KEY (utm_campaign_benefit_id) REFERENCES utm_campaigns_benefits (id)');
$this->addSql('CREATE INDEX IDX_9810944D2C429B84 ON custom_cashback_coefficients (utm_campaign_benefit_id)');
$this->addSql('ALTER TABLE utm_campaigns_benefits ADD available_for VARCHAR(24) DEFAULT \'all\' NOT NULL');
$this->addSql('CREATE INDEX active_campaign ON utm_campaigns_benefits (utm_campaign, active_from_when, active_to_when, deleted)');
}
public function down(Schema $schema): void
{
$this->addSql('ALTER TABLE custom_cashback_coefficients DROP FOREIGN KEY FK_9810944D2C429B84');
$this->addSql('DROP INDEX IDX_9810944D2C429B84 ON custom_cashback_coefficients');
$this->addSql('ALTER TABLE custom_cashback_coefficients DROP utm_campaign_benefit_id');
$this->addSql('ALTER TABLE utm_campaigns_benefits DROP available_for');
}
}