You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
121 lines
5.0 KiB
PHP
121 lines
5.0 KiB
PHP
<?php
|
|
|
|
namespace Admin\Controller;
|
|
|
|
use User\Api\UserApi as UserApi;
|
|
|
|
/**
|
|
* 后台首页控制器
|
|
* @author 麦当苗儿 <zuojiazi@vip.qq.com>
|
|
*/
|
|
class SpendController extends ThinkController
|
|
{
|
|
const model_name = 'Spend';
|
|
|
|
public function lists()
|
|
{
|
|
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']);
|
|
} elseif (isset($_REQUEST['time-start'])) {
|
|
$map['pay_time'] = ['GT', strtotime(I('time-start'))];
|
|
unset($_REQUEST['time-start']);
|
|
} elseif (isset($_REQUEST['time-end'])) {
|
|
$map['pay_time'] = ['LT', strtotime(I('time-end')) + 86399];
|
|
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']);
|
|
} elseif (isset($_REQUEST['start'])) {
|
|
$map['pay_time'] = ['GT', strtotime(I('start'))];
|
|
unset($_REQUEST['start']);
|
|
} elseif (isset($_REQUEST['end'])) {
|
|
$map['pay_time'] = ['LT', strtotime(I('end')) + 86399];
|
|
unset($_REQUEST['end']);
|
|
}
|
|
if (isset($_REQUEST['game_name'])) {
|
|
if ($_REQUEST['game_name'] == '全部') {
|
|
unset($_REQUEST['game_name']);
|
|
} else {
|
|
$map['game_id'] = ['in', array_column(getGameByName($_REQUEST['game_name'], $_REQUEST['game_type']), 'id')];
|
|
unset($_REQUEST['game_name']);
|
|
}
|
|
}
|
|
if (isset($_REQUEST['server_name'])) {
|
|
$map['server_name'] = $_REQUEST['server_name'];
|
|
unset($_REQUEST['server_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'])) {
|
|
if ($_REQUEST['pay_way'] == 2) {
|
|
$map['pay_way'] = ['in', '2,3,4'];
|
|
} else {
|
|
$map['pay_way'] = $_REQUEST['pay_way'];
|
|
}
|
|
unset($_REQUEST['pay_way']);
|
|
}
|
|
if (isset($_REQUEST['pay_game_status'])) {
|
|
$map['pay_game_status'] = $_REQUEST['pay_game_status'];
|
|
unset($_REQUEST['pay_game_status']);
|
|
}
|
|
if (isset($_REQUEST['promote_id'])) {
|
|
$promoteId = intval($_REQUEST['promote_id']);
|
|
if ($promoteId == 0) {
|
|
$map['promote_id'] = 0;
|
|
} else {
|
|
$promoteMap['chain'] = ['like', "%/$promoteId/%"];
|
|
$promoteIds = M('Promote', 'tab_')->where($promoteMap)->getField('id', true);
|
|
$promoteIds[] = $promoteId;
|
|
$map['promote_id'] = ['in', $promoteIds];
|
|
}
|
|
}
|
|
|
|
if ($_REQUEST['data_order'] != '') {
|
|
$data_order = reset(explode(',', $_REQUEST['data_order']));
|
|
$data_order_type = end(explode(',', $_REQUEST['data_order']));
|
|
$this->assign('userarpu_order', $data_order);
|
|
$this->assign('userarpu_order_type', $data_order_type);
|
|
$sort = $data_order == 3 ? 'desc' : 'asc';
|
|
$order = $data_order_type . ' ' . $sort;
|
|
} else {
|
|
$order = ' pay_time desc ';
|
|
}
|
|
|
|
$map1 = $map;
|
|
$map1['pay_status'] = 1;
|
|
$total = null_to_0(D(self::model_name)->where($map1)->sum('pay_amount'));
|
|
$ttotal = null_to_0(D(self::model_name)->where('pay_time' . total(1))->where(array('pay_status' => 1))->sum('pay_amount'));
|
|
$ytotal = null_to_0(D(self::model_name)->where('pay_time' . total(5))->where(array('pay_status' => 1))->sum('pay_amount'));
|
|
$this->assign('total', $total);
|
|
$this->assign('ttotal', $ttotal);
|
|
$this->assign('ytotal', $ytotal);
|
|
$this->meta_title = $this->m_title = '游戏充值';
|
|
$this->assign('commonset', M('Kuaijieicon')->where(['url' => 'Spend/lists', 'status' => 1])->find());
|
|
|
|
$data = D(self::model_name)->lists($_GET["p"], $map, $order);
|
|
|
|
$this->assign('list_data', $data['data']);
|
|
$this->assign('_page', $data['page']);
|
|
$this->display();
|
|
}
|
|
|
|
}
|