优化游戏统计

master
chenzhi 5 years ago
parent a33bf22e52
commit 381327ae21

@ -698,6 +698,9 @@ class FinanceController extends ThinkController
*游戏统计 *游戏统计
*/ */
public function gameStatistics($p = 1) { 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 = intval($p);
$page = $page ? $page : 1; //默认显示第一页数据 $page = $page ? $page : 1; //默认显示第一页数据
$row = $_REQUEST['row'] ?? 10; $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']; $data[$key]['all_cash_count'] = $value['cash_count'] + $value['balance_coin_count'] + $value['inside_cash_count'];
} }
$allData = D("spend")->gameStatistics($map);//列表总数 $count = D("spend")->gameStatisticsCount($map);//列表总数
$count = count($allData); // $allData = D("spend")->gameStatistics($map);//列表总数
// $count = count($allData);
$page = set_pagination($count, $row); $page = set_pagination($count, $row);
if ($page) { if ($page) {
$this->assign('_page', $page);//分页 $this->assign('_page', $page);//分页

@ -840,7 +840,7 @@ class SpendModel extends Model
*/ */
public function gameStatistics($map, $row = 0, $page = 1) 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, ->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 cash_count,
SUM(CASE WHEN pay_way = 0 THEN pay_amount ELSE 0 END) as balance_coin_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(); $data = $query->select();
return $data; 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) 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, ->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 = 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"); SUM(CASE WHEN pay_way = -1 THEN pay_amount ELSE 0 END) as inside_cash_count");

@ -41,7 +41,7 @@
<!--游戏类型搜索END--> <!--游戏类型搜索END-->
<div class="input-list"> <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> </div>
<input type="hidden" name="count_date" value="{$_GET['count_date']}"/> <input type="hidden" name="count_date" value="{$_GET['count_date']}"/>
<input type="hidden" name="game_id" value="{$_GET['game_id']}"/> <input type="hidden" name="game_id" value="{$_GET['game_id']}"/>

Loading…
Cancel
Save