<?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 Version20230108234624 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('CREATE TABLE customer (id INT AUTO_INCREMENT NOT NULL, brand_id INT NOT NULL, first_name VARCHAR(64) NOT NULL, last_name VARCHAR(128) NOT NULL, email VARCHAR(128) NOT NULL, phone VARCHAR(32) DEFAULT NULL, source VARCHAR(64) DEFAULT NULL, sex VARCHAR(32) DEFAULT NULL, birth_date DATE DEFAULT NULL, internal_note LONGTEXT DEFAULT NULL, email_agreement TINYINT(1) DEFAULT NULL, phone_agreement TINYINT(1) DEFAULT NULL, sms_agreement TINYINT(1) DEFAULT NULL, INDEX IDX_81398E0944F5D008 (brand_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE customer_address (id INT AUTO_INCREMENT NOT NULL, customer_id INT NOT NULL, zone_id INT DEFAULT NULL, type VARCHAR(64) NOT NULL, name VARCHAR(128) DEFAULT NULL, country VARCHAR(255) DEFAULT NULL, region VARCHAR(255) DEFAULT NULL, street VARCHAR(255) DEFAULT NULL, house_number VARCHAR(32) DEFAULT NULL, local_number VARCHAR(32) DEFAULT NULL, zip_code VARCHAR(16) DEFAULT NULL, city VARCHAR(255) DEFAULT NULL, INDEX IDX_1193CB3F9395C3F3 (customer_id), INDEX IDX_1193CB3F9F2C3FAB (zone_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE `order` (id INT AUTO_INCREMENT NOT NULL, customer_id INT NOT NULL, brand_id INT NOT NULL, diet_id INT NOT NULL, diet_calorific_id INT NOT NULL, diet_size_id INT NOT NULL, is_start_set TINYINT(1) DEFAULT NULL, include_weekends TINYINT(1) DEFAULT NULL, length INT NOT NULL, created_at DATETIME NOT NULL, first_delivery_date DATE NOT NULL, is_completed TINYINT(1) DEFAULT NULL, summary_value NUMERIC(10, 2) NOT NULL, summary_payment NUMERIC(10, 2) DEFAULT NULL, INDEX IDX_F52993989395C3F3 (customer_id), INDEX IDX_F529939844F5D008 (brand_id), INDEX IDX_F5299398E1E13ACE (diet_id), INDEX IDX_F5299398D6858B3 (diet_calorific_id), INDEX IDX_F5299398B97EF27B (diet_size_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE order_addon (id INT AUTO_INCREMENT NOT NULL, parent_order_id INT NOT NULL, quantity NUMERIC(10, 2) NOT NULL, price NUMERIC(10, 2) NOT NULL, summary_price NUMERIC(10, 2) NOT NULL, first_delivery_date DATE DEFAULT NULL, INDEX IDX_521BE5821252C1E9 (parent_order_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE customer ADD CONSTRAINT FK_81398E0944F5D008 FOREIGN KEY (brand_id) REFERENCES brand (id)');
$this->addSql('ALTER TABLE customer_address ADD CONSTRAINT FK_1193CB3F9395C3F3 FOREIGN KEY (customer_id) REFERENCES customer (id)');
$this->addSql('ALTER TABLE customer_address ADD CONSTRAINT FK_1193CB3F9F2C3FAB FOREIGN KEY (zone_id) REFERENCES zone (id)');
$this->addSql('ALTER TABLE `order` ADD CONSTRAINT FK_F52993989395C3F3 FOREIGN KEY (customer_id) REFERENCES customer (id)');
$this->addSql('ALTER TABLE `order` ADD CONSTRAINT FK_F529939844F5D008 FOREIGN KEY (brand_id) REFERENCES brand (id)');
$this->addSql('ALTER TABLE `order` ADD CONSTRAINT FK_F5299398E1E13ACE FOREIGN KEY (diet_id) REFERENCES diet (id)');
$this->addSql('ALTER TABLE `order` ADD CONSTRAINT FK_F5299398D6858B3 FOREIGN KEY (diet_calorific_id) REFERENCES diet_calorific (id)');
$this->addSql('ALTER TABLE `order` ADD CONSTRAINT FK_F5299398B97EF27B FOREIGN KEY (diet_size_id) REFERENCES diet_size (id)');
$this->addSql('ALTER TABLE order_addon ADD CONSTRAINT FK_521BE5821252C1E9 FOREIGN KEY (parent_order_id) REFERENCES `order` (id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE customer_address DROP FOREIGN KEY FK_1193CB3F9395C3F3');
$this->addSql('ALTER TABLE `order` DROP FOREIGN KEY FK_F52993989395C3F3');
$this->addSql('ALTER TABLE order_addon DROP FOREIGN KEY FK_521BE5821252C1E9');
$this->addSql('DROP TABLE customer');
$this->addSql('DROP TABLE customer_address');
$this->addSql('DROP TABLE `order`');
$this->addSql('DROP TABLE order_addon');
}
}