getActiveSheet(0)->mergeCells('A1:' . $cellName[$cellNum - 1] . '1');//合并单元格 $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1', $expTitle); $objPHPExcel->setActiveSheetIndex(0)->getStyle('A1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); for ($i = 0; $i < $cellNum; $i++) { $objPHPExcel->setActiveSheetIndex(0)->setCellValue($cellName[$i] . '2', $expCellName[$i][1]); } for ($i = 0; $i < $dataNum; $i++) { for ($j = 0; $j < $cellNum; $j++) { $objPHPExcel->getActiveSheet(0)->setCellValue($cellName[$j] . ($i + 3), $expTableData[$i][$expCellName[$j][0]]); } } ob_end_clean();//清除缓冲区,避免乱码 header('pragma:public'); header('Content-type:application/vnd.ms-excel;charset=utf-8;name="' . $xlsTitle . '.xls"'); header("Content-Disposition:attachment;filename=$fileName.xls");//attachment新窗口打印inline本窗口打印 $objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); $objWriter->save('php://output'); exit; } //导出Excel function expUser($id) { switch ($id) { case 1: $xlsName = "订单查询"; $xlsCell = array( array('pay_order_number', '订单号'), array('user_account', '玩家账号'), array('game_name', '游戏名'), array('sdk_version', '系统','get_systems_name','*'), array('pay_amount', '充值金额'), array('pay_way', '充值方式','get_pay_way_name','*'), array('pay_game_status', '通知状态','get_info_status','*','14'), array('pay_time', '充值时间','time_format','*'), ); if(!empty($_REQUEST['start_time']) && !empty($_REQUEST['end_time'])) {$map['pay_time'] = array('between',[strtotime($_REQUEST['start_time']),strtotime($_REQUEST['end_time'])+86399]);} elseif (!empty($_REQUEST['start_time']) && empty($_REQUEST['end_time'])) {$map['pay_time'] = array('between',[strtotime($_REQUEST['start_time']),time()]);} elseif (empty($_REQUEST['start_time']) && !empty($_REQUEST['end_time'])) {$map['pay_time'] = array('elt',strtotime($_REQUEST['end_time'])+86399);} if (isset($_REQUEST['developers']) && $_REQUEST['developers'] != "") { $gamemap['developers']=$_REQUEST['developers']; $user_id=M('game','tab_')->where($gamemap)->field('id')->select(); foreach ($user_id as $key => $value) { $arr[]=array_values($value)[0]; } $map['game_id']=array('in',$arr); unset($_REQUEST['developers']); } if(isset($_GET['user_account'])&&$_GET['user_account']!=""){ $map['user_account']=array('like','%'.$_GET['user_account'].'%'); } if (isset($_REQUEST['pay_status']) && $_REQUEST['pay_status'] != "") { $map['pay_status'] = $_REQUEST['pay_status']; unset($_REQUEST['pay_status']); } if(isset($_REQUEST['game_id'])&&$_REQUEST['game_id']!=""){ $map['game_id']=$_REQUEST['game_id']; } if(isset($_REQUEST['pay_way'])&&$_REQUEST['pay_way']!=""){ $map['pay_way']=$_REQUEST['pay_way']; } $xlsData = M('spend','tab_') ->where($map) ->order('pay_time desc') ->select(); break; case 2: $xlsName = "游戏数据"; $xlsCell = array( array('game_name', '游戏名称'), array('add_user', '新增玩家'), array('active_user', '活跃玩家'), array('spend', '流水'), array('ARPU', 'ARPU'), array('ARPPU', 'ARPPU'), array('pay_rate', '付费率'), array('total_spend', '累计流水'), array('total_user', '累计玩家'), array('online_time', '上线时间','time_format', '*'), ); $Game = new GameModel(); empty($_REQUEST['game_id']) || $game_map['g.id'] = $_REQUEST['game_id']; $game_map['developers']= UID; $game_map['online_status'] = 1; $game_data = $Game->getDataLists($game_map,1,"create_time desc",100000); $game_list = $game_data['data']; foreach ($game_list as $key=>$value){ $game_list[$key] = array_merge($game_list[$key],$Game->dataTable($value['id'])); } $xlsData=$game_list; // foreach ($xlsData as $key => &$value) { // $xlsData[$key]['parent_id'] = get_top_promote($value['promote_id'], $value['parent_id']); // } break; case 3: $xlsName = "玩家列表"; $xlsCell = array( array('id', '账号ID'), array('account', '玩家账号'), array('promote_account', '所属渠道'), array('balance', '账户余额'), array('cumulative', '充值金额'), array('lock_status', '账号状态', 'get_info_status', '*', '4'), array('register_way', '注册来源', "get_registertype", '*'), array('register_time', '注册时间', 'time_format', '*'), array('register_ip', '注册IP'), array('login_time', '最后登录时间', 'time_format', '*'), ); if(isset($_REQUEST['promote_account'])){ $map['promote_id'] = get_promote_id(trim(I('promote_account'))); unset($_REQUEST['promote_account']); } if(isset($_REQUEST['register_way'])){ $map['register_way'] = I('register_way'); unset($_REQUEST['register_way']); } if(isset($_REQUEST['status'])){ $map['lock_status'] = I('status'); unset($_REQUEST['status']); } if(!empty(I('time_start')) && !empty(I('time_end'))){ $map['register_time'] = array('BETWEEN',array(strtotime(I('get.time_start')),strtotime(I('time_end'))+24*60*60-1)); unset($_REQUEST['time_start']);unset($_REQUEST['time_end']); } empty(I('account')) || $map['account'] = ['like','%'.I('account').'%']; //排序 if (I('total_status') == 1) { $order = 'cumulative asc'; } elseif (I('total_status') == 2) { $order = 'cumulative desc'; } else { $order = 'id desc'; } //数据 $xlsData = M('user', 'tab_') ->where($map) ->order($order) ->select(); break; case 4: $xlsName = "渠道充值"; if(isset($_REQUEST['game_name'])){ if($_REQUEST['game_name']=='全部'){ unset($_REQUEST['game_name']); }else{ $map['game_name']=$_REQUEST['game_name']; unset($_REQUEST['game_name']); } } if(!empty($_REQUEST['server_id'])){ $map['server_id']=$_REQUEST['server_id']; unset($_REQUEST['server_id']); } if(isset($_REQUEST['promote_name'])){ if($_REQUEST['promote_name']=='全部'){ unset($_REQUEST['promote_name']); }else if($_REQUEST['promote_name']=='自然注册'){ $map['promote_id']=array("lte",0); unset($_REQUEST['promote_name']); }else{ $map['promote_id']=get_promote_id($_REQUEST['promote_name']); unset($_REQUEST['promote_name']); } }else{ $map['promote_id']=array("gt",0); } if(isset($_REQUEST['pay_way'])){ $map['pay_way']=$_REQUEST['pay_way']; unset($_REQUEST['pay_way']); } if(isset($_REQUEST['user_account'])){ $map['user_account']=array('like','%'.$_REQUEST['user_account'].'%'); unset($_REQUEST['user_account']); } if(isset($_REQUEST['spend_ip'])){ $map['spend_ip']=array('like','%'.$_REQUEST['spend_ip'].'%'); unset($_REQUEST['spend_ip']); } if(isset($_REQUEST['promote_name'])){ $map['promote_account']=$_REQUEST['promote_name']; unset($_REQUEST['user_account']); } if(isset($_REQUEST['time-start'])&&isset($_REQUEST['time-end'])){ $map['pay_time']=array('BETWEEN',array(strtotime($_REQUEST['time-start']),strtotime($_REQUEST['time-end'])+24*60*60-1)); unset($_REQUEST['time-start']);unset($_REQUEST['time_end']); } if(isset($_REQUEST['start'])&&isset($_REQUEST['end'])){ $map['pay_time']=array('BETWEEN',array(strtotime($_REQUEST['start']),strtotime($_REQUEST['end'])+24*60*60-1)); unset($_REQUEST['start']);unset($_REQUEST['end']); } $model = array( 'm_name' => 'Spend', 'map' => $map, 'order' => 'id desc', 'title' => '渠道充值', 'template_list' => 'spend_list', ); $map1 = $map; $map1['pay_status'] = 1; $total = M('Spend', 'tab_')->where($map1)->sum('pay_amount'); $total = sprintf("%.2f", $total); $xlsCell = array( array('pay_order_number', '订单号'), array('pay_time', '充值时间', 'time_format', '*'), array('user_account', '玩家账号'), array('promote_account', '所属渠道'), array('game_name', '游戏名称'), array('server_name', '游戏区服'), array('game_player_name', '角色名'), array('spend_ip', '充值IP'), array('pay_amount', '充值金额'), array('pay_way', '充值方式', 'get_info_status', '*', 18), array('parent_id', '上级渠道'), array('promote_id', '平台专员', 'get_belong_admin', '*'), array("", "共计充值{$total}"), ); $name = $model['m_name']; $xlsData = $data = D($name) ->where($map) ->order($model['order']) ->group($model['group']) ->select(); foreach ($xlsData as $key => &$value) { $xlsData[$key]['parent_id'] = get_top_promote($value['promote_id'], $value['parent_id']); } break; case 5: $map['promote_id'] = array("neq", 0); if (isset($_REQUEST['user_account'])) { $map['user_account'] = array('like', '%' . $_REQUEST['user_account'] . '%'); unset($_REQUEST['user_account']); } if (!empty($_REQUEST['pay_way'])) { $map['pay_way'] = $_REQUEST['pay_way']; unset($_REQUEST['pay_way']); } if (isset($_REQUEST['promote_name'])) { if ($_REQUEST['promote_name'] == '全部') { unset($_REQUEST['promote_name']); } else if ($_REQUEST['promote_name'] == '自然注册') { $map['promote_id'] = array("elt", 0); unset($_REQUEST['promote_name']); } else { $map['promote_id'] = get_promote_id($_REQUEST['promote_name']); unset($_REQUEST['promote_name']); unset($_REQUEST['promote_id']); } } if (isset($_REQUEST['time-start']) && isset($_REQUEST['time-end'])) { $map['create_time'] = array('BETWEEN', array(strtotime($_REQUEST['time-start']), strtotime($_REQUEST['time-end']) + 24 * 60 * 60 - 1)); unset($_REQUEST['time-start']); unset($_REQUEST['time_end']); } if (isset($_REQUEST['start']) && isset($_REQUEST['end'])) { $map['create_time'] = array('BETWEEN', array(strtotime($_REQUEST['start']), strtotime($_REQUEST['end']) + 24 * 60 * 60 - 1)); unset($_REQUEST['start']); unset($_REQUEST['end']); } if (isset($_REQUEST['game_name'])) { if ($_REQUEST['game_name'] == '全部') { unset($_REQUEST['game_name']); } else { $map['game_name'] = $_REQUEST['game_name']; unset($_REQUEST['game_name']); } } $map1 = $map; $map1['pay_status'] = 1; $total = M('Agent', 'tab_')->where($map1)->sum('amount'); $total = sprintf("%.2f", $total); $xlsName = "代充记录"; $xlsCell = array( array('user_account', '玩家账号'), array('game_name', '游戏名称'), array('amount', '代充金额'), array('zhekou', '折扣比例'), array('real_amount', '实付金额'), array('pay_status', '充值状态', 'get_info_status', '*', '7'), array('pay_way', '支付方式', 'pay_way', '*'), array('promote_account', '所属渠道'), array('create_time', '代充时间', 'time_format', '*'), array("", "共计代充{$total}"), ); $xlsData = D('Agent') ->where($map) ->order('id DESC') ->select(); break; case 6: if(isset($_REQUEST['account'])){ if ($_REQUEST['account']=='全部') { unset($_REQUEST['account']); } $map['account']=array('like','%'.$_REQUEST['account'].'%'); unset($_REQUEST['account']); } $map['pay_limit']=array('gt','0'); $model=D('Promote'); $xlsData=$model ->where($map) ->select(); $xlsName = "代充额度"; $xlsCell = array( array('id','ID'), array('account', '推广员账号'), array('pay_limit_game', '游戏名称','get_game_limit_name','*'), array('pay_limit', '代充额度'), array('set_pay_time', '更新时间', 'time_format', '*'), ); break; case 7: $xlsName = "消费记录"; if (isset($_REQUEST['user_account'])) { $map['user_account'] = array('like', '%' . trim($_REQUEST['user_account']) . '%'); unset($_REQUEST['user_account']); } if (isset($_REQUEST['spend_ip'])) { $map['spend_ip'] = array('like', '%' . trim($_REQUEST['spend_ip']) . '%'); unset($_REQUEST['spend_ip']); } if (isset($_REQUEST['time-start']) && isset($_REQUEST['time-end'])) { $map['pay_time'] = array('BETWEEN', array(strtotime($_REQUEST['time-start']), strtotime($_REQUEST['time-end']) + 24 * 60 * 60 - 1)); unset($_REQUEST['time-start']); unset($_REQUEST['time-end']); } if (isset($_REQUEST['start']) && isset($_REQUEST['end'])) { $map['pay_time'] = array('BETWEEN', array(strtotime($_REQUEST['start']), strtotime($_REQUEST['end']) + 24 * 60 * 60 - 1)); unset($_REQUEST['start']); unset($_REQUEST['end']); } if (isset($_REQUEST['game_name'])) { if ($_REQUEST['game_name'] == '全部') { unset($_REQUEST['game_name']); } else { $map['game_name'] = $_REQUEST['game_name']; unset($_REQUEST['game_name']); } } if (isset($_REQUEST['pay_order_number'])) { $map['pay_order_number'] = array('like', '%' . trim($_REQUEST['pay_order_number']) . '%'); unset($_REQUEST['pay_order_number']); } if (isset($_REQUEST['pay_status'])) { $map['pay_status'] = $_REQUEST['pay_status']; unset($_REQUEST['pay_status']); } if (isset($_REQUEST['pay_way'])) { $map['pay_way'] = $_REQUEST['pay_way']; unset($_REQUEST['pay_status']); } if (isset($_REQUEST['pay_game_status'])) { $map['pay_game_status'] = $_REQUEST['pay_game_status']; unset($_REQUEST['pay_game_status']); } $map1 = $map; $map1['pay_status'] = 1; $total = D('Spend')->where($map1)->sum('pay_amount'); if (isset($map['pay_status']) && $map['pay_status'] == 0) { $total = sprintf("%.2f", 0); } else { $total = sprintf("%.2f", $total); } $xlsData = D('Spend') ->where($map) ->order('pay_time DESC') ->select(); $xlsCell = array( array('pay_order_number', '订单号'), array('pay_time', '充值时间', 'time_format', '*'), array('user_account', '用户帐号'), array('game_name', '游戏名称'), array('server_name', '游戏区服'), array('game_player_name', '角色名'), array('spend_ip', '充值IP'), array('pay_amount', '充值金额'), array('pay_way', '充值方式', 'get_pay_way', '*'), array('pay_status', '订单状态', 'get_info_status', '*', '9'), array('pay_status', '游戏通知状态', 'get_info_status', '*', '14'), array('', "共计消费{$total}"), ); break; case 8: $xlsName = "平台币充值"; if (isset($_REQUEST['user_account'])) { $map['user_account'] = array('like', '%' . trim($_REQUEST['user_account']) . '%'); unset($_REQUEST['user_account']); } if (isset($_REQUEST['pay_order_number'])) { $map['pay_order_number'] = array('like', '%' . trim($_REQUEST['pay_order_number']) . '%'); unset($_REQUEST['pay_order_number']); } if (isset($_REQUEST['pay_ip'])) { $map['pay_ip'] = array('like', '%' . trim($_REQUEST['pay_ip']) . '%'); unset($_REQUEST['pay_ip']); } if (!isset($_REQUEST['promote_id'])) { } else if (isset($_REQUEST['promote_id']) && $_REQUEST['promote_id'] == 0) { $map['promote_id'] = array('elt', 0); unset($_REQUEST['promote_id']); unset($_REQUEST['promote_name']); } elseif (isset($_REQUEST['promote_name']) && $_REQUEST['promote_id'] == -1) { $map['promote_id'] = get_promote_id($_REQUEST['promote_name']); unset($_REQUEST['promote_id']); unset($_REQUEST['promote_name']); } else { $map['promote_id'] = $_REQUEST['promote_id']; unset($_REQUEST['promote_id']); unset($_REQUEST['promote_name']); } if (isset($_REQUEST['time-start']) && isset($_REQUEST['time-end'])) { $map['create_time'] = array('BETWEEN', array(strtotime($_REQUEST['time-start']), strtotime($_REQUEST['time-end']) + 24 * 60 * 60 - 1)); unset($_REQUEST['time-start']); unset($_REQUEST['time-end']); } if (isset($_REQUEST['start']) && isset($_REQUEST['end'])) { $map['create_time'] = array('BETWEEN', array(strtotime($_REQUEST['start']), strtotime($_REQUEST['end']) + 24 * 60 * 60 - 1)); unset($_REQUEST['start']); unset($_REQUEST['end']); } if (isset($_REQUEST['pay_way'])) { $map['pay_way'] = $_REQUEST['pay_way']; unset($_REQUEST['pay_way']); } if (isset($_REQUEST['pay_status'])) { $map['pay_status'] = $_REQUEST['pay_status']; unset($_REQUEST['pay_status']); } $map1 = $map; $map1['pay_status'] = 1; $total = D('Deposit')->where($map1)->sum('pay_amount'); if (isset($map['pay_status']) && $map['pay_status'] == 0) { $total = sprintf("%.2f", 0); } else { $total = sprintf("%.2f", $total); } $xlsCell = array( array('pay_order_number', '订单号'), array('create_time', '充值时间', 'time_format'), array('user_account', '玩家账号'), array('pay_ip', '充值IP'), array('promote_account', '所属渠道'), array('pay_amount', '充值金额'), array('pay_way', '充值方式', 'get_pay_way', '*'), array('pay_status', '订单状态', 'get_info_status', '*', '9'), array('', "共计充值{$total}"), ); $xlsData = D('Deposit') ->where($map) ->order('id DESC') ->select(); break; case 9: $xlsName = "平台币发放"; if (isset($_REQUEST['user_account'])) { $map['user_account'] = array('like', '%' . trim($_REQUEST['user_account']) . '%'); unset($_REQUEST['user_account']); } if (isset($_REQUEST['time-start']) && isset($_REQUEST['time-end'])) { $map['create_time'] = array('BETWEEN', array(strtotime($_REQUEST['time-start']), strtotime($_REQUEST['time-end']) + 24 * 60 * 60 - 1)); unset($_REQUEST['time-start']); unset($_REQUEST['time-end']); } if (isset($_REQUEST['start']) && isset($_REQUEST['end'])) { $map['create_time'] = array('BETWEEN', array(strtotime($_REQUEST['start']), strtotime($_REQUEST['end']) + 24 * 60 * 60 - 1)); unset($_REQUEST['start']); unset($_REQUEST['end']); } if (isset($_REQUEST['game_name'])) { if ($_REQUEST['game_name'] == '全部') { unset($_REQUEST['game_name']); } else { $map['game_name'] = $_REQUEST['game_name']; unset($_REQUEST['game_name']); } } if (isset($_REQUEST['op_account'])) { if ($_REQUEST['op_account'] == '全部') { unset($_REQUEST['op_account']); } else { $map['op_account'] = $_REQUEST['op_account']; unset($_REQUEST['op_account']); } } $map1 = $map; $map1['status'] = 1; $total = M('provide', 'tab_')->where($map1)->sum('amount'); $total = sprintf("%.2f", $total); $xlsData = M('provide', 'tab_') ->where($map) ->order('id DESC') ->select(); $xlsCell = array( array('pay_order_number', '订单号'), array('user_account', '玩家账号'), array('game_name', '游戏名称'), array('amount', '发放金额'), array('status', '状态', 'get_info_status', '*', '15'), array('op_account', '操作人'), array('create_time', '发放时间', 'time_format', '*'), array('', "共计发放{$total}"), ); break; case 10: $xlsName = "绑定平台币消费"; if (isset($_REQUEST['user_account'])) { $map['user_account'] = array('like', '%' . trim($_REQUEST['user_account']) . '%'); unset($_REQUEST['user_account']); } if (isset($_REQUEST['pay_order_number'])) { $map['pay_order_number'] = array('like', '%' . trim($_REQUEST['pay_order_number']) . '%'); unset($_REQUEST['pay_order_number']); } if (isset($_REQUEST['time-start']) && isset($_REQUEST['time-end'])) { $map['pay_time'] = array('BETWEEN', array(strtotime($_REQUEST['time-start']), strtotime($_REQUEST['time-end']) + 24 * 60 * 60 - 1)); unset($_REQUEST['time-start']); unset($_REQUEST['time-end']); } if (isset($_REQUEST['start']) && isset($_REQUEST['end'])) { $map['pay_time'] = array('BETWEEN', array(strtotime($_REQUEST['start']), strtotime($_REQUEST['end']) + 24 * 60 * 60 - 1)); unset($_REQUEST['start']); unset($_REQUEST['end']); } if (isset($_REQUEST['game_name'])) { if ($_REQUEST['game_name'] == '全部') { unset($_REQUEST['game_name']); } else { $map['game_name'] = $_REQUEST['game_name']; } unset($_REQUEST['game_name']); } if (isset($_REQUEST['server_name'])) { if ($_REQUEST['server_name'] == '全部') { unset($_REQUEST['server_name']); } else { $map['server_name'] = $_REQUEST['server_name']; unset($_REQUEST['server_name']); } } $map1 = $map; $map1['pay_status'] = 1; $total = D('BindSpend')->where($map1)->sum('pay_amount'); $total = sprintf("%.2f", $total); $xlsCell = array( array('pay_order_number', '订单号'), array('pay_time', '充值时间', 'time_format', '*'), array('user_account', '玩家账号'), array('game_name', '游戏名称'), array('server_name', '游戏区服'), array('game_player_name', '角色名'), array('spend_ip', '充值IP'), array('pay_amount', '充值金额'), array('pay_status', '订单状态', 'get_info_status', '*', '9'), array('pay_game_status', '游戏通知状态', 'get_info_status', '*', '14'), array('', "共计使用{$total}") ); $xlsData = D('BindSpend') ->where($map) ->order('pay_time DESC,id DESC') ->select(); break; case 11: $xlsName = "礼包领取"; $xlsCell = array( array('user_account', '玩家账号'), array('game_name', '游戏名称'), array('gift_name', '礼包名称'), array('novice', '礼包卡号'), array('gift_id', '运营平台', 'get_operation_platform', '*', 'giftbag'), array('create_time', '领取时间', 'time_format', '*'), ); if(isset($_REQUEST['game_name'])){ $extend['game_name']=trim($_REQUEST['game_name']); unset($_REQUEST['game_name']); } if (isset($_REQUEST['user_account'])) { $extend['user_account']=trim($_REQUEST['user_account']); unset($_REQUEST['user_account']); } if(isset($_REQUEST['sdk_version'])){ if($_REQUEST['sdk_version'] ==''){ unset($_REQUEST['sdk_version']); }else{ $map['sdk_version'] = $_REQUEST['sdk_version']; $game_ids = M('game','tab_')->field('id')->where($map)->select(); $game_ids = array_column($game_ids,'id'); $extend['sdk_version'] = ['in',$game_ids]; unset($_REQUEST['sdk_version']); } } $xlsData = M('gift_record', 'tab_') ->where($extend) ->order("id DESC") ->select(); break; case 12: $xlsName = "渠道提现"; $xlsCell = array( array('settlement_number','提现单号'), array('sum_money','提现金额'), array('promote_id','推广员账号'), array('create_time','申请时间','time_format','*'), array('status','提现状态','get_info_status','*',19), array('end_time','审核时间','time_format','*'), ); if(isset($_REQUEST['settlement_number'])){ $map['settlement_number']=$_REQUEST['settlement_number']; } if(isset($_REQUEST['status'])){ $map['status']=$_REQUEST['status']; } if(isset($_REQUEST['promote_account'])){ if($_REQUEST['promote_account']=='全部'){ unset($_REQUEST['promote_account']); }else{ $map['promote_account'] = $_REQUEST['promote_account']; } } if($_REQUEST['create_time']==2){ $order='create_time desc'; }elseif($_REQUEST['create_time']==1){ $order='create_time asc'; } if($_REQUEST['sum_money']==2){ $order='sum_money desc'; }elseif($_REQUEST['sum_money']==1){ $order='sum_money asc'; } $model = array( 'm_name' => 'withdraw', 'order' => $order, 'title' => '渠道提现', 'template_list' =>'withdraw', ); $name = $model['m_name']; $xlsData = D($name) ->where($map) ->order($model['order']) ->select(); break; case 14: $xlsName = "游戏返利"; $xlsCell = array( array('pay_order_number', '订单号'), array('create_time', '返利时间', 'time_foramt', '*'), array('user_id', '玩家账号', 'get_user_account', '*'), array('game_name', '游戏名称'), array('pay_amount', '充值金额'), array('ratio', '返利比例', 'ratio_stytl', '*'), array('ratio_amount', '返利绑币'), ); if (isset($_REQUEST['user_account'])) { $map['user_name'] = array('like', '%' . trim($_REQUEST['user_account']) . '%'); unset($_REQUEST['user_account']); } if (isset($_REQUEST['game_name'])) { if ($_REQUEST['game_name'] == '全部') { unset($_REQUEST['game_name']); } else { $map['game_name'] = $_REQUEST['game_name']; unset($_REQUEST['game_name']); } } $xlsData = M('RebateList', 'tab_') ->where($map) ->order('id DESC') ->select(); break; case 15: $xlsName = "渠道结算"; $xlsCell = array( array('settlement_number', '订单号'), array('starttime','开始时间','time_format','*'), array('endtime','结束时间','time_format','*'), array('promote_account', '推广员账号'), array('game_name', '游戏名称'), array('total_money', '总充值'), array('total_number', '总注册'), array('pattern','合作模式 0 cps 1cpa'), array('ratio','分成比例%'), array('money','注册单价'), array('sum_money', '结算金额'), array('create_time', '结算时间','time_format','*'), // array('create_time', '结算时间', 'time_foramt', '*'), ); if (isset($_REQUEST['promote_account'])) { $map['promote_account'] = array('like', '%' . trim($_REQUEST['promote_account']) . '%'); unset($_REQUEST['promote_account']); } if (isset($_REQUEST['game_name'])) { if ($_REQUEST['game_name'] == '全部') { unset($_REQUEST['game_name']); } else { $map['game_name'] = $_REQUEST['game_name']; unset($_REQUEST['game_name']); } } $xlsData = M('settlement', 'tab_') ->where($map) ->order('id DESC') ->select(); break; default:$xlsName = $xlsCell = $xlsData = []; } //数据处理 foreach ($xlsData as $key => $val) { foreach ($xlsCell as $k => $v) { if (isset($v[2])) { $ar_k = array_search('*', $v); if ($ar_k !== false) { $v[$ar_k] = $val[$v[0]]; } $fun = $v[2]; $param = $v; unset($param[0], $param[1], $param[2]); $xlsData[$key][$v[0]] = call_user_func_array($fun, $param); } } } $this->exportExcel($xlsName, $xlsCell, $xlsData); } }