fix:상담매니저 검색 시 tenant_id 조건 제거
- 파트너 관리 페이지와 동일한 방식으로 역할 확인 - userRoles.role 관계를 통해 manager 역할 검색 - 영업파트너가 누구든 상담매니저 역할을 가진 모든 사용자 검색 가능 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -766,46 +766,35 @@ private function getCommissionData(): array
|
||||
|
||||
/**
|
||||
* 상담매니저 역할을 가진 모든 사용자 조회
|
||||
* (tenant_id 조건 없이 - 파트너 관리 페이지와 동일한 방식)
|
||||
*/
|
||||
private function getAllManagerUsers()
|
||||
{
|
||||
$tenantId = session('selected_tenant_id', 1);
|
||||
|
||||
return User::whereHas('userRoles', function ($q) use ($tenantId) {
|
||||
$q->where('tenant_id', $tenantId)
|
||||
->whereHas('role', function ($rq) {
|
||||
$rq->where('name', 'manager');
|
||||
});
|
||||
})
|
||||
->where('is_active', true)
|
||||
->where('id', '!=', auth()->id()) // 본인 제외
|
||||
->get(['id', 'name', 'email']);
|
||||
return User::whereHas('userRoles.role', fn($q) => $q->where('name', 'manager'))
|
||||
->where('is_active', true)
|
||||
->where('id', '!=', auth()->id()) // 본인 제외
|
||||
->get(['id', 'name', 'email']);
|
||||
}
|
||||
|
||||
/**
|
||||
* 매니저 검색 API (AJAX)
|
||||
* (tenant_id 조건 없이 - 모든 상담매니저 검색 가능)
|
||||
*/
|
||||
public function searchManagers(Request $request): JsonResponse
|
||||
{
|
||||
$query = $request->input('q', '');
|
||||
$tenantId = session('selected_tenant_id', 1);
|
||||
|
||||
$managers = User::whereHas('userRoles', function ($q) use ($tenantId) {
|
||||
$q->where('tenant_id', $tenantId)
|
||||
->whereHas('role', function ($rq) {
|
||||
$rq->where('name', 'manager');
|
||||
$managers = User::whereHas('userRoles.role', fn($q) => $q->where('name', 'manager'))
|
||||
->where('is_active', true)
|
||||
->where('id', '!=', auth()->id())
|
||||
->when($query, function ($q) use ($query) {
|
||||
$q->where(function ($subQ) use ($query) {
|
||||
$subQ->where('name', 'like', "%{$query}%")
|
||||
->orWhere('email', 'like', "%{$query}%");
|
||||
});
|
||||
})
|
||||
->where('is_active', true)
|
||||
->where('id', '!=', auth()->id())
|
||||
->when($query, function ($q) use ($query) {
|
||||
$q->where(function ($subQ) use ($query) {
|
||||
$subQ->where('name', 'like', "%{$query}%")
|
||||
->orWhere('email', 'like', "%{$query}%");
|
||||
});
|
||||
})
|
||||
->limit(10)
|
||||
->get(['id', 'name', 'email']);
|
||||
})
|
||||
->limit(10)
|
||||
->get(['id', 'name', 'email']);
|
||||
|
||||
return response()->json([
|
||||
'success' => true,
|
||||
|
||||
Reference in New Issue
Block a user