From f3ab7525e213071e4286b978e2e68b05264e0657 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=B3=B4=EA=B3=A4?= Date: Sat, 14 Feb 2026 19:42:38 +0900 Subject: [PATCH] =?UTF-8?q?feat:=EB=8B=A8=EC=B2=B4(=EA=B7=B8=EB=A3=B9)=20?= =?UTF-8?q?=EC=88=98=EB=8B=B9=20=EC=B2=B4=EA=B3=84=20=EC=A7=80=EC=9B=90?= =?UTF-8?q?=EC=9D=84=20=EC=9C=84=ED=95=9C=20=EB=A7=88=EC=9D=B4=EA=B7=B8?= =?UTF-8?q?=EB=A0=88=EC=9D=B4=EC=85=98=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit sales_partners에 referrer_partner_id, sales_commissions에 유치수당 관련 컬럼 추가 Co-Authored-By: Claude Opus 4.6 --- ...15_100000_add_group_commission_support.php | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 database/migrations/2026_02_15_100000_add_group_commission_support.php diff --git a/database/migrations/2026_02_15_100000_add_group_commission_support.php b/database/migrations/2026_02_15_100000_add_group_commission_support.php new file mode 100644 index 0000000..79d0e2e --- /dev/null +++ b/database/migrations/2026_02_15_100000_add_group_commission_support.php @@ -0,0 +1,53 @@ +unsignedBigInteger('referrer_partner_id')->nullable()->after('notes') + ->comment('이 단체를 유치한 영업파트너 ID'); + $table->foreign('referrer_partner_id')->references('id')->on('sales_partners')->nullOnDelete(); + }); + + // sales_commissions 테이블에 유치수당 관련 컬럼 추가 + Schema::table('sales_commissions', function (Blueprint $table) { + $table->unsignedBigInteger('referrer_partner_id')->nullable()->after('manager_user_id') + ->comment('유치수당 받을 파트너 ID'); + $table->decimal('referrer_rate', 5, 2)->default(0)->after('referrer_partner_id') + ->comment('유치 수당률 (%)'); + $table->decimal('referrer_commission', 14, 2)->default(0)->after('referrer_rate') + ->comment('유치 수당액'); + $table->date('first_referrer_paid_at')->nullable()->after('referrer_commission') + ->comment('1차 유치수당 지급일'); + $table->date('second_referrer_paid_at')->nullable()->after('first_referrer_paid_at') + ->comment('2차 유치수당 지급일'); + + $table->foreign('referrer_partner_id')->references('id')->on('sales_partners')->nullOnDelete(); + }); + } + + public function down(): void + { + Schema::table('sales_commissions', function (Blueprint $table) { + $table->dropForeign(['referrer_partner_id']); + $table->dropColumn([ + 'referrer_partner_id', + 'referrer_rate', + 'referrer_commission', + 'first_referrer_paid_at', + 'second_referrer_paid_at', + ]); + }); + + Schema::table('sales_partners', function (Blueprint $table) { + $table->dropForeign(['referrer_partner_id']); + $table->dropColumn('referrer_partner_id'); + }); + } +};