post('roleid')==1){ return showJsonErr('抱歉,该用户不能授予超级管理员权限'); } $systemUser = User::find($request->post('suid')); // 判断拥有管理权限的用户才能授予角色 /*if (!in_array($systemUser->isSuper, [2, 3])) { return showJsonErr('抱歉,该用户不能授予管理权限.'); }*/ foreach ($systemUser->roles as $role) { $systemUser->removeRole($role); } $role = Role::findById($request->post('roleid'), config('permission.guard')); return showJson(101, 1001, $systemUser->assignRole($role)); } /** * 管理员拥有的权限 * @author fatty * @date 2019/1/8 * @param $id * @return \Illuminate\Contracts\Routing\ResponseFactory|\Symfony\Component\HttpFoundation\Response * @throws \Exception * @description */ public function show($id) { $systemUser = User::find($id); return showJson(101, 1001, [ 'role' => $systemUser->roles, 'permission' => $systemUser->getPermissionsViaRoles() ]); } /** * 角色可以从管理员中删除 * @author fatty * @date 2019/1/8 * @param $uid * @description */ public function removeRole(Request $request) { $user = User::find($request->post('suid')); if ($user->is_super == 1) { return showJsonErr('抱歉,您没有权限操作'); } $role = Role::findById($request->post('roleid'), config('permission.guard')); $user->removeRole($role); return showJsonSucc('移除角色成功', $user->roles()); } }