migrations/Version20240523125856.php line 1

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace DoctrineMigrations;
  4. use Doctrine\DBAL\Schema\Schema;
  5. use Doctrine\Migrations\AbstractMigration;
  6. final class Version20240523125856 extends AbstractMigration
  7. {
  8.     public function getDescription(): string
  9.     {
  10.         return 'Added entity {CustomerAppointment, CustomerDelivery, PlatformReception, PlatformShipping, OrderCustomerAppointment, OrderCustomerDelivery, OrderPlatformReception, OrderPlatformShipping}, fields Order.{identifiantColibri, cashOnDelivery}';
  11.     }
  12.     public function up(Schema $schema): void
  13.     {
  14.         $this->addSql('CREATE TABLE customer_appointment (id INT AUTO_INCREMENT NOT NULL, ps_id_order_state INT NULL, code VARCHAR(10) NOT NULL, label VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  15.         $this->addSql('CREATE TABLE customer_delivery (id INT AUTO_INCREMENT NOT NULL, ps_id_order_state INT NULL, code VARCHAR(10) NOT NULL, label VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  16.         $this->addSql('CREATE TABLE platform_reception (id INT AUTO_INCREMENT NOT NULL, ps_id_order_state INT NULL, code VARCHAR(10) NOT NULL, label VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  17.         $this->addSql('CREATE TABLE platform_shipping (id INT AUTO_INCREMENT NOT NULL, ps_id_order_state INT NULL, code VARCHAR(10) NOT NULL, label VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  18.         $this->addSql('CREATE TABLE order_customer_appointment (id INT AUTO_INCREMENT NOT NULL, order_id INT DEFAULT NULL, customer_appointment_id INT DEFAULT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_43B785648D9F6D38 (order_id), INDEX IDX_43B785647CD80733 (customer_appointment_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  19.         $this->addSql('CREATE TABLE order_customer_delivery (id INT AUTO_INCREMENT NOT NULL, order_id INT DEFAULT NULL, customer_delivery_id INT DEFAULT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_F27E5648D9F6D38 (order_id), INDEX IDX_F27E56411584229 (customer_delivery_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  20.         $this->addSql('CREATE TABLE order_platform_reception (id INT AUTO_INCREMENT NOT NULL, order_id INT DEFAULT NULL, platform_reception_id INT DEFAULT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_5F476F518D9F6D38 (order_id), INDEX IDX_5F476F5134E94E1F (platform_reception_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  21.         $this->addSql('CREATE TABLE order_platform_shipping (id INT AUTO_INCREMENT NOT NULL, order_id INT DEFAULT NULL, platform_shipping_id INT DEFAULT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_BC0F5D6D8D9F6D38 (order_id), INDEX IDX_BC0F5D6D720F55F (platform_shipping_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  22.         $this->addSql('ALTER TABLE order_customer_appointment ADD CONSTRAINT FK_43B785648D9F6D38 FOREIGN KEY (order_id) REFERENCES `order` (id)');
  23.         $this->addSql('ALTER TABLE order_customer_appointment ADD CONSTRAINT FK_43B785647CD80733 FOREIGN KEY (customer_appointment_id) REFERENCES customer_appointment (id)');
  24.         $this->addSql('ALTER TABLE order_customer_delivery ADD CONSTRAINT FK_F27E5648D9F6D38 FOREIGN KEY (order_id) REFERENCES `order` (id)');
  25.         $this->addSql('ALTER TABLE order_customer_delivery ADD CONSTRAINT FK_F27E56411584229 FOREIGN KEY (customer_delivery_id) REFERENCES customer_delivery (id)');
  26.         $this->addSql('ALTER TABLE order_platform_reception ADD CONSTRAINT FK_5F476F518D9F6D38 FOREIGN KEY (order_id) REFERENCES `order` (id)');
  27.         $this->addSql('ALTER TABLE order_platform_reception ADD CONSTRAINT FK_5F476F5134E94E1F FOREIGN KEY (platform_reception_id) REFERENCES platform_reception (id)');
  28.         $this->addSql('ALTER TABLE order_platform_shipping ADD CONSTRAINT FK_BC0F5D6D8D9F6D38 FOREIGN KEY (order_id) REFERENCES `order` (id)');
  29.         $this->addSql('ALTER TABLE order_platform_shipping ADD CONSTRAINT FK_BC0F5D6D720F55F FOREIGN KEY (platform_shipping_id) REFERENCES platform_shipping (id)');
  30.         $this->addSql('ALTER TABLE `order` ADD identifiant_colibri INT DEFAULT NULL, ADD cash_on_delivery DOUBLE PRECISION DEFAULT NULL');
  31.     }
  32.     public function down(Schema $schema): void
  33.     {
  34.         $this->addSql('ALTER TABLE order_customer_appointment DROP FOREIGN KEY FK_43B785648D9F6D38');
  35.         $this->addSql('ALTER TABLE order_customer_appointment DROP FOREIGN KEY FK_43B785647CD80733');
  36.         $this->addSql('ALTER TABLE order_customer_delivery DROP FOREIGN KEY FK_F27E5648D9F6D38');
  37.         $this->addSql('ALTER TABLE order_customer_delivery DROP FOREIGN KEY FK_F27E56411584229');
  38.         $this->addSql('ALTER TABLE order_platform_reception DROP FOREIGN KEY FK_5F476F518D9F6D38');
  39.         $this->addSql('ALTER TABLE order_platform_reception DROP FOREIGN KEY FK_5F476F5134E94E1F');
  40.         $this->addSql('ALTER TABLE order_platform_shipping DROP FOREIGN KEY FK_BC0F5D6D8D9F6D38');
  41.         $this->addSql('ALTER TABLE order_platform_shipping DROP FOREIGN KEY FK_BC0F5D6D720F55F');
  42.         $this->addSql('DROP TABLE customer_appointment');
  43.         $this->addSql('DROP TABLE customer_delivery');
  44.         $this->addSql('DROP TABLE platform_reception');
  45.         $this->addSql('DROP TABLE platform_shipping');
  46.         $this->addSql('DROP TABLE order_customer_appointment');
  47.         $this->addSql('DROP TABLE order_customer_delivery');
  48.         $this->addSql('DROP TABLE order_platform_reception');
  49.         $this->addSql('DROP TABLE order_platform_shipping');
  50.         $this->addSql('ALTER TABLE `order` DROP identifiant_colibri, DROP cash_on_delivery');
  51.     }
  52. }