コード例 #1
0
 /**
  * 获取需要修改菜单的数据
  * 
  * @param       
  * 
  * @author      wen.zhou@bioon.com
  * 
  * @date        2015-10-17 08:09:32
  * 
  * @return      
  */
 public function getEdit(PermissionTreeContract $perCon)
 {
     $id = request('id', 2);
     $returnData = [];
     if (is_numeric($id) && !empty($id)) {
         $role = Role::find($id);
         if (!$role->get()->isEmpty()) {
             /*所有权限*/
             $all_permissions = Permission::all();
             /*该角色的所有权限*/
             $role_permissions = $role->permissions()->get()->keyBy('slug')->keys()->toArray();
             $deal_permissions = [];
             foreach ($all_permissions as $all_permission) {
                 array_set($deal_permissions, $all_permission->slug, json_encode(['key' => $all_permission->slug, 'val' => $all_permission->name . ':' . $all_permission->description]));
             }
             $permissions = $perCon->permissionToTreeUpdate($deal_permissions, $role_permissions, '#');
             $returnData['status'] = true;
             $returnData['msg'] = "获取成功";
             $returnData['role'] = $role;
             $returnData['permissions'] = json_encode($permissions);
             $returnData['role_permissions'] = json_encode($role_permissions);
         } else {
             $returnData['status'] = false;
             $returnData['msg'] = "获取失败";
         }
     } else {
         $returnData['status'] = false;
         $returnData['msg'] = "获取数据错误";
     }
     return view('admin.role.edit')->with($returnData);
 }
コード例 #2
0
 /**
  * 获取需要修改菜单的数据
  * 
  * @param       
  * 
  * @author      wen.zhou@bioon.com
  * 
  * @date        2015-10-17 08:09:32
  * 
  * @return      
  */
 public function getEdit(PermissionTreeContract $perCon)
 {
     $id = request('id', 2);
     $returnData = [];
     if (is_numeric($id) && !empty($id)) {
         $user = User::find($id);
         if (!$user->get()->isEmpty()) {
             /*用户所拥有的角色*/
             $user_roles = $user->getRoles();
             /*用户所拥有的权限*/
             $user_permissions = $user->userPermissions()->get()->keyBy('slug')->keys()->toArray();
             /*所有角色*/
             $all_roles = Role::all();
             /*所有权限*/
             $all_permissions = Permission::all();
             $deal_permissions = [];
             foreach ($all_permissions as $all_permission) {
                 array_set($deal_permissions, $all_permission->slug, json_encode(['key' => $all_permission->slug, 'val' => $all_permission->name . ':' . $all_permission->description]));
             }
             $permissions = $perCon->permissionToTreeUpdate($deal_permissions, $user_permissions, '#');
             $returnData['status'] = true;
             $returnData['msg'] = "获取成功";
             $returnData['user'] = $user;
             $returnData['permissions'] = collect($permissions);
             $returnData['user_permissions'] = collect($user_permissions);
             $returnData['user_roles'] = $user_roles;
             $returnData['all_roles'] = $all_roles;
         } else {
             $returnData['status'] = false;
             $returnData['msg'] = "获取失败";
         }
     } else {
         $returnData['status'] = false;
         $returnData['msg'] = "获取数据错误";
     }
     return view('admin.user.edit')->with($returnData);
 }