getAsInput('search'); $channelAlias = $input->getTrimString('channelAlias'); $channel = null; if ($channelAlias) { $channel = ChannelUtil::getByAlias($channelAlias); BizException::throwsIfEmpty('频道不存在', $channel); } $page = $input->getPage(); $pageSize = $input->getPageSize(); $option = []; $option['order'] = ['id', 'desc']; if ($channel) { $nodes = ChannelUtil::all(); $channelIds = TreeUtil::nodesChildrenIds($nodes, $channel['id']); $channelIds = array_merge([$channel['id']], $channelIds); $option['order'] = ['id', 'desc']; $option['whereIn'] = ['channelId', $channelIds]; } $paginateData = PostUtil::paginatePosts($page, $pageSize, $option); MemberUtil::mergeMemberUserBasics($paginateData['records']); return Response::generateSuccessData([ 'page' => $page, 'pageSize' => $pageSize, 'records' => $paginateData['records'], 'total' => $paginateData['total'], 'channel' => $channel, ]); } }