<?php
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* 柔道連盟審判服販売用の会員項目追加
* - 団体情報フィールド(dantai, daihyou01/02, daikana01/02)
* - 審判服専用フィールド(namtxt, measuring_method)
* - 審判服採寸フィールド(dr06, dr14-17, dr23-25, dr50-53)
*/
class Version20260213000000 extends AbstractMigration
{
public function up(Schema $schema): void
{
$table = $schema->getTable('dtb_customer');
// 団体情報フィールドの追加
if (!$table->hasColumn('dantai')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN dantai VARCHAR(255) DEFAULT NULL COMMENT '所属団体名'");
}
if (!$table->hasColumn('daihyou01')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN daihyou01 VARCHAR(255) DEFAULT NULL COMMENT '代表者名(姓)'");
}
if (!$table->hasColumn('daihyou02')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN daihyou02 VARCHAR(255) DEFAULT NULL COMMENT '代表者名(名)'");
}
if (!$table->hasColumn('daikana01')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN daikana01 VARCHAR(255) DEFAULT NULL COMMENT '代表者名フリガナ(セイ)'");
}
if (!$table->hasColumn('daikana02')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN daikana02 VARCHAR(255) DEFAULT NULL COMMENT '代表者名フリガナ(メイ)'");
}
// 審判服専用フィールドの追加
if (!$table->hasColumn('namtxt')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN namtxt VARCHAR(255) DEFAULT NULL COMMENT 'ネーム入れ'");
}
if (!$table->hasColumn('measuring_method')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN measuring_method INT DEFAULT NULL COMMENT '採寸方法(1:スーツ採寸, 2:ヌード採寸)'");
}
// 審判服採寸フィールドの追加(00番台: 上着)
if (!$table->hasColumn('dr06')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr06 VARCHAR(10) DEFAULT NULL COMMENT '上着丈'");
}
// 審判服採寸フィールドの追加(10番台: 胴体・上半身詳細)
if (!$table->hasColumn('dr14')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr14 VARCHAR(10) DEFAULT NULL COMMENT '胸回り'");
}
if (!$table->hasColumn('dr15')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr15 VARCHAR(10) DEFAULT NULL COMMENT '中胴'");
}
if (!$table->hasColumn('dr16')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr16 VARCHAR(10) DEFAULT NULL COMMENT '袖幅'");
}
if (!$table->hasColumn('dr17')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr17 VARCHAR(10) DEFAULT NULL COMMENT 'ヒップ_2'");
}
// 審判服採寸フィールドの追加(20番台: 下半身詳細)
if (!$table->hasColumn('dr23')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr23 VARCHAR(10) DEFAULT NULL COMMENT '渡り巾'");
}
if (!$table->hasColumn('dr24')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr24 VARCHAR(10) DEFAULT NULL COMMENT '股上'");
}
if (!$table->hasColumn('dr25')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr25 VARCHAR(10) DEFAULT NULL COMMENT '裾巾'");
}
// 審判服採寸フィールドの追加(50番台: 左右対称項目専用)
if (!$table->hasColumn('dr50')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr50 VARCHAR(10) DEFAULT NULL COMMENT '袖丈(左)'");
}
if (!$table->hasColumn('dr51')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr51 VARCHAR(10) DEFAULT NULL COMMENT '袖丈(右)'");
}
if (!$table->hasColumn('dr52')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr52 VARCHAR(10) DEFAULT NULL COMMENT '裄丈(左)'");
}
if (!$table->hasColumn('dr53')) {
$this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr53 VARCHAR(10) DEFAULT NULL COMMENT '裄丈(右)'");
}
}
public function down(Schema $schema): void
{
$table = $schema->getTable('dtb_customer');
// ロールバック: 追加したカラムを削除
if ($table->hasColumn('dantai')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN dantai');
}
if ($table->hasColumn('daihyou01')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN daihyou01');
}
if ($table->hasColumn('daihyou02')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN daihyou02');
}
if ($table->hasColumn('daikana01')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN daikana01');
}
if ($table->hasColumn('daikana02')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN daikana02');
}
if ($table->hasColumn('namtxt')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN namtxt');
}
if ($table->hasColumn('measuring_method')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN measuring_method');
}
if ($table->hasColumn('dr06')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr06');
}
if ($table->hasColumn('dr14')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr14');
}
if ($table->hasColumn('dr15')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr15');
}
if ($table->hasColumn('dr16')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr16');
}
if ($table->hasColumn('dr17')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr17');
}
if ($table->hasColumn('dr23')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr23');
}
if ($table->hasColumn('dr24')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr24');
}
if ($table->hasColumn('dr25')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr25');
}
if ($table->hasColumn('dr50')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr50');
}
if ($table->hasColumn('dr51')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr51');
}
if ($table->hasColumn('dr52')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr52');
}
if ($table->hasColumn('dr53')) {
$this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr53');
}
}
}