recordsModels(); $recordsModels->map(function ($item){ $item->yz_member = $item->yzMember; $item->nickname = $item->nickname ?: ($item->mobile ? substr($item->mobile, 0, 2) . '******' . substr($item->mobile, -2, 2) : '无昵称会员'); $item->yz_member->level = $item->yzMember->level; $item->yz_member->group = $item->yzMember->group; }); return $this->successJson('ok',[ 'shopSet' => Setting::get('shop.member'), 'amount' => $this->amount(), 'page' => $this->page($recordsModels), 'search' => $this->searchParams(), 'pageList' => $recordsModels, 'memberLevel' => $this->memberLevels(), 'memberGroup' => $this->memberGroups(), ]); } /** * @return array */ public function searchParams() { return request()->search ?: []; } /** * @param LengthAwarePaginator $recordsModels * * @return string */ private function page(LengthAwarePaginator $recordsModels) { return PaginationHelper::show($recordsModels->total(), $recordsModels->currentPage(), $recordsModels->perPage()); } /** * @return LengthAwarePaginator */ private function recordsModels() { $recordsModels = Member::uniacid(); if ($search = $this->searchParams()) { $recordsModels = $recordsModels->search($search); } return $recordsModels->orderBy('uid', 'desc')->withoutDeleted()->paginate(); } private function amount() { return Member::uniacid()->withoutDeleted()->sum('credit2'); } private function memberLevels() { return MemberLevel::getMemberLevelList(); } private function memberGroups() { return MemberGroup::getMemberGroupList(); } }