fix:tenant 기반 매니저 지정도 유치 파트너 현황에 표시

- prospect_id가 NULL이고 tenant_id만 있는 매니저 지정도 조회
- type 필드로 prospect/tenant 기반 구분
- tenant 기반은 "계약 고객" 배지로 표시
- 진행률 대신 계약 완료 상태 표시

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
김보곤
2026-02-02 14:46:53 +09:00
parent 1c02874982
commit 7e47f086e9
2 changed files with 89 additions and 34 deletions

View File

@@ -623,21 +623,47 @@ private function getPartnerActivitiesDetail($recruitedPartners, int $currentUser
->orderBy('created_at', 'desc')
->get();
// 파트너가 매니저로 참여하는 가망고객 (다른 사람이 등록, 이 파트너가 매니저)
// 파트너가 매니저로 참여하는 (다른 사람이 등록, 이 파트너가 매니저)
$managerProspects = collect();
$managerManagements = SalesTenantManagement::where('manager_user_id', $partner->id)
// 1. prospect 기반 매니저 지정 (가망고객 단계)
$prospectManagements = SalesTenantManagement::where('manager_user_id', $partner->id)
->whereNotNull('tenant_prospect_id')
->with(['tenantProspect.registeredBy'])
->get();
foreach ($managerManagements as $mgmt) {
foreach ($prospectManagements as $mgmt) {
$prospect = $mgmt->tenantProspect;
// 본인이 등록한 건은 제외 (이미 allProspects에 포함됨)
if ($prospect && $prospect->registered_by !== $partner->id) {
$managerProspects->push([
'type' => 'prospect',
'prospect' => $prospect,
'management' => $mgmt,
'registeredBy' => $prospect->registeredBy,
'company_name' => $prospect->company_name,
'business_number' => $prospect->business_number,
]);
}
}
// 2. tenant 기반 매니저 지정 (이미 계약된 테넌트)
$tenantManagements = SalesTenantManagement::where('manager_user_id', $partner->id)
->whereNull('tenant_prospect_id')
->whereNotNull('tenant_id')
->with(['tenant'])
->get();
foreach ($tenantManagements as $mgmt) {
$tenant = $mgmt->tenant;
if ($tenant) {
$managerProspects->push([
'type' => 'tenant',
'tenant' => $tenant,
'management' => $mgmt,
'registeredBy' => null, // 테넌트는 등록자 정보 없음
'company_name' => $tenant->company_name,
'business_number' => $tenant->business_number,
]);
}
}