diff --git a/app/Http/Controllers/Admin/OrganizationController.php b/app/Http/Controllers/Admin/OrganizationController.php index 3bf09a5..6749908 100755 --- a/app/Http/Controllers/Admin/OrganizationController.php +++ b/app/Http/Controllers/Admin/OrganizationController.php @@ -4,6 +4,8 @@ namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; use App\Models\Organization; +use App\Models\User; +use App\Models\Group; use Illuminate\Http\Request; use Illuminate\Support\Facades\Gate; diff --git a/app/Http/Controllers/Api/UserSearchController.php b/app/Http/Controllers/Api/UserSearchController.php index 8120859..657cb05 100755 --- a/app/Http/Controllers/Api/UserSearchController.php +++ b/app/Http/Controllers/Api/UserSearchController.php @@ -12,9 +12,18 @@ class UserSearchController extends Controller { $query = $request->get('q', ''); $organizationId = $request->get('organization_id', null); + $excludeOrganizationId = $request->get('exclude_organization_id', null); $usersQuery = User::query()->with('organization'); + // Исключаем пользователей из организации (для добавления в организацию) + if ($excludeOrganizationId) { + $usersQuery->where(function($q) use ($excludeOrganizationId) { + $q->whereNull('organization_id') + ->orWhere('organization_id', '!=', $excludeOrganizationId); + }); + } + // Если указан organization_id - фильтруем if ($organizationId) { $usersQuery->where('organization_id', $organizationId); @@ -33,7 +42,7 @@ class UserSearchController extends Controller ->map(function($user) { return [ 'id' => $user->id, - 'text' => $user->name . ($user->organization ? " ({$user->organization->name})" : ''), + 'text' => $user->name . ($user->organization ? " ({$user->organization->name})" : ' (Без организации)'), ]; }); diff --git a/resources/views/admin/organizations/show.blade.php b/resources/views/admin/organizations/show.blade.php index 308d32d..d446920 100644 --- a/resources/views/admin/organizations/show.blade.php +++ b/resources/views/admin/organizations/show.blade.php @@ -134,11 +134,11 @@