Added companies to user controllers

Signed-off-by: snipe <snipe@snipe.net>
This commit is contained in:
snipe
2025-01-23 15:42:10 +00:00
parent 218674b4cf
commit a3081fdbaf
2 changed files with 15 additions and 8 deletions
+8 -6
View File
@@ -47,7 +47,6 @@ class UsersController extends Controller
'users.address', 'users.address',
'users.avatar', 'users.avatar',
'users.city', 'users.city',
'users.company_id',
'users.country', 'users.country',
'users.created_by', 'users.created_by',
'users.created_at', 'users.created_at',
@@ -80,7 +79,7 @@ class UsersController extends Controller
'users.autoassign_licenses', 'users.autoassign_licenses',
'users.website', 'users.website',
])->with('manager', 'groups', 'userloc', 'company', 'department', 'assets', 'licenses', 'accessories', 'consumables', 'createdBy', 'managesUsers', 'managedLocations') ])->with('groups', 'userloc', 'companies', 'department', 'assets', 'licenses', 'accessories', 'consumables', 'createdBy', 'managesUsers', 'managedLocations', 'manager')
->withCount([ ->withCount([
'assets as assets_count' => function(Builder $query) { 'assets as assets_count' => function(Builder $query) {
$query->withoutTrashed(); $query->withoutTrashed();
@@ -102,7 +101,7 @@ class UsersController extends Controller
} }
if ($request->filled('company_id')) { if ($request->filled('company_id')) {
$users = $users->where('users.company_id', '=', $request->input('company_id')); $users = $users->ByCompany($request->get('company_id'));
} }
if ($request->filled('location_id')) { if ($request->filled('location_id')) {
@@ -243,9 +242,9 @@ class UsersController extends Controller
case 'created_by': case 'created_by':
$users = $users->OrderByCreatedBy($order); $users = $users->OrderByCreatedBy($order);
break; break;
case 'company': // case 'company':
$users = $users->OrderCompany($order); // $users = $users->OrderCompany($order);
break; // break;
case 'first_name': case 'first_name':
$users->orderBy('first_name', $order); $users->orderBy('first_name', $order);
$users->orderBy('last_name', $order); $users->orderBy('last_name', $order);
@@ -412,6 +411,8 @@ class UsersController extends Controller
$user->groups()->sync([]); $user->groups()->sync([]);
} }
$user->companies()->sync($request->input('companies'));
return response()->json(Helper::formatStandardApiResponse('success', (new UsersTransformer)->transformUser($user), trans('admin/users/message.success.create'))); return response()->json(Helper::formatStandardApiResponse('success', (new UsersTransformer)->transformUser($user), trans('admin/users/message.success.create')));
} }
@@ -512,6 +513,7 @@ class UsersController extends Controller
// Sync the groups since the user is a superuser and the groups pass validation // Sync the groups since the user is a superuser and the groups pass validation
$user->groups()->sync($request->input('groups')); $user->groups()->sync($request->input('groups'));
$user->companies()->sync($request->input('companies'));
} }
return response()->json(Helper::formatStandardApiResponse('success', (new UsersTransformer)->transformUser($user), trans('admin/users/message.success.update'))); return response()->json(Helper::formatStandardApiResponse('success', (new UsersTransformer)->transformUser($user), trans('admin/users/message.success.update')));
} }
@@ -62,6 +62,7 @@ class UsersController extends Controller
{ {
$this->authorize('create', User::class); $this->authorize('create', User::class);
$groups = Group::pluck('name', 'id'); $groups = Group::pluck('name', 'id');
$companies = Company::pluck('name', 'id');
$userGroups = collect(); $userGroups = collect();
@@ -75,7 +76,7 @@ class UsersController extends Controller
$user = new User; $user = new User;
return view('users/edit', compact('groups', 'userGroups', 'permissions', 'userPermissions')) return view('users/edit', compact('groups', 'userGroups', 'permissions', 'userPermissions', 'companies'))
->with('user', $user); ->with('user', $user);
} }
@@ -142,6 +143,8 @@ class UsersController extends Controller
$user->groups()->sync([]); $user->groups()->sync([]);
} }
$user->companies()->sync($request->input('companies'));
if (($request->input('email_user') == 1) && ($request->filled('email'))) { if (($request->input('email_user') == 1) && ($request->filled('email'))) {
// Send the credentials through email // Send the credentials through email
$data = []; $data = [];
@@ -192,13 +195,14 @@ class UsersController extends Controller
$permissions = config('permissions'); $permissions = config('permissions');
$groups = Group::pluck('name', 'id'); $groups = Group::pluck('name', 'id');
$companies = Company::pluck('name', 'id');
$userGroups = $user->groups()->pluck('name', 'id'); $userGroups = $user->groups()->pluck('name', 'id');
$user->permissions = $user->decodePermissions(); $user->permissions = $user->decodePermissions();
$userPermissions = Helper::selectedPermissionsArray($permissions, $user->permissions); $userPermissions = Helper::selectedPermissionsArray($permissions, $user->permissions);
$permissions = $this->filterDisplayable($permissions); $permissions = $this->filterDisplayable($permissions);
return view('users/edit', compact('user', 'groups', 'userGroups', 'permissions', 'userPermissions'))->with('item', $user); return view('users/edit', compact('user', 'groups', 'userGroups', 'permissions', 'userPermissions', 'companies'))->with('item', $user);
} }
return redirect()->route('users.index')->with('error', trans('admin/users/message.user_not_found', compact('id'))); return redirect()->route('users.index')->with('error', trans('admin/users/message.user_not_found', compact('id')));
@@ -302,6 +306,7 @@ class UsersController extends Controller
} }
$user->permissions = json_encode($permissions_array); $user->permissions = json_encode($permissions_array);
$user->companies()->sync($request->input('companies'));
// Handle uploaded avatar // Handle uploaded avatar
app(ImageUploadRequest::class)->handleImages($user, 600, 'avatar', 'avatars', 'avatar'); app(ImageUploadRequest::class)->handleImages($user, 600, 'avatar', 'avatars', 'avatar');