diff --git a/app/Services/SalesCommissionService.php b/app/Services/SalesCommissionService.php index 9502de54..2360f308 100644 --- a/app/Services/SalesCommissionService.php +++ b/app/Services/SalesCommissionService.php @@ -32,7 +32,7 @@ class SalesCommissionService public function getCommissions(array $filters = [], int $perPage = 20): LengthAwarePaginator { $query = SalesCommission::query() - ->with(['tenant', 'partner.user', 'manager', 'management', 'referrerPartner.user']); + ->with(['tenant', 'partner.user', 'manager', 'management.tenant', 'management.tenantProspect', 'referrerPartner.user']); // 상태 필터 if (!empty($filters['status'])) { @@ -77,12 +77,17 @@ public function getCommissions(array $filters = [], int $perPage = 20): LengthAw } } - // 테넌트 검색 + // 고객사 검색 (management → tenant 또는 tenantProspect) if (!empty($filters['search'])) { $search = $filters['search']; - $query->whereHas('tenant', function ($q) use ($search) { - $q->where('name', 'like', "%{$search}%") - ->orWhere('company_name', 'like', "%{$search}%"); + $query->whereHas('management', function ($q) use ($search) { + $q->where(function ($sub) use ($search) { + $sub->whereHas('tenant', function ($tq) use ($search) { + $tq->where('company_name', 'like', "%{$search}%"); + })->orWhereHas('tenantProspect', function ($tpq) use ($search) { + $tpq->where('company_name', 'like', "%{$search}%"); + }); + }); }); } diff --git a/resources/views/finance/settlement/partials/commission/table.blade.php b/resources/views/finance/settlement/partials/commission/table.blade.php index 4b7505d7..e615fe33 100644 --- a/resources/views/finance/settlement/partials/commission/table.blade.php +++ b/resources/views/finance/settlement/partials/commission/table.blade.php @@ -34,8 +34,26 @@ class="commission-checkbox rounded border-gray-300 text-emerald-600 focus:ring-e @endif