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 -
{{ $commission->tenant->name ?? $commission->tenant->company_name ?? '-' }}
-
ID: {{ $commission->tenant_id }}
+
+ {{ $commission->management?->tenant?->company_name ?? $commission->management?->tenantProspect?->company_name ?? '-' }} +
+ @if ($commission->management?->hq_status) + @php + $hqColors = [ + 'pending' => 'bg-gray-100 text-gray-600', + 'review' => 'bg-yellow-100 text-yellow-700', + 'planning' => 'bg-blue-100 text-blue-700', + 'coding' => 'bg-indigo-100 text-indigo-700', + 'dev_test' => 'bg-purple-100 text-purple-700', + 'dev_done' => 'bg-teal-100 text-teal-700', + 'int_test' => 'bg-cyan-100 text-cyan-700', + 'handover' => 'bg-green-100 text-green-700', + ]; + @endphp + + {{ $commission->management->hq_status_label }} + + @endif - {{ number_format($commission->payment_amount) }} + @if ($commission->payment_amount > 0) + {{ number_format($commission->payment_amount) }} + @else + - + @endif {{ $commission->payment_date->format('Y-m-d') }}