app/DoctrineMigrations/Version20260213000000.php line 1

Open in your IDE?
  1. <?php
  2. namespace DoctrineMigrations;
  3. use Doctrine\DBAL\Schema\Schema;
  4. use Doctrine\Migrations\AbstractMigration;
  5. /**
  6.  * 柔道連盟審判服販売用の会員項目追加
  7.  * - 団体情報フィールド(dantai, daihyou01/02, daikana01/02)
  8.  * - 審判服専用フィールド(namtxt, measuring_method)
  9.  * - 審判服採寸フィールド(dr06, dr14-17, dr23-25, dr50-53)
  10.  */
  11. class Version20260213000000 extends AbstractMigration
  12. {
  13.     public function up(Schema $schema): void
  14.     {
  15.         $table $schema->getTable('dtb_customer');
  16.         // 団体情報フィールドの追加
  17.         if (!$table->hasColumn('dantai')) {
  18.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN dantai VARCHAR(255) DEFAULT NULL COMMENT '所属団体名'");
  19.         }
  20.         if (!$table->hasColumn('daihyou01')) {
  21.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN daihyou01 VARCHAR(255) DEFAULT NULL COMMENT '代表者名(姓)'");
  22.         }
  23.         if (!$table->hasColumn('daihyou02')) {
  24.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN daihyou02 VARCHAR(255) DEFAULT NULL COMMENT '代表者名(名)'");
  25.         }
  26.         if (!$table->hasColumn('daikana01')) {
  27.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN daikana01 VARCHAR(255) DEFAULT NULL COMMENT '代表者名フリガナ(セイ)'");
  28.         }
  29.         if (!$table->hasColumn('daikana02')) {
  30.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN daikana02 VARCHAR(255) DEFAULT NULL COMMENT '代表者名フリガナ(メイ)'");
  31.         }
  32.         
  33.         // 審判服専用フィールドの追加
  34.         if (!$table->hasColumn('namtxt')) {
  35.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN namtxt VARCHAR(255) DEFAULT NULL COMMENT 'ネーム入れ'");
  36.         }
  37.         if (!$table->hasColumn('measuring_method')) {
  38.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN measuring_method INT DEFAULT NULL COMMENT '採寸方法(1:スーツ採寸, 2:ヌード採寸)'");
  39.         }
  40.         
  41.         // 審判服採寸フィールドの追加(00番台: 上着)
  42.         if (!$table->hasColumn('dr06')) {
  43.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr06 VARCHAR(10) DEFAULT NULL COMMENT '上着丈'");
  44.         }
  45.         
  46.         // 審判服採寸フィールドの追加(10番台: 胴体・上半身詳細)
  47.         if (!$table->hasColumn('dr14')) {
  48.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr14 VARCHAR(10) DEFAULT NULL COMMENT '胸回り'");
  49.         }
  50.         if (!$table->hasColumn('dr15')) {
  51.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr15 VARCHAR(10) DEFAULT NULL COMMENT '中胴'");
  52.         }
  53.         if (!$table->hasColumn('dr16')) {
  54.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr16 VARCHAR(10) DEFAULT NULL COMMENT '袖幅'");
  55.         }
  56.         if (!$table->hasColumn('dr17')) {
  57.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr17 VARCHAR(10) DEFAULT NULL COMMENT 'ヒップ_2'");
  58.         }
  59.         
  60.         // 審判服採寸フィールドの追加(20番台: 下半身詳細)
  61.         if (!$table->hasColumn('dr23')) {
  62.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr23 VARCHAR(10) DEFAULT NULL COMMENT '渡り巾'");
  63.         }
  64.         if (!$table->hasColumn('dr24')) {
  65.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr24 VARCHAR(10) DEFAULT NULL COMMENT '股上'");
  66.         }
  67.         if (!$table->hasColumn('dr25')) {
  68.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr25 VARCHAR(10) DEFAULT NULL COMMENT '裾巾'");
  69.         }
  70.         
  71.         // 審判服採寸フィールドの追加(50番台: 左右対称項目専用)
  72.         if (!$table->hasColumn('dr50')) {
  73.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr50 VARCHAR(10) DEFAULT NULL COMMENT '袖丈(左)'");
  74.         }
  75.         if (!$table->hasColumn('dr51')) {
  76.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr51 VARCHAR(10) DEFAULT NULL COMMENT '袖丈(右)'");
  77.         }
  78.         if (!$table->hasColumn('dr52')) {
  79.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr52 VARCHAR(10) DEFAULT NULL COMMENT '裄丈(左)'");
  80.         }
  81.         if (!$table->hasColumn('dr53')) {
  82.             $this->addSql("ALTER TABLE dtb_customer ADD COLUMN dr53 VARCHAR(10) DEFAULT NULL COMMENT '裄丈(右)'");
  83.         }
  84.     }
  85.     public function down(Schema $schema): void
  86.     {
  87.         $table $schema->getTable('dtb_customer');
  88.         // ロールバック: 追加したカラムを削除
  89.         if ($table->hasColumn('dantai')) {
  90.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN dantai');
  91.         }
  92.         if ($table->hasColumn('daihyou01')) {
  93.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN daihyou01');
  94.         }
  95.         if ($table->hasColumn('daihyou02')) {
  96.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN daihyou02');
  97.         }
  98.         if ($table->hasColumn('daikana01')) {
  99.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN daikana01');
  100.         }
  101.         if ($table->hasColumn('daikana02')) {
  102.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN daikana02');
  103.         }
  104.         if ($table->hasColumn('namtxt')) {
  105.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN namtxt');
  106.         }
  107.         if ($table->hasColumn('measuring_method')) {
  108.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN measuring_method');
  109.         }
  110.         if ($table->hasColumn('dr06')) {
  111.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr06');
  112.         }
  113.         if ($table->hasColumn('dr14')) {
  114.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr14');
  115.         }
  116.         if ($table->hasColumn('dr15')) {
  117.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr15');
  118.         }
  119.         if ($table->hasColumn('dr16')) {
  120.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr16');
  121.         }
  122.         if ($table->hasColumn('dr17')) {
  123.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr17');
  124.         }
  125.         if ($table->hasColumn('dr23')) {
  126.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr23');
  127.         }
  128.         if ($table->hasColumn('dr24')) {
  129.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr24');
  130.         }
  131.         if ($table->hasColumn('dr25')) {
  132.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr25');
  133.         }
  134.         if ($table->hasColumn('dr50')) {
  135.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr50');
  136.         }
  137.         if ($table->hasColumn('dr51')) {
  138.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr51');
  139.         }
  140.         if ($table->hasColumn('dr52')) {
  141.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr52');
  142.         }
  143.         if ($table->hasColumn('dr53')) {
  144.             $this->addSql('ALTER TABLE dtb_customer DROP COLUMN dr53');
  145.         }
  146.     }
  147. }