ajax()) { $records = Income::records() ->withMember() ->with([ 'hasManyOrder' => function ($query) { $query->select('order_sn','price'); } ]); $search = \YunShop::request()->search; if ($search) { $records = $records->search($search)->searchMember($search); } $pageList = $records->orderBy('id', 'desc')->paginate(); $amount = $records->sum('amount'); $shopSet = Setting::get('shop.member'); $pageList->map(function ($item) { $item->member->nickname = $item->member->nickname ?: ($item->member->mobile ? substr($item->member->mobile, 0, 2) . '******' . substr($item->member->mobile, -2, 2) : '无昵称会员'); }); $pageList = $pageList->toArray(); foreach ($pageList['data'] as &$item) { if (!$item['member']) { $item['member'] = [ 'nickname' => '已注销或已删除会员', 'avatar' => tomedia($shopSet['headimg']), ]; } if($item['dividend_code'] == 2){ $type = TeamDividendModel::where('id', $item['incometable_id'])->value('type'); switch ($type) { case 0: $item['type_name'] = '分红佣金'; break; case 1: $item['type_name'] = '示范点奖励'; break; case 2: $item['type_name'] = '感恩奖励'; break; case 3: $item['type_name'] = '额外分红'; break; case 7: $item['type_name'] = '推广佣金';// 月月返 break; case 8: $item['type_name'] = '拓新奖';// 分红奖 break; } } else if($item['dividend_code'] == 203){ $item['type_name'] = '合作养殖补助'; } } return $this->successJson('ok', [ 'pageList' => $pageList, 'search' => $search, 'income_type_comment' => $this->getIncomeTypeComment(), 'amount' => $amount ]); } return view('income.income_records')->render(); } //收入明细导出excel public function export() { $records = Income::records()->withMember() ->with([ 'hasManyOrder' => function ($query) { $query->select('order_sn','price'); } ]) ->orderBy('created_at', 'desc'); $search = \YunShop::request()->search; if ($search) { if (isset($search['time'])) { $search['time'] = explode(',', $search['time']); $search['time'] = [ 'start' => $search['time'][0], 'end' => $search['time'][1] ]; } $records = $records->search($search)->searchMember($search); } $export_page = request()->export_page ? request()->export_page : 1; $export_model = new ExportService($records, $export_page); // $data = $records->orderBy('created_at','desc')->limit(20)->get()->toArray(); $excel_data=[['会员id','粉丝','姓名','手机','时间','收入金额','业务类型','提现状态','打款状态','订单号','订单金额']]; // foreach ($data as $v){ foreach ($export_model->builder_model->toArray() as $v){ $typeName = '合作养殖补助'; if($v['dividend_code'] == 2){ $type = TeamDividendModel::where('id', $v['incometable_id'])->value('type'); switch ($type) { case 0: $typeName = '分红佣金'; break; case 1: $typeName = '示范点奖励'; break; case 2: $typeName = '感恩奖励'; break; case 3: $typeName = '额外分红'; break; case 7: $typeName = '推广佣金';// 月月返 break; case 8: $typeName = '拓新奖';// 分红奖 break; } } $excel_data[]=[ $v['member_id'], empty($v['member']['nickname']) ? '' : $v['member']['nickname'], empty($v['member']['realname']) ? '' : $v['member']['realname'], empty($v['member']['mobile']) ? '' : $v['member']['mobile'], $v['created_at'], $v['amount'], $typeName, $v['status_name'], $v['pay_status_name'], ($v['order_sn']?:''), ($v['has_many_order']['price']?:''), ]; } $file_name = date('Ymdhis', time()) . '收入明细导出'.$export_page; $export_model->export($file_name, $excel_data, "income.income-records.index"); } private function getIncomeTypeComment() { return \app\backend\modules\income\Income::current()->getItems(); } }