<?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 Version20220830181441 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 notification_history DROP FOREIGN KEY FK_32A4FAFCCEFDB188');
$this->addSql('DROP INDEX IDX_32A4FAFCCEFDB188 ON notification_history');
$this->addSql('ALTER TABLE notification_history CHANGE order_parent_id checking_id INT NOT NULL');
$this->addSql('ALTER TABLE notification_history ADD CONSTRAINT FK_32A4FAFC97A83ADB FOREIGN KEY (checking_id) REFERENCES `order` (id)');
$this->addSql('CREATE INDEX IDX_32A4FAFC97A83ADB ON notification_history (checking_id)');
$this->addSql('ALTER TABLE `order` ADD customer_id INT NOT NULL, ADD promotion_id INT DEFAULT NULL, ADD shop_id INT NOT NULL, ADD franchise_id INT NOT NULL, ADD builling_address_id INT DEFAULT NULL, ADD shop_mode_id INT NOT NULL, ADD number VARCHAR(255) DEFAULT NULL, ADD notes VARCHAR(255) DEFAULT NULL, ADD checkout_state ENUM(\'new\', \'addressed\', \'completed\', \'payment_selected\', \'payment_skipped\'), ADD payment_state ENUM(\'authorized\', \'new\', \'processing\', \'completed\', \'failed\', \'unknown\', \'cancelled\', \'paid\', \'refunded\'), ADD discounts_total DOUBLE PRECISION NOT NULL, ADD total DOUBLE PRECISION NOT NULL, ADD token VARCHAR(255) NOT NULL, ADD local_code VARCHAR(255) NOT NULL, ADD currency_code VARCHAR(255) NOT NULL, ADD created_by_guest TINYINT(1) NOT NULL, ADD customer_ip VARCHAR(255) DEFAULT NULL, ADD checkout_completed_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', ADD canceled_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', ADD taxes_total DOUBLE PRECISION NOT NULL, CHANGE date date DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', CHANGE status state ENUM(\'new\', \'cancelled\', \'fulfilled\'), CHANGE amount items_total DOUBLE PRECISION NOT NULL');
$this->addSql('ALTER TABLE `order` ADD CONSTRAINT FK_F52993989395C3F3 FOREIGN KEY (customer_id) REFERENCES user (id)');
$this->addSql('ALTER TABLE `order` ADD CONSTRAINT FK_F5299398139DF194 FOREIGN KEY (promotion_id) REFERENCES promotion (id)');
$this->addSql('ALTER TABLE `order` ADD CONSTRAINT FK_F52993984D16C4DD FOREIGN KEY (shop_id) REFERENCES shop (id)');
$this->addSql('ALTER TABLE `order` ADD CONSTRAINT FK_F5299398523CAB89 FOREIGN KEY (franchise_id) REFERENCES franchise (id)');
$this->addSql('ALTER TABLE `order` ADD CONSTRAINT FK_F529939814760C77 FOREIGN KEY (builling_address_id) REFERENCES billing_address (id)');
$this->addSql('ALTER TABLE `order` ADD CONSTRAINT FK_F529939874D6C560 FOREIGN KEY (shop_mode_id) REFERENCES shop_mode (id)');
$this->addSql('CREATE UNIQUE INDEX UNIQ_F529939896901F54 ON `order` (number)');
$this->addSql('CREATE UNIQUE INDEX UNIQ_F52993985F37A13B ON `order` (token)');
$this->addSql('CREATE INDEX IDX_F52993989395C3F3 ON `order` (customer_id)');
$this->addSql('CREATE INDEX IDX_F5299398139DF194 ON `order` (promotion_id)');
$this->addSql('CREATE INDEX IDX_F52993984D16C4DD ON `order` (shop_id)');
$this->addSql('CREATE INDEX IDX_F5299398523CAB89 ON `order` (franchise_id)');
$this->addSql('CREATE INDEX IDX_F529939814760C77 ON `order` (builling_address_id)');
$this->addSql('CREATE INDEX IDX_F529939874D6C560 ON `order` (shop_mode_id)');
$this->addSql('ALTER TABLE order_item DROP FOREIGN KEY FK_52EA1F094584665A');
$this->addSql('ALTER TABLE order_item DROP FOREIGN KEY FK_52EA1F09CEFDB188');
$this->addSql('DROP INDEX IDX_52EA1F094584665A ON order_item');
$this->addSql('DROP INDEX IDX_52EA1F09CEFDB188 ON order_item');
$this->addSql('ALTER TABLE order_item ADD checking_id INT NOT NULL, ADD promotion_id INT DEFAULT NULL, ADD product_shop_mode_id INT DEFAULT NULL, ADD unit_price DOUBLE PRECISION NOT NULL, ADD total DOUBLE PRECISION NOT NULL, ADD untits_total INT DEFAULT NULL, ADD discounts_total DOUBLE PRECISION NOT NULL, ADD taxes_total DOUBLE PRECISION NOT NULL, DROP order_parent_id, DROP product_id');
$this->addSql('ALTER TABLE order_item ADD CONSTRAINT FK_52EA1F0997A83ADB FOREIGN KEY (checking_id) REFERENCES `order` (id)');
$this->addSql('ALTER TABLE order_item ADD CONSTRAINT FK_52EA1F09139DF194 FOREIGN KEY (promotion_id) REFERENCES promotion (id)');
$this->addSql('ALTER TABLE order_item ADD CONSTRAINT FK_52EA1F09F972E70B FOREIGN KEY (product_shop_mode_id) REFERENCES product_shop_mode (id)');
$this->addSql('CREATE INDEX IDX_52EA1F0997A83ADB ON order_item (checking_id)');
$this->addSql('CREATE INDEX IDX_52EA1F09139DF194 ON order_item (promotion_id)');
$this->addSql('CREATE INDEX IDX_52EA1F09F972E70B ON order_item (product_shop_mode_id)');
$this->addSql('ALTER TABLE payment DROP FOREIGN KEY FK_6D28840DCEFDB188');
$this->addSql('DROP INDEX IDX_6D28840DCEFDB188 ON payment');
$this->addSql('ALTER TABLE payment ADD updated_at DATETIME NOT NULL, DROP edited_at, CHANGE created_at created_at DATETIME NOT NULL, CHANGE order_parent_id checking_id INT NOT NULL');
$this->addSql('ALTER TABLE payment ADD CONSTRAINT FK_6D28840D97A83ADB FOREIGN KEY (checking_id) REFERENCES `order` (id)');
$this->addSql('CREATE INDEX IDX_6D28840D97A83ADB ON payment (checking_id)');
$this->addSql('ALTER TABLE payment_methode ADD updated_at DATETIME NOT NULL, DROP edited_at, CHANGE created_at created_at DATETIME NOT NULL');
$this->addSql('ALTER TABLE promotion CHANGE unique_code code VARCHAR(255) NOT NULL');
$this->addSql('CREATE UNIQUE INDEX UNIQ_C11D7DD177153098 ON promotion (code)');
$this->addSql('ALTER TABLE shop_settings CHANGE time_slot_blocking_type time_slot_blocking_type ENUM(\'product\',\'order\')');
$this->addSql('ALTER TABLE user ADD landline_phone VARCHAR(255) DEFAULT NULL');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE notification_history DROP FOREIGN KEY FK_32A4FAFC97A83ADB');
$this->addSql('DROP INDEX IDX_32A4FAFC97A83ADB ON notification_history');
$this->addSql('ALTER TABLE notification_history CHANGE checking_id order_parent_id INT NOT NULL');
$this->addSql('ALTER TABLE notification_history ADD CONSTRAINT FK_32A4FAFCCEFDB188 FOREIGN KEY (order_parent_id) REFERENCES `order` (id)');
$this->addSql('CREATE INDEX IDX_32A4FAFCCEFDB188 ON notification_history (order_parent_id)');
$this->addSql('ALTER TABLE `order` DROP FOREIGN KEY FK_F52993989395C3F3');
$this->addSql('ALTER TABLE `order` DROP FOREIGN KEY FK_F5299398139DF194');
$this->addSql('ALTER TABLE `order` DROP FOREIGN KEY FK_F52993984D16C4DD');
$this->addSql('ALTER TABLE `order` DROP FOREIGN KEY FK_F5299398523CAB89');
$this->addSql('ALTER TABLE `order` DROP FOREIGN KEY FK_F529939814760C77');
$this->addSql('ALTER TABLE `order` DROP FOREIGN KEY FK_F529939874D6C560');
$this->addSql('DROP INDEX UNIQ_F529939896901F54 ON `order`');
$this->addSql('DROP INDEX UNIQ_F52993985F37A13B ON `order`');
$this->addSql('DROP INDEX IDX_F52993989395C3F3 ON `order`');
$this->addSql('DROP INDEX IDX_F5299398139DF194 ON `order`');
$this->addSql('DROP INDEX IDX_F52993984D16C4DD ON `order`');
$this->addSql('DROP INDEX IDX_F5299398523CAB89 ON `order`');
$this->addSql('DROP INDEX IDX_F529939814760C77 ON `order`');
$this->addSql('DROP INDEX IDX_F529939874D6C560 ON `order`');
$this->addSql('ALTER TABLE `order` ADD amount DOUBLE PRECISION NOT NULL, ADD status VARCHAR(255) NOT NULL, DROP customer_id, DROP promotion_id, DROP shop_id, DROP franchise_id, DROP builling_address_id, DROP shop_mode_id, DROP number, DROP notes, DROP state, DROP checkout_state, DROP payment_state, DROP items_total, DROP discounts_total, DROP total, DROP token, DROP local_code, DROP currency_code, DROP created_by_guest, DROP customer_ip, DROP checkout_completed_at, DROP canceled_at, DROP taxes_total, CHANGE date date DATETIME NOT NULL');
$this->addSql('ALTER TABLE order_item DROP FOREIGN KEY FK_52EA1F0997A83ADB');
$this->addSql('ALTER TABLE order_item DROP FOREIGN KEY FK_52EA1F09139DF194');
$this->addSql('ALTER TABLE order_item DROP FOREIGN KEY FK_52EA1F09F972E70B');
$this->addSql('DROP INDEX IDX_52EA1F0997A83ADB ON order_item');
$this->addSql('DROP INDEX IDX_52EA1F09139DF194 ON order_item');
$this->addSql('DROP INDEX IDX_52EA1F09F972E70B ON order_item');
$this->addSql('ALTER TABLE order_item ADD product_id INT NOT NULL, DROP promotion_id, DROP product_shop_mode_id, DROP unit_price, DROP total, DROP untits_total, DROP discounts_total, DROP taxes_total, CHANGE checking_id order_parent_id INT NOT NULL');
$this->addSql('ALTER TABLE order_item ADD CONSTRAINT FK_52EA1F094584665A FOREIGN KEY (product_id) REFERENCES product (id)');
$this->addSql('ALTER TABLE order_item ADD CONSTRAINT FK_52EA1F09CEFDB188 FOREIGN KEY (order_parent_id) REFERENCES `order` (id)');
$this->addSql('CREATE INDEX IDX_52EA1F094584665A ON order_item (product_id)');
$this->addSql('CREATE INDEX IDX_52EA1F09CEFDB188 ON order_item (order_parent_id)');
$this->addSql('ALTER TABLE payment DROP FOREIGN KEY FK_6D28840D97A83ADB');
$this->addSql('DROP INDEX IDX_6D28840D97A83ADB ON payment');
$this->addSql('ALTER TABLE payment ADD edited_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', DROP updated_at, CHANGE created_at created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', CHANGE checking_id order_parent_id INT NOT NULL');
$this->addSql('ALTER TABLE payment ADD CONSTRAINT FK_6D28840DCEFDB188 FOREIGN KEY (order_parent_id) REFERENCES `order` (id)');
$this->addSql('CREATE INDEX IDX_6D28840DCEFDB188 ON payment (order_parent_id)');
$this->addSql('ALTER TABLE payment_methode ADD edited_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', DROP updated_at, CHANGE created_at created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\'');
$this->addSql('DROP INDEX UNIQ_C11D7DD177153098 ON promotion');
$this->addSql('ALTER TABLE promotion CHANGE code unique_code VARCHAR(255) NOT NULL');
$this->addSql('ALTER TABLE shop_settings CHANGE time_slot_blocking_type time_slot_blocking_type VARCHAR(255) DEFAULT NULL');
$this->addSql('ALTER TABLE user DROP landline_phone');
}
}