migrations/Version20221006085314.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. /**
  7.  * Auto-generated Migration: Please modify to your needs!
  8.  */
  9. final class Version20221006085314 extends AbstractMigration
  10. {
  11.     public function getDescription(): string
  12.     {
  13.         return '';
  14.     }
  15.     public function up(Schema $schema): void
  16.     {
  17.         // this up() migration is auto-generated, please modify it to your needs
  18.         $this->addSql('CREATE TABLE company (id INT AUTO_INCREMENT NOT NULL, company_name VARCHAR(255) NOT NULL, company_number VARCHAR(255) DEFAULT NULL, vat_number VARCHAR(255) DEFAULT NULL, discr VARCHAR(255) NOT NULL, code VARCHAR(255) DEFAULT NULL, dsn VARCHAR(255) DEFAULT NULL, UNIQUE INDEX UNIQ_4FBF094F77153098 (code), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  19.         $this->addSql('CREATE TABLE email (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, code VARCHAR(255) NOT NULL, parameters JSON NOT NULL, UNIQUE INDEX UNIQ_E7927C7477153098 (code), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  20.         $this->addSql('CREATE TABLE notification (id INT AUTO_INCREMENT NOT NULL, user_id INT NOT NULL, sent_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', read_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', content VARCHAR(255) NOT NULL, route VARCHAR(255) NOT NULL, route_params LONGTEXT NOT NULL COMMENT \'(DC2Type:array)\', model VARCHAR(255) NOT NULL, INDEX IDX_BF5476CAA76ED395 (user_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  21.         $this->addSql('CREATE TABLE `order` (id INT AUTO_INCREMENT NOT NULL, account_id INT NOT NULL, shop_id INT NOT NULL, ordered_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', updated_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', state VARCHAR(255) NOT NULL, history LONGTEXT NOT NULL COMMENT \'(DC2Type:array)\', delivery_address_address VARCHAR(255) NOT NULL, delivery_address_rest_address LONGTEXT DEFAULT NULL, delivery_address_zip_code VARCHAR(255) NOT NULL, delivery_address_city VARCHAR(255) NOT NULL, delivery_address_country VARCHAR(255) NOT NULL, delivery_address_professional TINYINT(1) NOT NULL, delivery_address_company_name VARCHAR(255) DEFAULT NULL, delivery_address_first_name VARCHAR(255) NOT NULL, delivery_address_last_name VARCHAR(255) NOT NULL, delivery_address_phone VARCHAR(255) NOT NULL, delivery_address_email VARCHAR(255) NOT NULL, delivery_address_copy_emails JSON NOT NULL, delivery_address_blind_copy_emails JSON NOT NULL, billing_address_address VARCHAR(255) NOT NULL, billing_address_rest_address LONGTEXT DEFAULT NULL, billing_address_zip_code VARCHAR(255) NOT NULL, billing_address_city VARCHAR(255) NOT NULL, billing_address_country VARCHAR(255) NOT NULL, billing_address_professional TINYINT(1) NOT NULL, billing_address_company_name VARCHAR(255) DEFAULT NULL, billing_address_first_name VARCHAR(255) NOT NULL, billing_address_last_name VARCHAR(255) NOT NULL, billing_address_phone VARCHAR(255) NOT NULL, billing_address_email VARCHAR(255) NOT NULL, billing_address_copy_emails JSON NOT NULL, billing_address_blind_copy_emails JSON NOT NULL, main_address_address VARCHAR(255) NOT NULL, main_address_rest_address LONGTEXT DEFAULT NULL, main_address_zip_code VARCHAR(255) NOT NULL, main_address_city VARCHAR(255) NOT NULL, main_address_country VARCHAR(255) NOT NULL, main_address_professional TINYINT(1) NOT NULL, main_address_company_name VARCHAR(255) DEFAULT NULL, main_address_first_name VARCHAR(255) NOT NULL, main_address_last_name VARCHAR(255) NOT NULL, main_address_phone VARCHAR(255) NOT NULL, main_address_email VARCHAR(255) NOT NULL, main_address_copy_emails JSON NOT NULL, main_address_blind_copy_emails JSON NOT NULL, INDEX IDX_F52993989B6B5FBA (account_id), INDEX IDX_F52993984D16C4DD (shop_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  22.         $this->addSql('CREATE TABLE order_bill (id INT AUTO_INCREMENT NOT NULL, supplier_id INT NOT NULL, created_at DATE NOT NULL COMMENT \'(DC2Type:date_immutable)\', path VARCHAR(255) NOT NULL, INDEX IDX_37D023F42ADD6D8C (supplier_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  23.         $this->addSql('CREATE TABLE order_detail (id INT AUTO_INCREMENT NOT NULL, order_id INT NOT NULL, line_id INT NOT NULL, product_id INT NOT NULL, bill_id INT DEFAULT NULL, carrier_id INT DEFAULT NULL, state VARCHAR(255) NOT NULL, updated_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', history LONGTEXT NOT NULL COMMENT \'(DC2Type:array)\', tracking VARCHAR(255) DEFAULT NULL, INDEX IDX_ED896F468D9F6D38 (order_id), INDEX IDX_ED896F464D7B7542 (line_id), INDEX IDX_ED896F464584665A (product_id), INDEX IDX_ED896F461A8C12F5 (bill_id), INDEX IDX_ED896F4621DFC797 (carrier_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  24.         $this->addSql('CREATE TABLE order_line (id INT AUTO_INCREMENT NOT NULL, order_id INT NOT NULL, product_id INT NOT NULL, price_id INT NOT NULL, quantity INT NOT NULL, points INT NOT NULL, INDEX IDX_9CE58EE18D9F6D38 (order_id), INDEX IDX_9CE58EE14584665A (product_id), INDEX IDX_9CE58EE1D614C7E7 (price_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  25.         $this->addSql('CREATE TABLE `point_account` (id INT AUTO_INCREMENT NOT NULL, profile_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_CAE2AF68CCFA12B8 (profile_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  26.         $this->addSql('CREATE TABLE `point_operation` (id INT AUTO_INCREMENT NOT NULL, code VARCHAR(255) NOT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_BAAFC34377153098 (code), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  27.         $this->addSql('CREATE TABLE `point_payment_method` (id INT AUTO_INCREMENT NOT NULL, code VARCHAR(255) NOT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_BE91B36277153098 (code), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  28.         $this->addSql('CREATE TABLE `point_transaction` (id INT AUTO_INCREMENT NOT NULL, account_id INT NOT NULL, wallet_id INT DEFAULT NULL, operation_id INT NOT NULL, order_id INT DEFAULT NULL, detail_id INT DEFAULT NULL, transfer_id INT DEFAULT NULL, payment_method_id INT DEFAULT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', points INT NOT NULL, discr VARCHAR(255) NOT NULL, state VARCHAR(255) DEFAULT NULL, intern_reference VARCHAR(255) DEFAULT NULL, INDEX IDX_44E83A049B6B5FBA (account_id), INDEX IDX_44E83A04712520F3 (wallet_id), INDEX IDX_44E83A0444AC3583 (operation_id), INDEX IDX_44E83A048D9F6D38 (order_id), INDEX IDX_44E83A04D8D003BB (detail_id), INDEX IDX_44E83A04537048AF (transfer_id), INDEX IDX_44E83A045AA1164F (payment_method_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  29.         $this->addSql('CREATE TABLE `point_transfer` (id INT AUTO_INCREMENT NOT NULL, from_id INT NOT NULL, to_id INT NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', points INT NOT NULL, INDEX IDX_D251F9A278CED90B (from_id), INDEX IDX_D251F9A230354A65 (to_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  30.         $this->addSql('CREATE TABLE `point_transfer_transactions` (transfer_id INT NOT NULL, transaction_id INT NOT NULL, INDEX IDX_F84B2A59537048AF (transfer_id), INDEX IDX_F84B2A592FC0CB0F (transaction_id), PRIMARY KEY(transfer_id, transaction_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  31.         $this->addSql('CREATE TABLE `point_wallet` (id INT AUTO_INCREMENT NOT NULL, account_id INT NOT NULL, purchase_id INT NOT NULL, balance INT NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', expired_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_15CD65619B6B5FBA (account_id), INDEX IDX_15CD6561558FBEB9 (purchase_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  32.         $this->addSql('CREATE TABLE `program` (id INT AUTO_INCREMENT NOT NULL, client_id INT NOT NULL, name VARCHAR(255) NOT NULL, url VARCHAR(255) NOT NULL, started_at DATE DEFAULT NULL COMMENT \'(DC2Type:date_immutable)\', ended_at DATE DEFAULT NULL COMMENT \'(DC2Type:date_immutable)\', currency_to_point text NOT NULL, point_to_currency text NOT NULL, api_key VARCHAR(255) NOT NULL, email VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_92ED7784C912ED9D (api_key), INDEX IDX_92ED778419EB6921 (client_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  33.         $this->addSql('CREATE TABLE program_email (id INT AUTO_INCREMENT NOT NULL, email_id INT NOT NULL, program_id INT NOT NULL, template_id INT NOT NULL, INDEX IDX_79FB0F82A832C1C9 (email_id), INDEX IDX_79FB0F823EB8070A (program_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  34.         $this->addSql('CREATE TABLE `program_profile` (id INT AUTO_INCREMENT NOT NULL, program_id INT NOT NULL, name VARCHAR(255) NOT NULL, point_expiration varchar(255) NOT NULL, INDEX IDX_ABD52DB3EB8070A (program_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  35.         $this->addSql('CREATE TABLE `shop` (id INT AUTO_INCREMENT NOT NULL, price_valuation text NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  36.         $this->addSql('CREATE TABLE `shop_profiles` (shop_id INT NOT NULL, profile_id INT NOT NULL, INDEX IDX_50887FA64D16C4DD (shop_id), INDEX IDX_50887FA6CCFA12B8 (profile_id), PRIMARY KEY(shop_id, profile_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  37.         $this->addSql('CREATE TABLE `shop_brand` (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, logo VARCHAR(255) DEFAULT NULL, updated_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  38.         $this->addSql('CREATE TABLE `shop_feature` (id INT AUTO_INCREMENT NOT NULL, code VARCHAR(255) NOT NULL, name VARCHAR(255) NOT NULL, feature_type varchar(255) NOT NULL, UNIQUE INDEX UNIQ_1CE4354C77153098 (code), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  39.         $this->addSql('CREATE TABLE `shop_feature_value` (id INT AUTO_INCREMENT NOT NULL, feature_id INT NOT NULL, product_id INT DEFAULT NULL, updated_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', value LONGTEXT DEFAULT NULL, INDEX IDX_CA35C53260E4B879 (feature_id), INDEX IDX_CA35C5324584665A (product_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  40.         $this->addSql('CREATE TABLE shop_filter (id INT AUTO_INCREMENT NOT NULL, shop_id INT NOT NULL, path VARCHAR(255) NOT NULL, operator VARCHAR(255) NOT NULL, discr VARCHAR(255) NOT NULL, entity_class VARCHAR(255) DEFAULT NULL, identifiers LONGTEXT DEFAULT NULL COMMENT \'(DC2Type:array)\', identifier INT DEFAULT NULL, value DOUBLE PRECISION DEFAULT NULL, INDEX IDX_FA66799F4D16C4DD (shop_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  41.         $this->addSql('CREATE TABLE `shop_price` (id INT AUTO_INCREMENT NOT NULL, product_id INT NOT NULL, vat_id INT NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', purchase_price INT NOT NULL, retail_price INT NOT NULL, shipping_costs INT NOT NULL, eco_tax INT NOT NULL, extra_cost INT NOT NULL, INDEX IDX_DDE788B4584665A (product_id), INDEX IDX_DDE788BB5B63A6B (vat_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  42.         $this->addSql('CREATE TABLE `shop_product` (id INT AUTO_INCREMENT NOT NULL, supplier_id INT DEFAULT NULL, brand_id INT DEFAULT NULL, taxonomy_id INT DEFAULT NULL, supplier_brand_id INT DEFAULT NULL, supplier_taxonomy_id INT DEFAULT NULL, current_price_id INT DEFAULT NULL, reference VARCHAR(255) NOT NULL, updated_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', name VARCHAR(255) NOT NULL, description LONGTEXT NOT NULL, image VARCHAR(255) DEFAULT NULL, state VARCHAR(255) NOT NULL, states_history LONGTEXT NOT NULL COMMENT \'(DC2Type:array)\', stock INT NOT NULL, last_state VARCHAR(255) DEFAULT NULL, INDEX IDX_D07944872ADD6D8C (supplier_id), INDEX IDX_D079448744F5D008 (brand_id), INDEX IDX_D07944879557E6F6 (taxonomy_id), INDEX IDX_D0794487C97CB889 (supplier_brand_id), INDEX IDX_D07944874CE04DE7 (supplier_taxonomy_id), UNIQUE INDEX UNIQ_D07944874B6CBDCD (current_price_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  43.         $this->addSql('CREATE TABLE `shop_taxonomy` (id INT AUTO_INCREMENT NOT NULL, parent_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, lvl INT NOT NULL, lft INT NOT NULL, rgt INT NOT NULL, INDEX IDX_26AA42AB727ACA70 (parent_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  44.         $this->addSql('CREATE TABLE `shop_vat` (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, rate DOUBLE PRECISION NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  45.         $this->addSql('CREATE TABLE supplier_brand (id INT AUTO_INCREMENT NOT NULL, supplier_id INT NOT NULL, brand_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, INDEX IDX_C549FB722ADD6D8C (supplier_id), INDEX IDX_C549FB7244F5D008 (brand_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  46.         $this->addSql('CREATE TABLE supplier_taxonomy (id INT AUTO_INCREMENT NOT NULL, supplier_id INT NOT NULL, taxonomy_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, hierarchy LONGTEXT NOT NULL COMMENT \'(DC2Type:array)\', INDEX IDX_709BD0BC2ADD6D8C (supplier_id), INDEX IDX_709BD0BC9557E6F6 (taxonomy_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  47.         $this->addSql('CREATE TABLE `user` (id INT AUTO_INCREMENT NOT NULL, email VARCHAR(255) NOT NULL, password VARCHAR(255) NOT NULL, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, forgotten_password_token BINARY(16) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', suspended TINYINT(1) NOT NULL, roles LONGTEXT NOT NULL COMMENT \'(DC2Type:array)\', models LONGTEXT NOT NULL COMMENT \'(DC2Type:array)\', UNIQUE INDEX UNIQ_8D93D649E7927C74 (email), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  48. //        $this->addSql('CREATE TABLE messenger_messages (id BIGINT AUTO_INCREMENT NOT NULL, body LONGTEXT NOT NULL, headers LONGTEXT NOT NULL, queue_name VARCHAR(190) NOT NULL, created_at DATETIME NOT NULL, available_at DATETIME NOT NULL, delivered_at DATETIME DEFAULT NULL, INDEX IDX_75EA56E0FB7336F0 (queue_name), INDEX IDX_75EA56E0E3BD61CE (available_at), INDEX IDX_75EA56E016BA31DB (delivered_at), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  49.         $this->addSql('ALTER TABLE notification ADD CONSTRAINT FK_BF5476CAA76ED395 FOREIGN KEY (user_id) REFERENCES `user` (id) ON DELETE CASCADE');
  50.         $this->addSql('ALTER TABLE `order` ADD CONSTRAINT FK_F52993989B6B5FBA FOREIGN KEY (account_id) REFERENCES `point_account` (id) ON DELETE CASCADE');
  51.         $this->addSql('ALTER TABLE `order` ADD CONSTRAINT FK_F52993984D16C4DD FOREIGN KEY (shop_id) REFERENCES `shop` (id) ON DELETE CASCADE');
  52.         $this->addSql('ALTER TABLE order_bill ADD CONSTRAINT FK_37D023F42ADD6D8C FOREIGN KEY (supplier_id) REFERENCES company (id)');
  53.         $this->addSql('ALTER TABLE order_detail ADD CONSTRAINT FK_ED896F468D9F6D38 FOREIGN KEY (order_id) REFERENCES `order` (id) ON DELETE CASCADE');
  54.         $this->addSql('ALTER TABLE order_detail ADD CONSTRAINT FK_ED896F464D7B7542 FOREIGN KEY (line_id) REFERENCES order_line (id) ON DELETE CASCADE');
  55.         $this->addSql('ALTER TABLE order_detail ADD CONSTRAINT FK_ED896F464584665A FOREIGN KEY (product_id) REFERENCES `shop_product` (id)');
  56.         $this->addSql('ALTER TABLE order_detail ADD CONSTRAINT FK_ED896F461A8C12F5 FOREIGN KEY (bill_id) REFERENCES order_bill (id) ON DELETE SET NULL');
  57.         $this->addSql('ALTER TABLE order_detail ADD CONSTRAINT FK_ED896F4621DFC797 FOREIGN KEY (carrier_id) REFERENCES company (id)');
  58.         $this->addSql('ALTER TABLE order_line ADD CONSTRAINT FK_9CE58EE18D9F6D38 FOREIGN KEY (order_id) REFERENCES `order` (id) ON DELETE CASCADE');
  59.         $this->addSql('ALTER TABLE order_line ADD CONSTRAINT FK_9CE58EE14584665A FOREIGN KEY (product_id) REFERENCES `shop_product` (id)');
  60.         $this->addSql('ALTER TABLE order_line ADD CONSTRAINT FK_9CE58EE1D614C7E7 FOREIGN KEY (price_id) REFERENCES `shop_price` (id)');
  61.         $this->addSql('ALTER TABLE `point_account` ADD CONSTRAINT FK_CAE2AF68CCFA12B8 FOREIGN KEY (profile_id) REFERENCES `program_profile` (id) ON DELETE SET NULL');
  62.         $this->addSql('ALTER TABLE `point_transaction` ADD CONSTRAINT FK_44E83A049B6B5FBA FOREIGN KEY (account_id) REFERENCES `point_account` (id) ON DELETE CASCADE');
  63.         $this->addSql('ALTER TABLE `point_transaction` ADD CONSTRAINT FK_44E83A04712520F3 FOREIGN KEY (wallet_id) REFERENCES `point_wallet` (id) ON DELETE SET NULL');
  64.         $this->addSql('ALTER TABLE `point_transaction` ADD CONSTRAINT FK_44E83A0444AC3583 FOREIGN KEY (operation_id) REFERENCES `point_operation` (id)');
  65.         $this->addSql('ALTER TABLE `point_transaction` ADD CONSTRAINT FK_44E83A048D9F6D38 FOREIGN KEY (order_id) REFERENCES `order` (id)');
  66.         $this->addSql('ALTER TABLE `point_transaction` ADD CONSTRAINT FK_44E83A04D8D003BB FOREIGN KEY (detail_id) REFERENCES order_detail (id)');
  67.         $this->addSql('ALTER TABLE `point_transaction` ADD CONSTRAINT FK_44E83A04537048AF FOREIGN KEY (transfer_id) REFERENCES `point_transfer` (id)');
  68.         $this->addSql('ALTER TABLE `point_transaction` ADD CONSTRAINT FK_44E83A045AA1164F FOREIGN KEY (payment_method_id) REFERENCES `point_payment_method` (id)');
  69.         $this->addSql('ALTER TABLE `point_transfer` ADD CONSTRAINT FK_D251F9A278CED90B FOREIGN KEY (from_id) REFERENCES `point_account` (id) ON DELETE CASCADE');
  70.         $this->addSql('ALTER TABLE `point_transfer` ADD CONSTRAINT FK_D251F9A230354A65 FOREIGN KEY (to_id) REFERENCES `point_account` (id) ON DELETE CASCADE');
  71.         $this->addSql('ALTER TABLE `point_transfer_transactions` ADD CONSTRAINT FK_F84B2A59537048AF FOREIGN KEY (transfer_id) REFERENCES `point_transfer` (id) ON DELETE CASCADE');
  72.         $this->addSql('ALTER TABLE `point_transfer_transactions` ADD CONSTRAINT FK_F84B2A592FC0CB0F FOREIGN KEY (transaction_id) REFERENCES `point_transaction` (id) ON DELETE CASCADE');
  73.         $this->addSql('ALTER TABLE `point_wallet` ADD CONSTRAINT FK_15CD65619B6B5FBA FOREIGN KEY (account_id) REFERENCES `point_account` (id) ON DELETE CASCADE');
  74.         $this->addSql('ALTER TABLE `point_wallet` ADD CONSTRAINT FK_15CD6561558FBEB9 FOREIGN KEY (purchase_id) REFERENCES `point_transaction` (id) ON DELETE CASCADE');
  75.         $this->addSql('ALTER TABLE `program` ADD CONSTRAINT FK_92ED778419EB6921 FOREIGN KEY (client_id) REFERENCES company (id) ON DELETE CASCADE');
  76.         $this->addSql('ALTER TABLE program_email ADD CONSTRAINT FK_79FB0F82A832C1C9 FOREIGN KEY (email_id) REFERENCES email (id) ON DELETE CASCADE');
  77.         $this->addSql('ALTER TABLE program_email ADD CONSTRAINT FK_79FB0F823EB8070A FOREIGN KEY (program_id) REFERENCES `program` (id) ON DELETE CASCADE');
  78.         $this->addSql('ALTER TABLE `program_profile` ADD CONSTRAINT FK_ABD52DB3EB8070A FOREIGN KEY (program_id) REFERENCES `program` (id) ON DELETE CASCADE');
  79.         $this->addSql('ALTER TABLE `shop_profiles` ADD CONSTRAINT FK_50887FA64D16C4DD FOREIGN KEY (shop_id) REFERENCES `shop` (id) ON DELETE CASCADE');
  80.         $this->addSql('ALTER TABLE `shop_profiles` ADD CONSTRAINT FK_50887FA6CCFA12B8 FOREIGN KEY (profile_id) REFERENCES `program_profile` (id) ON DELETE CASCADE');
  81.         $this->addSql('ALTER TABLE `shop_feature_value` ADD CONSTRAINT FK_CA35C53260E4B879 FOREIGN KEY (feature_id) REFERENCES `shop_feature` (id) ON DELETE CASCADE');
  82.         $this->addSql('ALTER TABLE `shop_feature_value` ADD CONSTRAINT FK_CA35C5324584665A FOREIGN KEY (product_id) REFERENCES `shop_product` (id) ON DELETE CASCADE');
  83.         $this->addSql('ALTER TABLE shop_filter ADD CONSTRAINT FK_FA66799F4D16C4DD FOREIGN KEY (shop_id) REFERENCES `shop` (id) ON DELETE CASCADE');
  84.         $this->addSql('ALTER TABLE `shop_price` ADD CONSTRAINT FK_DDE788B4584665A FOREIGN KEY (product_id) REFERENCES `shop_product` (id) ON DELETE CASCADE');
  85.         $this->addSql('ALTER TABLE `shop_price` ADD CONSTRAINT FK_DDE788BB5B63A6B FOREIGN KEY (vat_id) REFERENCES `shop_vat` (id)');
  86.         $this->addSql('ALTER TABLE `shop_product` ADD CONSTRAINT FK_D07944872ADD6D8C FOREIGN KEY (supplier_id) REFERENCES company (id)');
  87.         $this->addSql('ALTER TABLE `shop_product` ADD CONSTRAINT FK_D079448744F5D008 FOREIGN KEY (brand_id) REFERENCES `shop_brand` (id)');
  88.         $this->addSql('ALTER TABLE `shop_product` ADD CONSTRAINT FK_D07944879557E6F6 FOREIGN KEY (taxonomy_id) REFERENCES `shop_taxonomy` (id)');
  89.         $this->addSql('ALTER TABLE `shop_product` ADD CONSTRAINT FK_D0794487C97CB889 FOREIGN KEY (supplier_brand_id) REFERENCES supplier_brand (id)');
  90.         $this->addSql('ALTER TABLE `shop_product` ADD CONSTRAINT FK_D07944874CE04DE7 FOREIGN KEY (supplier_taxonomy_id) REFERENCES supplier_taxonomy (id)');
  91.         $this->addSql('ALTER TABLE `shop_product` ADD CONSTRAINT FK_D07944874B6CBDCD FOREIGN KEY (current_price_id) REFERENCES `shop_price` (id)');
  92.         $this->addSql('ALTER TABLE `shop_taxonomy` ADD CONSTRAINT FK_26AA42AB727ACA70 FOREIGN KEY (parent_id) REFERENCES `shop_taxonomy` (id)');
  93.         $this->addSql('ALTER TABLE supplier_brand ADD CONSTRAINT FK_C549FB722ADD6D8C FOREIGN KEY (supplier_id) REFERENCES company (id)');
  94.         $this->addSql('ALTER TABLE supplier_brand ADD CONSTRAINT FK_C549FB7244F5D008 FOREIGN KEY (brand_id) REFERENCES `shop_brand` (id)');
  95.         $this->addSql('ALTER TABLE supplier_taxonomy ADD CONSTRAINT FK_709BD0BC2ADD6D8C FOREIGN KEY (supplier_id) REFERENCES company (id)');
  96.         $this->addSql('ALTER TABLE supplier_taxonomy ADD CONSTRAINT FK_709BD0BC9557E6F6 FOREIGN KEY (taxonomy_id) REFERENCES `shop_taxonomy` (id)');
  97.     }
  98.     public function down(Schema $schema): void
  99.     {
  100.         // this down() migration is auto-generated, please modify it to your needs
  101.         $this->addSql('ALTER TABLE order_bill DROP FOREIGN KEY FK_37D023F42ADD6D8C');
  102.         $this->addSql('ALTER TABLE order_detail DROP FOREIGN KEY FK_ED896F4621DFC797');
  103.         $this->addSql('ALTER TABLE `program` DROP FOREIGN KEY FK_92ED778419EB6921');
  104.         $this->addSql('ALTER TABLE `shop_product` DROP FOREIGN KEY FK_D07944872ADD6D8C');
  105.         $this->addSql('ALTER TABLE supplier_brand DROP FOREIGN KEY FK_C549FB722ADD6D8C');
  106.         $this->addSql('ALTER TABLE supplier_taxonomy DROP FOREIGN KEY FK_709BD0BC2ADD6D8C');
  107.         $this->addSql('ALTER TABLE program_email DROP FOREIGN KEY FK_79FB0F82A832C1C9');
  108.         $this->addSql('ALTER TABLE order_detail DROP FOREIGN KEY FK_ED896F468D9F6D38');
  109.         $this->addSql('ALTER TABLE order_line DROP FOREIGN KEY FK_9CE58EE18D9F6D38');
  110.         $this->addSql('ALTER TABLE `point_transaction` DROP FOREIGN KEY FK_44E83A048D9F6D38');
  111.         $this->addSql('ALTER TABLE order_detail DROP FOREIGN KEY FK_ED896F461A8C12F5');
  112.         $this->addSql('ALTER TABLE `point_transaction` DROP FOREIGN KEY FK_44E83A04D8D003BB');
  113.         $this->addSql('ALTER TABLE order_detail DROP FOREIGN KEY FK_ED896F464D7B7542');
  114.         $this->addSql('ALTER TABLE `order` DROP FOREIGN KEY FK_F52993989B6B5FBA');
  115.         $this->addSql('ALTER TABLE `point_transaction` DROP FOREIGN KEY FK_44E83A049B6B5FBA');
  116.         $this->addSql('ALTER TABLE `point_transfer` DROP FOREIGN KEY FK_D251F9A278CED90B');
  117.         $this->addSql('ALTER TABLE `point_transfer` DROP FOREIGN KEY FK_D251F9A230354A65');
  118.         $this->addSql('ALTER TABLE `point_wallet` DROP FOREIGN KEY FK_15CD65619B6B5FBA');
  119.         $this->addSql('ALTER TABLE `point_transaction` DROP FOREIGN KEY FK_44E83A0444AC3583');
  120.         $this->addSql('ALTER TABLE `point_transaction` DROP FOREIGN KEY FK_44E83A045AA1164F');
  121.         $this->addSql('ALTER TABLE `point_transfer_transactions` DROP FOREIGN KEY FK_F84B2A592FC0CB0F');
  122.         $this->addSql('ALTER TABLE `point_wallet` DROP FOREIGN KEY FK_15CD6561558FBEB9');
  123.         $this->addSql('ALTER TABLE `point_transaction` DROP FOREIGN KEY FK_44E83A04537048AF');
  124.         $this->addSql('ALTER TABLE `point_transfer_transactions` DROP FOREIGN KEY FK_F84B2A59537048AF');
  125.         $this->addSql('ALTER TABLE `point_transaction` DROP FOREIGN KEY FK_44E83A04712520F3');
  126.         $this->addSql('ALTER TABLE program_email DROP FOREIGN KEY FK_79FB0F823EB8070A');
  127.         $this->addSql('ALTER TABLE `program_profile` DROP FOREIGN KEY FK_ABD52DB3EB8070A');
  128.         $this->addSql('ALTER TABLE `point_account` DROP FOREIGN KEY FK_CAE2AF68CCFA12B8');
  129.         $this->addSql('ALTER TABLE `shop_profiles` DROP FOREIGN KEY FK_50887FA6CCFA12B8');
  130.         $this->addSql('ALTER TABLE `order` DROP FOREIGN KEY FK_F52993984D16C4DD');
  131.         $this->addSql('ALTER TABLE `shop_profiles` DROP FOREIGN KEY FK_50887FA64D16C4DD');
  132.         $this->addSql('ALTER TABLE shop_filter DROP FOREIGN KEY FK_FA66799F4D16C4DD');
  133.         $this->addSql('ALTER TABLE `shop_product` DROP FOREIGN KEY FK_D079448744F5D008');
  134.         $this->addSql('ALTER TABLE supplier_brand DROP FOREIGN KEY FK_C549FB7244F5D008');
  135.         $this->addSql('ALTER TABLE `shop_feature_value` DROP FOREIGN KEY FK_CA35C53260E4B879');
  136.         $this->addSql('ALTER TABLE order_line DROP FOREIGN KEY FK_9CE58EE1D614C7E7');
  137.         $this->addSql('ALTER TABLE `shop_product` DROP FOREIGN KEY FK_D07944874B6CBDCD');
  138.         $this->addSql('ALTER TABLE order_detail DROP FOREIGN KEY FK_ED896F464584665A');
  139.         $this->addSql('ALTER TABLE order_line DROP FOREIGN KEY FK_9CE58EE14584665A');
  140.         $this->addSql('ALTER TABLE `shop_feature_value` DROP FOREIGN KEY FK_CA35C5324584665A');
  141.         $this->addSql('ALTER TABLE `shop_price` DROP FOREIGN KEY FK_DDE788B4584665A');
  142.         $this->addSql('ALTER TABLE `shop_product` DROP FOREIGN KEY FK_D07944879557E6F6');
  143.         $this->addSql('ALTER TABLE `shop_taxonomy` DROP FOREIGN KEY FK_26AA42AB727ACA70');
  144.         $this->addSql('ALTER TABLE supplier_taxonomy DROP FOREIGN KEY FK_709BD0BC9557E6F6');
  145.         $this->addSql('ALTER TABLE `shop_price` DROP FOREIGN KEY FK_DDE788BB5B63A6B');
  146.         $this->addSql('ALTER TABLE `shop_product` DROP FOREIGN KEY FK_D0794487C97CB889');
  147.         $this->addSql('ALTER TABLE `shop_product` DROP FOREIGN KEY FK_D07944874CE04DE7');
  148.         $this->addSql('ALTER TABLE notification DROP FOREIGN KEY FK_BF5476CAA76ED395');
  149.         $this->addSql('DROP TABLE company');
  150.         $this->addSql('DROP TABLE email');
  151.         $this->addSql('DROP TABLE notification');
  152.         $this->addSql('DROP TABLE `order`');
  153.         $this->addSql('DROP TABLE order_bill');
  154.         $this->addSql('DROP TABLE order_detail');
  155.         $this->addSql('DROP TABLE order_line');
  156.         $this->addSql('DROP TABLE `point_account`');
  157.         $this->addSql('DROP TABLE `point_operation`');
  158.         $this->addSql('DROP TABLE `point_payment_method`');
  159.         $this->addSql('DROP TABLE `point_transaction`');
  160.         $this->addSql('DROP TABLE `point_transfer`');
  161.         $this->addSql('DROP TABLE `point_transfer_transactions`');
  162.         $this->addSql('DROP TABLE `point_wallet`');
  163.         $this->addSql('DROP TABLE `program`');
  164.         $this->addSql('DROP TABLE program_email');
  165.         $this->addSql('DROP TABLE `program_profile`');
  166.         $this->addSql('DROP TABLE `shop`');
  167.         $this->addSql('DROP TABLE `shop_profiles`');
  168.         $this->addSql('DROP TABLE `shop_brand`');
  169.         $this->addSql('DROP TABLE `shop_feature`');
  170.         $this->addSql('DROP TABLE `shop_feature_value`');
  171.         $this->addSql('DROP TABLE shop_filter');
  172.         $this->addSql('DROP TABLE `shop_price`');
  173.         $this->addSql('DROP TABLE `shop_product`');
  174.         $this->addSql('DROP TABLE `shop_taxonomy`');
  175.         $this->addSql('DROP TABLE `shop_vat`');
  176.         $this->addSql('DROP TABLE supplier_brand');
  177.         $this->addSql('DROP TABLE supplier_taxonomy');
  178.         $this->addSql('DROP TABLE `user`');
  179.         $this->addSql('DROP TABLE messenger_messages');
  180.     }
  181. }