Feat: Назначения курсов с tags-input

 CourseAssignmentController (index, create, store)
 create.blade.php с тремя tags-input (пользователи/группы/организации)
 Разные цвета бейджей (зелёный/голубой/синий)
 UserSearchController API
 index.blade.php список назначений

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
mirivlad
2026-03-30 16:06:02 +08:00
co-authored by Qwen-Coder
parent 064778b8aa
commit 81828de9a3
5 changed files with 145 additions and 74 deletions
+31
View File
@@ -0,0 +1,31 @@
<?php
namespace App\Http\Controllers\Api;
use App\Http\Controllers\Controller;
use App\Models\User;
use Illuminate\Http\Request;
class UserSearchController extends Controller
{
public function __invoke(Request $request)
{
$query = $request->get('q', '');
$users = User::query()
->with('organization')
->where('name', 'like', "%{$query}%")
->orWhere('email', 'like', "%{$query}%")
->orderBy('name')
->limit(50)
->get()
->map(function($user) {
return [
'id' => $user->id,
'text' => $user->name . ($user->organization ? " ({$user->organization->name})" : ''),
];
});
return response()->json($users);
}
}