<?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 Version20200813043309 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->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql', 'Migration can only be executed safely on \'mysql\'.');
$this->addSql('CREATE TABLE order_shipping (id INT AUTO_INCREMENT NOT NULL, vehicle_id INT DEFAULT NULL, created_by_id INT DEFAULT NULL, updated_by_id INT DEFAULT NULL, order_id INT NOT NULL, date DATETIME NOT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, INDEX IDX_CCE4F595545317D1 (vehicle_id), INDEX IDX_CCE4F595B03A8386 (created_by_id), INDEX IDX_CCE4F595896DBBDE (updated_by_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE order_shipping ADD CONSTRAINT FK_CCE4F595545317D1 FOREIGN KEY (vehicle_id) REFERENCES vehicle (id)');
$this->addSql('ALTER TABLE order_shipping ADD CONSTRAINT FK_CCE4F595B03A8386 FOREIGN KEY (created_by_id) REFERENCES users (id)');
$this->addSql('ALTER TABLE order_shipping ADD CONSTRAINT FK_CCE4F595896DBBDE FOREIGN KEY (updated_by_id) REFERENCES users (id)');
$this->addSql('INSERT INTO order_shipping(order_id, vehicle_id, `date`, created_at, updated_at)
SELECT orders.id, orders.mobile_id, orders.delivery_date, orders.delivery_date, orders.delivery_date FROM orders
WHERE state <> \'Pendiente\' AND state <> \'Anulado\'');
$this->addSql('ALTER TABLE orders DROP mobile_id');
}
public function down(Schema $schema) : void
{
// this down() migration is auto-generated, please modify it to your needs
$this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql', 'Migration can only be executed safely on \'mysql\'.');
$this->addSql('ALTER TABLE orders ADD mobile_id INT DEFAULT NULL');
$this->addSql('DROP TABLE order_shipping');
}
}