migrations/Version20150112214358.php line 1

Open in your IDE?
  1. <?php
  2. namespace DoctrineMigrations;
  3. use Doctrine\DBAL\Schema\Schema;
  4. use Doctrine\Migrations\AbstractMigration;
  5. /**
  6.  * Auto-generated Migration: Please modify to your needs!
  7.  */
  8. class Version20150112214358 extends AbstractMigration
  9. {
  10.     public function up(Schema $schema): void
  11.     {
  12.         // this up() migration is auto-generated, please modify it to your needs
  13.         $this->abortIf($this->connection->getDatabasePlatform()->getName() != 'mysql''Migration can only be executed safely on \'mysql\'.');
  14.         $this->addSql('CREATE TABLE truck_contact (truck_id INT NOT NULL, contact_id INT NOT NULL, INDEX IDX_8BD3C96CC6957CCE (truck_id), INDEX IDX_8BD3C96CE7A1254A (contact_id), PRIMARY KEY(truck_id, contact_id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB');
  15.         $this->addSql('CREATE TABLE estimate_contact (estimate_id INT NOT NULL, contact_id INT NOT NULL, INDEX IDX_51DE5AC285F23082 (estimate_id), INDEX IDX_51DE5AC2E7A1254A (contact_id), PRIMARY KEY(estimate_id, contact_id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB');
  16.         $this->addSql('CREATE TABLE estimate_truck (id INT AUTO_INCREMENT NOT NULL, customer_id INT DEFAULT NULL, model_id INT DEFAULT NULL, estimate_id INT DEFAULT NULL, client_flt_num LONGTEXT DEFAULT NULL, contract_hire TINYINT(1) DEFAULT NULL, casual_hire TINYINT(1) DEFAULT NULL, hire_term INT DEFAULT NULL, hire_rate NUMERIC(8, 2) DEFAULT NULL, max_utilisation LONGTEXT DEFAULT NULL, purchased TINYINT(1) NOT NULL, purchased_date DATETIME DEFAULT NULL, hirable TINYINT(1) NOT NULL, sale_price NUMERIC(8, 2) DEFAULT NULL, hire_price_monthly NUMERIC(8, 2) DEFAULT NULL, maintenance_expenditure NUMERIC(8, 2) DEFAULT NULL, expected_utilisation LONGTEXT DEFAULT NULL, serial LONGTEXT DEFAULT NULL, maintenance_revenue NUMERIC(8, 2) DEFAULT NULL, deletedAt DATETIME DEFAULT NULL, last_service DATETIME DEFAULT NULL, last_loler DATETIME DEFAULT NULL, loler_interval INT DEFAULT NULL, service_interval INT DEFAULT NULL, warranty LONGTEXT DEFAULT NULL, yom INT DEFAULT NULL, maintenance_start_date DATETIME DEFAULT NULL, warranty_start_date DATETIME DEFAULT NULL, contract_hire_start_date DATETIME DEFAULT NULL, casual_hire_start_date DATETIME DEFAULT NULL, maintenance_duration INT DEFAULT NULL, purchase_maintenance TINYINT(1) DEFAULT NULL, mast TINYTEXT DEFAULT NULL, mastHeight INT DEFAULT NULL, hydraulics LONGTEXT DEFAULT NULL, attachments LONGTEXT DEFAULT NULL, weather_protection LONGTEXT DEFAULT NULL, tyre_type LONGTEXT DEFAULT NULL, notes LONGTEXT DEFAULT NULL, performance_indicator LONGTEXT DEFAULT NULL, attachment_model_num LONGTEXT DEFAULT NULL, fuel LONGTEXT DEFAULT NULL, siteAddress_id INT DEFAULT NULL, INDEX IDX_BA8DC2C59395C3F3 (customer_id), INDEX IDX_BA8DC2C57975B7E7 (model_id), INDEX IDX_BA8DC2C5917C7BCD (siteAddress_id), INDEX IDX_BA8DC2C585F23082 (estimate_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB');
  17.         $this->addSql('CREATE TABLE visit_contact (visit_id INT NOT NULL, contact_id INT NOT NULL, INDEX IDX_1AEBE2FF75FA0FF2 (visit_id), INDEX IDX_1AEBE2FFE7A1254A (contact_id), PRIMARY KEY(visit_id, contact_id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB');
  18.         $this->addSql('CREATE TABLE job_contact (job_id INT NOT NULL, contact_id INT NOT NULL, INDEX IDX_D68D51A3BE04EA9 (job_id), INDEX IDX_D68D51A3E7A1254A (contact_id), PRIMARY KEY(job_id, contact_id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB');
  19.         $this->addSql('CREATE TABLE supplierstock_contact (supplierstock_id INT NOT NULL, contact_id INT NOT NULL, INDEX IDX_65F6036BF8E0F472 (supplierstock_id), INDEX IDX_65F6036BE7A1254A (contact_id), PRIMARY KEY(supplierstock_id, contact_id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB');
  20.         $this->addSql('CREATE TABLE lead_contact (lead_id INT NOT NULL, contact_id INT NOT NULL, INDEX IDX_15ACBA5655458D (lead_id), INDEX IDX_15ACBA56E7A1254A (contact_id), PRIMARY KEY(lead_id, contact_id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB');
  21.         $this->addSql('ALTER TABLE truck_contact ADD CONSTRAINT FK_8BD3C96CC6957CCE FOREIGN KEY (truck_id) REFERENCES truck (id) ON DELETE CASCADE');
  22.         $this->addSql('ALTER TABLE truck_contact ADD CONSTRAINT FK_8BD3C96CE7A1254A FOREIGN KEY (contact_id) REFERENCES contact (id) ON DELETE CASCADE');
  23.         $this->addSql('ALTER TABLE estimate_contact ADD CONSTRAINT FK_51DE5AC285F23082 FOREIGN KEY (estimate_id) REFERENCES estimate (id) ON DELETE CASCADE');
  24.         $this->addSql('ALTER TABLE estimate_contact ADD CONSTRAINT FK_51DE5AC2E7A1254A FOREIGN KEY (contact_id) REFERENCES contact (id) ON DELETE CASCADE');
  25.         $this->addSql('ALTER TABLE estimate_truck ADD CONSTRAINT FK_BA8DC2C59395C3F3 FOREIGN KEY (customer_id) REFERENCES customer (id)');
  26.         $this->addSql('ALTER TABLE estimate_truck ADD CONSTRAINT FK_BA8DC2C57975B7E7 FOREIGN KEY (model_id) REFERENCES truck_model (id)');
  27.         $this->addSql('ALTER TABLE estimate_truck ADD CONSTRAINT FK_BA8DC2C5917C7BCD FOREIGN KEY (siteAddress_id) REFERENCES site_address (id)');
  28.         $this->addSql('ALTER TABLE estimate_truck ADD CONSTRAINT FK_BA8DC2C585F23082 FOREIGN KEY (estimate_id) REFERENCES estimate (id)');
  29.         $this->addSql('ALTER TABLE visit_contact ADD CONSTRAINT FK_1AEBE2FF75FA0FF2 FOREIGN KEY (visit_id) REFERENCES visit (id) ON DELETE CASCADE');
  30.         $this->addSql('ALTER TABLE visit_contact ADD CONSTRAINT FK_1AEBE2FFE7A1254A FOREIGN KEY (contact_id) REFERENCES contact (id) ON DELETE CASCADE');
  31.         $this->addSql('ALTER TABLE job_contact ADD CONSTRAINT FK_D68D51A3BE04EA9 FOREIGN KEY (job_id) REFERENCES job (id) ON DELETE CASCADE');
  32.         $this->addSql('ALTER TABLE job_contact ADD CONSTRAINT FK_D68D51A3E7A1254A FOREIGN KEY (contact_id) REFERENCES contact (id) ON DELETE CASCADE');
  33.         $this->addSql('ALTER TABLE supplierstock_contact ADD CONSTRAINT FK_65F6036BF8E0F472 FOREIGN KEY (supplierstock_id) REFERENCES supplier_stock (id) ON DELETE CASCADE');
  34.         $this->addSql('ALTER TABLE supplierstock_contact ADD CONSTRAINT FK_65F6036BE7A1254A FOREIGN KEY (contact_id) REFERENCES contact (id) ON DELETE CASCADE');
  35.         $this->addSql('ALTER TABLE lead_contact ADD CONSTRAINT FK_15ACBA5655458D FOREIGN KEY (lead_id) REFERENCES leads (id) ON DELETE CASCADE');
  36.         $this->addSql('ALTER TABLE lead_contact ADD CONSTRAINT FK_15ACBA56E7A1254A FOREIGN KEY (contact_id) REFERENCES contact (id) ON DELETE CASCADE');
  37.         $this->addSql('ALTER TABLE estimate ADD lead_id INT DEFAULT NULL, ADD is_lead TINYINT(1) NOT NULL');
  38.         $this->addSql('ALTER TABLE estimate ADD CONSTRAINT FK_D2EA460755458D FOREIGN KEY (lead_id) REFERENCES leads (id)');
  39.         $this->addSql('CREATE INDEX IDX_D2EA460755458D ON estimate (lead_id)');
  40.         $this->addSql('ALTER TABLE customer ADD is_lead TINYINT(1) NOT NULL');
  41.         $this->addSql('ALTER TABLE contact DROP FOREIGN KEY FK_4C62E638C6957CCE');
  42.         $this->addSql('DROP INDEX IDX_4C62E638C6957CCE ON contact');
  43.         $this->addSql('ALTER TABLE contact CHANGE truck_id supplier_id INT DEFAULT NULL');
  44.         $this->addSql('ALTER TABLE contact ADD CONSTRAINT FK_4C62E6382ADD6D8C FOREIGN KEY (supplier_id) REFERENCES supplier (id)');
  45.         $this->addSql('CREATE INDEX IDX_4C62E6382ADD6D8C ON contact (supplier_id)');
  46.         $this->addSql('ALTER TABLE leads ADD initial_contact DATETIME DEFAULT NULL, ADD last_contact DATETIME DEFAULT NULL, ADD completion_stage INT NOT NULL, DROP initialContact, DROP lastContact, CHANGE webformenquiry future_target TINYINT(1) NOT NULL');
  47.     }
  48.     public function down(Schema $schema): void
  49.     {
  50.         // this down() migration is auto-generated, please modify it to your needs
  51.         $this->abortIf($this->connection->getDatabasePlatform()->getName() != 'mysql''Migration can only be executed safely on \'mysql\'.');
  52.         $this->addSql('DROP TABLE truck_contact');
  53.         $this->addSql('DROP TABLE estimate_contact');
  54.         $this->addSql('DROP TABLE estimate_truck');
  55.         $this->addSql('DROP TABLE visit_contact');
  56.         $this->addSql('DROP TABLE job_contact');
  57.         $this->addSql('DROP TABLE supplierstock_contact');
  58.         $this->addSql('DROP TABLE lead_contact');
  59.         $this->addSql('ALTER TABLE contact DROP FOREIGN KEY FK_4C62E6382ADD6D8C');
  60.         $this->addSql('DROP INDEX IDX_4C62E6382ADD6D8C ON contact');
  61.         $this->addSql('ALTER TABLE contact CHANGE supplier_id truck_id INT DEFAULT NULL');
  62.         $this->addSql('ALTER TABLE contact ADD CONSTRAINT FK_4C62E638C6957CCE FOREIGN KEY (truck_id) REFERENCES truck (id)');
  63.         $this->addSql('CREATE INDEX IDX_4C62E638C6957CCE ON contact (truck_id)');
  64.         $this->addSql('ALTER TABLE customer DROP is_lead');
  65.         $this->addSql('ALTER TABLE estimate DROP FOREIGN KEY FK_D2EA460755458D');
  66.         $this->addSql('DROP INDEX IDX_D2EA460755458D ON estimate');
  67.         $this->addSql('ALTER TABLE estimate DROP lead_id, DROP is_lead');
  68.         $this->addSql('ALTER TABLE leads ADD initialContact DATETIME NOT NULL, ADD lastContact DATETIME NOT NULL, DROP initial_contact, DROP last_contact, DROP completion_stage, CHANGE future_target webFormEnquiry TINYINT(1) NOT NULL');
  69.     }
  70. }