<?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 Version20250101070141 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
if ($schema->hasTable("mtb_status")) {
return;
}
$this->addSql("CREATE TABLE `mtb_status` (
`id` smallint unsigned NOT NULL,
`name` varchar(255) COLLATE utf8mb4_bin NOT NULL,
`sort_no` smallint unsigned NOT NULL,
`discriminator_type` varchar(255) COLLATE utf8mb4_bin NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin");
// add data table status
$this->addSql("
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (1,'NEW',1,'status');
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (2,'残りわずか',2,'status');
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (3,'通販限定',3,'status');
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (4,'SALE',4,'status');
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (5,'予約受付中',5,'status');
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (6,'直筆サイン付',6,'status');
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (7,'グッズ',7,'status');
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (8,'本',8,'status');
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (9,'ニューカマー',9,'status');
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (10,'政則グッズ',10,'status');
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (11,'お年玉セール対象',11,'status');
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (12,'定期セール除外',12,'status');
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (13,'クーポン対象外',13,'status');
INSERT INTO `mtb_status` (`id`,`name`,`sort_no`,`discriminator_type`) VALUES (14,'来日記念',14,'status');
");
// dtb_product_status
$this->addSql("CREATE TABLE `dtb_product_status` (
`product_id` int unsigned NOT NULL,
`status_id` smallint unsigned NOT NULL,
`discriminator_type` varchar(255) COLLATE utf8mb4_bin NOT NULL,
PRIMARY KEY (`product_id`,`status_id`),
KEY `IDX_B05778914585777B` (`product_id`),
KEY `IDX_B057789112479DG8` (`status_id`),
CONSTRAINT `FK_B057789112479DG8` FOREIGN KEY (`status_id`) REFERENCES `mtb_status` (`id`),
CONSTRAINT `FK_B05778914585777B` FOREIGN KEY (`product_id`) REFERENCES `dtb_product` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;");
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql("DROP TABLE mtb_status;");
$this->addSql("DROP TABLE dtb_product_status;");
}
}