feat: implementation du role Gestionnaire RH et refonte de la gestion des offres

This commit is contained in:
jeremy bayse
2026-05-09 11:21:40 +02:00
parent 97a8b9443d
commit 9edf79e8ba
23 changed files with 1223 additions and 232 deletions

View File

@@ -18,7 +18,7 @@ class UserController extends Controller
abort(403, 'Unauthorized action.');
}
$users = User::whereIn('role', ['admin', 'super_admin'])
$users = User::whereIn('role', ['admin', 'super_admin', 'gestionnaire_rh'])
->with('tenant')
->orderBy('name')
->get();
@@ -40,7 +40,7 @@ class UserController extends Controller
$request->validate([
'name' => 'required|string|max:255',
'email' => 'required|string|email|max:255|unique:users',
'role' => ['required', Rule::in(['admin', 'super_admin'])],
'role' => ['required', Rule::in(['admin', 'super_admin', 'gestionnaire_rh'])],
'tenant_id' => 'nullable|exists:tenants,id',
]);
@@ -51,7 +51,7 @@ class UserController extends Controller
'email' => $request->email,
'password' => Hash::make($password),
'role' => $request->role,
'tenant_id' => $request->role === 'super_admin' ? null : $request->tenant_id,
'tenant_id' => ($request->role === 'super_admin' || $request->role === 'gestionnaire_rh') ? null : $request->tenant_id,
]);
return back()->with('success', 'Administrateur créé avec succès. Mot de passe généré : ' . $password);
@@ -66,7 +66,7 @@ class UserController extends Controller
$request->validate([
'name' => 'required|string|max:255',
'email' => 'required|string|email|max:255|unique:users,email,' . $user->id,
'role' => ['required', Rule::in(['admin', 'super_admin'])],
'role' => ['required', Rule::in(['admin', 'super_admin', 'gestionnaire_rh'])],
'tenant_id' => 'nullable|exists:tenants,id',
]);
@@ -74,7 +74,7 @@ class UserController extends Controller
'name' => $request->name,
'email' => $request->email,
'role' => $request->role,
'tenant_id' => $request->role === 'super_admin' ? null : $request->tenant_id,
'tenant_id' => ($request->role === 'super_admin' || $request->role === 'gestionnaire_rh') ? null : $request->tenant_id,
]);
return back()->with('success', 'Administrateur mis à jour.');