コード例 #1
0
 /**
  * Get all permissions from roles.
  *
  * @return \Illuminate\Database\Eloquent\Builder
  * @throws \Bican\Roles\Exceptions\RoleNotFoundException
  */
 public function rolePermissions()
 {
     if (!($roles = $this->getRoles()->lists('id'))) {
         throw new RoleNotFoundException('This user has no role.');
     }
     return Permission::select(['permissions.*', 'permission_role.created_at as pivot_created_at', 'permission_role.updated_at as pivot_updated_at'])->join('permission_role', 'permission_role.permission_id', '=', 'permissions.id')->join('roles', 'roles.id', '=', 'permission_role.role_id')->whereIn('roles.id', $roles)->orWhere('roles.level', '<', $this->level())->groupBy('permissions.id');
 }