优化游戏统计

master
chenzhi 5 years ago
parent a33bf22e52
commit 381327ae21

@ -698,6 +698,9 @@ class FinanceController extends ThinkController
*游戏统计
*/
public function gameStatistics($p = 1) {
if(!array_key_exists("timestart",$_REQUEST)){
$this->redirect(ACTION_NAME, array('timestart' => date('Y-m-d',strtotime('-30 day')),"timeend"=>date('Y-m-d')));
}
$page = intval($p);
$page = $page ? $page : 1; //默认显示第一页数据
$row = $_REQUEST['row'] ?? 10;
@ -738,8 +741,9 @@ class FinanceController extends ThinkController
$data[$key]['all_cash_count'] = $value['cash_count'] + $value['balance_coin_count'] + $value['inside_cash_count'];
}
$allData = D("spend")->gameStatistics($map);//列表总数
$count = count($allData);
$count = D("spend")->gameStatisticsCount($map);//列表总数
// $allData = D("spend")->gameStatistics($map);//列表总数
// $count = count($allData);
$page = set_pagination($count, $row);
if ($page) {
$this->assign('_page', $page);//分页

@ -840,7 +840,7 @@ class SpendModel extends Model
*/
public function gameStatistics($map, $row = 0, $page = 1)
{
$query = $this->alias("s")
$query = M("Spend s use index(game_time)","tab_")
->field("s.game_id,s.game_name,p.partner as partner_name, g.game_type_name,
SUM(CASE WHEN pay_way > 0 THEN pay_amount ELSE 0 END) as cash_count,
SUM(CASE WHEN pay_way = 0 THEN pay_amount ELSE 0 END) as balance_coin_count,
@ -856,13 +856,25 @@ SUM(CASE WHEN pay_way = -1 THEN pay_amount ELSE 0 END) as inside_cash_count,g.sd
$data = $query->select();
return $data;
}
public function gameStatisticsCount($map)
{
$query = M("Spend s use index(game_time)","tab_")
->field("game_id")
->where(['s.pay_status' => 1, 'pay_game_status' => 1])
->where($map)
->group('s.game_id');
$data = $query->select();
return count($data);
}
/**
*获取游戏统计列表数据
*/
public function totalGameStatistics($map, $join = true)
{
$query = $this->alias("s")
$query = M("Spend s use index(game_time)","tab_")
->field("SUM(CASE WHEN pay_way > 0 THEN pay_amount ELSE 0 END) as cash_count,
SUM(CASE WHEN pay_way = 0 THEN pay_amount ELSE 0 END) as balance_coin_count,
SUM(CASE WHEN pay_way = -1 THEN pay_amount ELSE 0 END) as inside_cash_count");

@ -41,7 +41,7 @@
<!--游戏类型搜索END-->
<div class="input-list">
<a class="sch-btn" href="{:U('Finance/gameStatistics')}" style="background:#fff;color: #000;border: #000 solid 1px;width: 100px">返回</a>
<a class="sch-btn" href="javascript:history.go(-1)" style="background:#fff;color: #000;border: #000 solid 1px;width: 100px">返回</a>
</div>
<input type="hidden" name="count_date" value="{$_GET['count_date']}"/>
<input type="hidden" name="game_id" value="{$_GET['game_id']}"/>

Loading…
Cancel
Save