<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20221228162629 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE user DROP FOREIGN KEY FK_8D93D6493B025C87');
$this->addSql('ALTER TABLE billing DROP FOREIGN KEY FK_EC224CAA7E3C61F9');
$this->addSql('ALTER TABLE billing DROP FOREIGN KEY FK_EC224CAA9FA531F9');
$this->addSql('ALTER TABLE billing DROP FOREIGN KEY FK_EC224CAAE899029B');
$this->addSql('DROP TABLE billing');
$this->addSql('DROP INDEX UNIQ_8D93D6493B025C87 ON user');
$this->addSql('ALTER TABLE user ADD storage_plan_id CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', ADD stripe_customer_id VARCHAR(255) DEFAULT NULL, ADD stripe_storage_id VARCHAR(255) DEFAULT NULL, ADD stripe_card_id VARCHAR(255) DEFAULT NULL, ADD stripe_card_brand VARCHAR(255) DEFAULT NULL, ADD stripe_card_exp_month INT DEFAULT NULL, ADD stripe_card_exp_year INT DEFAULT NULL, ADD stripe_card_last4 VARCHAR(255) DEFAULT NULL, ADD stripe_card_name VARCHAR(255) DEFAULT NULL, ADD stripe_card_address1 VARCHAR(255) DEFAULT NULL, ADD stripe_card_address2 VARCHAR(255) DEFAULT NULL, ADD stripe_card_city VARCHAR(255) DEFAULT NULL, ADD stripe_card_state VARCHAR(255) DEFAULT NULL, ADD stripe_card_zip VARCHAR(255) DEFAULT NULL, ADD stripe_card_country VARCHAR(255) DEFAULT NULL, ADD billing_cycle VARCHAR(255) DEFAULT NULL, ADD next_payment NUMERIC(10, 2) DEFAULT NULL, ADD seats INT DEFAULT NULL, ADD storage_quantity INT DEFAULT NULL, ADD storage_usage BIGINT DEFAULT NULL, ADD plan_expires_at DATETIME DEFAULT NULL, ADD plan_canceled_at DATETIME DEFAULT NULL, ADD stripe_id VARCHAR(255) DEFAULT NULL, CHANGE billing_id plan_id CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\'');
$this->addSql('ALTER TABLE user ADD CONSTRAINT FK_8D93D649E899029B FOREIGN KEY (plan_id) REFERENCES plan (id) ON DELETE SET NULL');
$this->addSql('ALTER TABLE user ADD CONSTRAINT FK_8D93D6499FA531F9 FOREIGN KEY (storage_plan_id) REFERENCES plan (id) ON DELETE SET NULL');
$this->addSql('CREATE UNIQUE INDEX UNIQ_8D93D649708DC647 ON user (stripe_customer_id)');
$this->addSql('CREATE UNIQUE INDEX UNIQ_8D93D64927CB7D18 ON user (stripe_storage_id)');
$this->addSql('CREATE UNIQUE INDEX UNIQ_8D93D6493F1B1098 ON user (stripe_id)');
$this->addSql('CREATE INDEX IDX_8D93D649E899029B ON user (plan_id)');
$this->addSql('CREATE INDEX IDX_8D93D6499FA531F9 ON user (storage_plan_id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE billing (id CHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci` COMMENT \'(DC2Type:uuid)\', owner_id CHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci` COMMENT \'(DC2Type:uuid)\', plan_id CHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci` COMMENT \'(DC2Type:uuid)\', storage_plan_id CHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci` COMMENT \'(DC2Type:uuid)\', stripe_customer_id VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, stripe_storage_id VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, stripe_card_id VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, stripe_card_brand VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, stripe_card_exp_month INT DEFAULT NULL, stripe_card_exp_year INT DEFAULT NULL, stripe_card_last4 VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, stripe_card_name VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, stripe_card_address1 VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, stripe_card_address2 VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, stripe_card_city VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, stripe_card_state VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, stripe_card_zip VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, stripe_card_country VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, billing_cycle VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, next_payment NUMERIC(10, 2) DEFAULT NULL, seats INT DEFAULT NULL, storage_quantity INT DEFAULT NULL, storage_usage BIGINT DEFAULT NULL, expires_at DATETIME DEFAULT NULL, canceled_at DATETIME DEFAULT NULL, stripe_id VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, created_at DATETIME NOT NULL, modified_at DATETIME NOT NULL, INDEX IDX_EC224CAA9FA531F9 (storage_plan_id), UNIQUE INDEX UNIQ_EC224CAA27CB7D18 (stripe_storage_id), UNIQUE INDEX UNIQ_EC224CAA7E3C61F9 (owner_id), UNIQUE INDEX UNIQ_EC224CAA708DC647 (stripe_customer_id), UNIQUE INDEX UNIQ_EC224CAA3F1B1098 (stripe_id), INDEX IDX_EC224CAAE899029B (plan_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
$this->addSql('ALTER TABLE billing ADD CONSTRAINT FK_EC224CAA7E3C61F9 FOREIGN KEY (owner_id) REFERENCES user (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE billing ADD CONSTRAINT FK_EC224CAA9FA531F9 FOREIGN KEY (storage_plan_id) REFERENCES plan (id) ON DELETE SET NULL');
$this->addSql('ALTER TABLE billing ADD CONSTRAINT FK_EC224CAAE899029B FOREIGN KEY (plan_id) REFERENCES plan (id) ON DELETE SET NULL');
$this->addSql('ALTER TABLE user DROP FOREIGN KEY FK_8D93D649E899029B');
$this->addSql('ALTER TABLE user DROP FOREIGN KEY FK_8D93D6499FA531F9');
$this->addSql('DROP INDEX UNIQ_8D93D649708DC647 ON user');
$this->addSql('DROP INDEX UNIQ_8D93D64927CB7D18 ON user');
$this->addSql('DROP INDEX UNIQ_8D93D6493F1B1098 ON user');
$this->addSql('DROP INDEX IDX_8D93D649E899029B ON user');
$this->addSql('DROP INDEX IDX_8D93D6499FA531F9 ON user');
$this->addSql('ALTER TABLE user ADD billing_id CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', DROP plan_id, DROP storage_plan_id, DROP stripe_customer_id, DROP stripe_storage_id, DROP stripe_card_id, DROP stripe_card_brand, DROP stripe_card_exp_month, DROP stripe_card_exp_year, DROP stripe_card_last4, DROP stripe_card_name, DROP stripe_card_address1, DROP stripe_card_address2, DROP stripe_card_city, DROP stripe_card_state, DROP stripe_card_zip, DROP stripe_card_country, DROP billing_cycle, DROP next_payment, DROP seats, DROP storage_quantity, DROP storage_usage, DROP plan_expires_at, DROP plan_canceled_at, DROP stripe_id');
$this->addSql('ALTER TABLE user ADD CONSTRAINT FK_8D93D6493B025C87 FOREIGN KEY (billing_id) REFERENCES billing (id) ON DELETE SET NULL');
$this->addSql('CREATE UNIQUE INDEX UNIQ_8D93D6493B025C87 ON user (billing_id)');
}
}