| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- <?php
- // +----------------------------------------------------------------------
- // | saiadmin [ saiadmin快速开发框架 ]
- // +----------------------------------------------------------------------
- // | Author: your name
- // +----------------------------------------------------------------------
- namespace app\v1\logic\gameLog;
- use plugin\saiadmin\basic\BaseLogic;
- use plugin\saiadmin\exception\ApiException;
- use plugin\saiadmin\utils\Helper;
- use app\v1\model\gameLog\SdkOrderSuccess;
- use plugin\saiadmin\service\OpenSpoutWriter;
- /**
- * 订单记录表(支付成功)逻辑层
- */
- class SdkOrderSuccessLogic extends BaseLogic
- {
- /**
- * 构造函数
- */
- public function __construct()
- {
- $this->model = new SdkOrderSuccess();
- }
- /**
- * 导出数据
- */
- public function export($where = [])
- {
- $query = $this->search($where);
- $data = $this->getAll($query);
-
- $data = $this->trandformListColumn($data, ['game', 'ip', 'agent','auth', 'pay_channel']);
- $data = array_map(function($item){
- return [
- 'orderid' => $item['orderid'],
- 'user_name' => $item['user_name'],
- 'agent_id' => $item['agent_id'],
- 'site_id' => $item['site_id'],
- 'game_name' => $item['game_name'],
- 'server_id' => $item['server_id'],
- 'server_name' => $item['server_name'],
- 'pay_channel_name' => $item['pay_channel_name'],
- 'money' => $item['money'],
- 'pay_date' => $item['pay_date'],
- 'reg_date' => $item['reg_date'],
-
- // 'is_first_pay' => $item['is_first_pay'],
- 'agent_name' => $item['agent_name'],
- 'auth_name' => $item['auth_name'],
- ];
- }, $data);
-
- // 是否首次付费
- // $filter = [
- // 'is_first_pay' => [
- // ['value' => 1, 'label' => '是'],
- // ['value' => 0, 'label' => '否']
- // ]
- // ];
- $file_name = '充值明细_'.date('YmdHis').'.xlsx';
- $header = ['订单号', '用户名', '渠道ID', '广告位ID', '游戏名', '服务器ID', '服务器名', '支付方式', '充值金额', '充值时间', '注册时间', '渠道名', '负责人'];
-
- $writer = new OpenSpoutWriter($file_name);
- $writer->setWidth([15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15]);
- $writer->setHeader($header);
- $writer->setData($data, null);
- // $writer->setData($data, null, $filter);
- $file_path = $writer->returnFile();
- return response()->download($file_path, urlencode($file_name));
- }
- }
|