Completed
Push — Recipes ( c0466a...7632b6 )
by Laurent
04:22
created

Version20190319211015   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 31
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 16
dl 0
loc 31
rs 10
c 0
b 0
f 0
wmc 3

3 Methods

Rating   Name   Duplication   Size   Complexity  
A getDescription() 0 3 1
A up() 0 14 1
A down() 0 8 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace DoctrineMigrations;
6
7
use Doctrine\DBAL\Schema\Schema;
8
use Doctrine\Migrations\AbstractMigration;
9
10
/**
11
 * Auto-generated Migration: Please modify to your needs!
12
 */
13
final class Version20190319211015 extends AbstractMigration
14
{
15
    public function getDescription() : string
16
    {
17
        return '';
18
    }
19
20
    public function up(Schema $schema) : void
21
    {
22
        // this up() migration is auto-generated, please modify it to your needs
23
        $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql', 'Migration can only be executed safely on \'mysql\'.');
24
25
        $this->addSql('CREATE TABLE app_article (id INT AUTO_INCREMENT NOT NULL, supplier_id INT DEFAULT NULL, unit_storage_id INT DEFAULT NULL, unit_working_id INT DEFAULT NULL, tva_id INT DEFAULT NULL, family_log_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, packaging NUMERIC(7, 3) NOT NULL, price NUMERIC(7, 3) NOT NULL, quantity NUMERIC(7, 3) DEFAULT \'0\', minstock NUMERIC(7, 3) NOT NULL, active TINYINT(1) NOT NULL, slug VARCHAR(128) NOT NULL, create_at DATETIME NOT NULL, update_at DATETIME DEFAULT NULL, delete_at DATETIME DEFAULT NULL, UNIQUE INDEX UNIQ_EF678E2B989D9B62 (slug), INDEX IDX_EF678E2B2ADD6D8C (supplier_id), INDEX IDX_EF678E2B5F6D4D50 (unit_storage_id), INDEX IDX_EF678E2B26A1E4F6 (unit_working_id), INDEX IDX_EF678E2B4D79775F (tva_id), INDEX IDX_EF678E2B23570A93 (family_log_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE = InnoDB');
26
        $this->addSql('CREATE TABLE app_article_zonestorage (article_id INT NOT NULL, zone_storage_id INT NOT NULL, INDEX IDX_566756677294869C (article_id), INDEX IDX_566756677C24C870 (zone_storage_id), PRIMARY KEY(article_id, zone_storage_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE = InnoDB');
27
        $this->addSql('ALTER TABLE app_article ADD CONSTRAINT FK_EF678E2B2ADD6D8C FOREIGN KEY (supplier_id) REFERENCES app_supplier (id)');
28
        $this->addSql('ALTER TABLE app_article ADD CONSTRAINT FK_EF678E2B5F6D4D50 FOREIGN KEY (unit_storage_id) REFERENCES app_unit (id)');
29
        $this->addSql('ALTER TABLE app_article ADD CONSTRAINT FK_EF678E2B26A1E4F6 FOREIGN KEY (unit_working_id) REFERENCES app_unit (id)');
30
        $this->addSql('ALTER TABLE app_article ADD CONSTRAINT FK_EF678E2B4D79775F FOREIGN KEY (tva_id) REFERENCES app_tva (id)');
31
        $this->addSql('ALTER TABLE app_article ADD CONSTRAINT FK_EF678E2B23570A93 FOREIGN KEY (family_log_id) REFERENCES app_familylog (id)');
32
        $this->addSql('ALTER TABLE app_article_zonestorage ADD CONSTRAINT FK_566756677294869C FOREIGN KEY (article_id) REFERENCES app_article (id) ON DELETE CASCADE');
33
        $this->addSql('ALTER TABLE app_article_zonestorage ADD CONSTRAINT FK_566756677C24C870 FOREIGN KEY (zone_storage_id) REFERENCES app_zonestorage (id) ON DELETE CASCADE');
34
    }
35
36
    public function down(Schema $schema) : void
37
    {
38
        // this down() migration is auto-generated, please modify it to your needs
39
        $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql', 'Migration can only be executed safely on \'mysql\'.');
40
41
        $this->addSql('ALTER TABLE app_article_zonestorage DROP FOREIGN KEY FK_566756677294869C');
42
        $this->addSql('DROP TABLE app_article');
43
        $this->addSql('DROP TABLE app_article_zonestorage');
44
    }
45
}
46