repository = $repository; $this->merId = 0; } /** * @return mixed * 展示线下订单 */ public function lst() { [$page, $limit] = $this->getPage(); $where = $this->request->params(['keyword', 'date', 'status', 'mer_id']); $is_excel = $this->request->param('is_excel', 0); $data = $this->repository->getMerchantListAdmin($this->merId, $where, $page, $limit); if($is_excel){ $arr = []; foreach ($data as $item){ $status = $item['paid'] == 1 ? '已支付' : '未支付'; if($item['refund_time']) $status = '已退款'; $arr[] = [ $item['id'], $item['mer_id'], $item['merchant']['mer_name'] ?? '', $item['uid'], $item['money'], $item['available'], $item['service_money'], $item['pension'], $item['swipe_fee'], $item['mer_money'], $item['mer_fanyong'], $item['actual'], $status, $item['create_time'], $item['out_trade_no'] ]; } $header = [ 'ID', '商户ID', '商户名称', '用户ID', '充值金额', '可分佣总额', '服务商返利', '养老金', '刷卡手续费', '商户金额', '商户返佣', '实到金额', '状态', '时间', '订单号' ]; return app('json')->success($this->getStatisticsExcel($header, $arr, '线下订单')); } return app('json')->success($data); } public function getStatisticsExcel($header,$arr,$title) { $filename = $title.'_'.date('YmdHis').'_'.rand(10000,99999); $name = $filename; $info = '生成时间:' . date('Y-m-d H:i:s',time()); $suffix='xlsx'; $path='offline_order'; unset($_instance); $_instance = SpreadsheetExcelService::instance_xin(); $_path =$_instance ->createOrActive() ->setExcelHeader($header) ->setExcelTile($title, $name, $info) ->setExcelContent($arr) ->excelSave($filename, $suffix, $path); $domain = request()->domain(); $data= [ 'name' => $filename.'.'.$suffix, 'status' => 1, 'path' => $domain.'/'.$_path ]; return $data; } }