/** * Show the form for creating a new resource. * * @return Response */ public function create($roleId) { // $role = Role::findOrFail($roleId); $permissionIds = RolePermission::where('role_id', $roleId)->select('permission_id')->get(); $permissionList = Permission::whereNotIn('id', $permissionIds)->select('id', DB::raw('concat(name, \' - \', display_name) as name'))->lists('name', 'id'); if ($role != null) { return view('system.rolepermissions.create', compact('role', 'permissionList')); } else { return '无此角色'; } }
public function update(GroupRequest $request, $id) { if ($this->currentUser->hasAccess('wts.group.edit')) { DB::transaction(function () use($request, $id) { $permissions = $request->permissions; for ($i = 0; $i < count($permissions); $i++) { $permissions[$i] = Crypt::decrypt($permissions[$i]); } $availiblePermissions = Permission::whereIn("id", $permissions)->get(array("name"))->toArray(); $finallyPermissions = []; foreach ($availiblePermissions as $key => $value) { $finallyPermissions[$value["name"]] = 1; } $notAvailiblePermissions = Permission::whereNotIn("id", $permissions)->get(array("name"))->toArray(); foreach ($notAvailiblePermissions as $key => $value) { $finallyPermissions[$value["name"]] = 0; } //standart store $updateGroupQuery = Sentry::findGroupById($id); $updateGroupQuery->name = $request->group_name; $updateGroupQuery->slug = $request->slug_name; $updateGroupQuery->permissions = $finallyPermissions; $updateGroupQuery->save(); }); return response()->json($this->editResponseMessage); } else { abort(403, $this->accessForbidden); } }