<?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 Version20240820093235 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 price_list (id INT AUTO_INCREMENT NOT NULL, user_type_id INT DEFAULT NULL, service_type_id INT DEFAULT NULL, country_id INT DEFAULT NULL, grid INT NOT NULL, date_start DATETIME NOT NULL, date_end DATETIME DEFAULT NULL, INDEX IDX_399A0AA29D419299 (user_type_id), INDEX IDX_399A0AA2AC8DE0F (service_type_id), INDEX IDX_399A0AA2F92F3E70 (country_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE price_list ADD CONSTRAINT FK_399A0AA29D419299 FOREIGN KEY (user_type_id) REFERENCES user_type (id)');
$this->addSql('ALTER TABLE price_list ADD CONSTRAINT FK_399A0AA2AC8DE0F FOREIGN KEY (service_type_id) REFERENCES service_type (id)');
$this->addSql('ALTER TABLE price_list ADD CONSTRAINT FK_399A0AA2F92F3E70 FOREIGN KEY (country_id) REFERENCES authorized_country (id)');
$this->addSql('ALTER TABLE price_per_kilometer DROP FOREIGN KEY FK_B4D76C189D419299');
$this->addSql('ALTER TABLE price_per_kilometer DROP FOREIGN KEY FK_B4D76C18AC8DE0F');
$this->addSql('DROP INDEX IDX_B4D76C189D419299 ON price_per_kilometer');
$this->addSql('DROP INDEX IDX_B4D76C18AC8DE0F ON price_per_kilometer');
$this->addSql('ALTER TABLE price_per_kilometer ADD price_list_id INT DEFAULT NULL, DROP user_type_id, DROP service_type_id, DROP grid, DROP date_start, DROP date_end');
$this->addSql('ALTER TABLE price_per_kilometer ADD CONSTRAINT FK_B4D76C185688DED7 FOREIGN KEY (price_list_id) REFERENCES price_list (id)');
$this->addSql('CREATE INDEX IDX_B4D76C185688DED7 ON price_per_kilometer (price_list_id)');
$this->addSql("INSERT INTO `price_list` (`id`, `user_type_id`, `service_type_id`, `grid`, `country_id`, `date_start`) VALUES
(1, 6, 1, 1, 1, '1900-01-01')");
$this->addSql("INSERT INTO `price_per_kilometer` (`id`, `price_list_id`, `number`, `slice_kilometer`, `landing`, `upper_landing`, `rate_metric_ht`, `rate_metric_ttc`) VALUES
(1, 1, '1', '0-1', '0', '1', 0.00833, 0.009996),
(2, 1, '2', '1-2', '1', '2', 0.0009, 0.00108),
(3, 1, '3', '2-3', '2', '3', 0.00095, 0.00114),
(4, 1, '4', '3-4', '3', '4', 0.000975, 0.00117),
(5, 1, '5', '4-5', '4', '5', 0.001, 0.0012),
(6, 1, '6', '5-6', '5', '6', 0.001025, 0.00123),
(7, 1, '7', '6-7', '6', '7', 0.00105, 0.00126),
(8, 1, '8', '7-8', '7', '8', 0.001075, 0.00129),
(9, 1, '9', '8-9', '8', '9', 0.0011, 0.00132),
(10, 1, '10', '9-10', '9', '10', 0.001125, 0.00135)");
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE price_per_kilometer DROP FOREIGN KEY FK_B4D76C185688DED7');
$this->addSql('ALTER TABLE price_list DROP FOREIGN KEY FK_399A0AA29D419299');
$this->addSql('ALTER TABLE price_list DROP FOREIGN KEY FK_399A0AA2AC8DE0F');
$this->addSql('ALTER TABLE price_list DROP FOREIGN KEY FK_399A0AA2F92F3E70');
$this->addSql('DROP TABLE price_list');
$this->addSql('DROP INDEX IDX_B4D76C185688DED7 ON price_per_kilometer');
$this->addSql('ALTER TABLE price_per_kilometer ADD service_type_id INT DEFAULT NULL, ADD grid INT NOT NULL, ADD date_start DATETIME NOT NULL, ADD date_end DATETIME DEFAULT NULL, CHANGE price_list_id user_type_id INT DEFAULT NULL');
$this->addSql('ALTER TABLE price_per_kilometer ADD CONSTRAINT FK_B4D76C189D419299 FOREIGN KEY (user_type_id) REFERENCES user_type (id) ON UPDATE NO ACTION ON DELETE NO ACTION');
$this->addSql('ALTER TABLE price_per_kilometer ADD CONSTRAINT FK_B4D76C18AC8DE0F FOREIGN KEY (service_type_id) REFERENCES service_type (id) ON UPDATE NO ACTION ON DELETE NO ACTION');
$this->addSql('CREATE INDEX IDX_B4D76C189D419299 ON price_per_kilometer (user_type_id)');
$this->addSql('CREATE INDEX IDX_B4D76C18AC8DE0F ON price_per_kilometer (service_type_id)');
}
}