From 706e1e3de4b3b2b3a732b5cebdeb5fd55d48b562 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=B3=B4=EA=B3=A4?= Date: Thu, 19 Feb 2026 14:54:32 +0900 Subject: [PATCH] =?UTF-8?q?fix:=EC=9C=A0=EC=B9=98=ED=8C=8C=ED=8A=B8?= =?UTF-8?q?=EB=84=88=EB=A5=BC=20=EC=98=81=EC=97=85=ED=8C=8C=ED=8A=B8?= =?UTF-8?q?=EB=84=88=EC=9D=98=20parent(=EC=83=81=EC=9C=84=EC=9E=90)?= =?UTF-8?q?=EB=A1=9C=20=ED=91=9C=EC=8B=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 유치파트너 = 영업파트너 user의 parent_id (User→parent 관계) - partner→user→parent, salesPartner→user→parent, registeredBy→parent 순 fallback - eager loading 정리 (불필요한 referrer 체인 제거, parent 관계 추가) Co-Authored-By: Claude Opus 4.6 --- app/Services/SalesCommissionService.php | 8 +++----- .../settlement/partials/commission/table.blade.php | 13 +++++++++---- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/app/Services/SalesCommissionService.php b/app/Services/SalesCommissionService.php index ec0f254f..94f1e24a 100644 --- a/app/Services/SalesCommissionService.php +++ b/app/Services/SalesCommissionService.php @@ -33,11 +33,9 @@ public function getCommissions(array $filters = [], int $perPage = 20): LengthAw { $query = SalesCommission::query() ->with([ - 'tenant', 'partner.user', 'partner.referrer.user', - 'manager', 'referrerPartner.user', - 'management.tenant', 'management.tenantProspect.registeredBy.salesPartner.referrer.user', - 'management.salesPartner.user', 'management.salesPartner.referrer.user', - 'management.manager', + 'tenant', 'partner.user.parent', 'manager', 'referrerPartner.user', + 'management.tenant', 'management.tenantProspect.registeredBy.parent', + 'management.salesPartner.user.parent', 'management.manager', ]); // 상태 필터 diff --git a/resources/views/finance/settlement/partials/commission/table.blade.php b/resources/views/finance/settlement/partials/commission/table.blade.php index 5a04339f..e8ea661e 100644 --- a/resources/views/finance/settlement/partials/commission/table.blade.php +++ b/resources/views/finance/settlement/partials/commission/table.blade.php @@ -112,10 +112,15 @@ class="commission-checkbox rounded border-gray-300 text-emerald-600 focus:ring-e @php - $referrerName = $commission->referrerPartner?->user?->name - ?? $commission->partner?->referrer?->user?->name - ?? $commission->management?->salesPartner?->referrer?->user?->name - ?? $commission->management?->tenantProspect?->registeredBy?->salesPartner?->referrer?->user?->name; + // 유치파트너 = 영업파트너의 상위자 (user→parent) + $referrerName = $commission->referrerPartner?->user?->name; + if (!$referrerName) { + // 영업파트너 user를 찾아서 parent 확인 + $partnerUser = $commission->partner?->user + ?? $commission->management?->salesPartner?->user + ?? $commission->management?->tenantProspect?->registeredBy; + $referrerName = $partnerUser?->parent?->name; + } @endphp @if ($referrerName)
{{ $referrerName }}