diff --git a/Application/Admin/Controller/FinanceController.class.php b/Application/Admin/Controller/FinanceController.class.php index 46d48c31c..c607ade5b 100644 --- a/Application/Admin/Controller/FinanceController.class.php +++ b/Application/Admin/Controller/FinanceController.class.php @@ -757,6 +757,7 @@ class FinanceController extends ThinkController $sumCash = $totalData['cash_count']; $sumBalance = $totalData['balance_coin_count']; $sumInside = $totalData['inside_cash_count']; + $sumNoticeFail = $totalData['notice_fail_count']; $sumAll = $sumCash + $sumBalance + $sumInside; $game_types = M("game_type", 'tab_')->field('id, type_name')->select(); @@ -764,6 +765,7 @@ class FinanceController extends ThinkController $this->assign('sumCash', $sumCash); $this->assign('sumBalance', $sumBalance); $this->assign('sumInside', $sumInside); + $this->assign('sumNoticeFail', $sumNoticeFail); $this->assign('sumAll', $sumAll); $this->assign('data',$data); diff --git a/Application/Admin/Model/SpendModel.class.php b/Application/Admin/Model/SpendModel.class.php index f6746e7ff..c5de6492f 100644 --- a/Application/Admin/Model/SpendModel.class.php +++ b/Application/Admin/Model/SpendModel.class.php @@ -841,7 +841,7 @@ class SpendModel extends Model public function gameStatistics($map, $row = 0, $page = 1) { $noticeFailData = M("Spend s use index(game_time)","tab_") - ->field("SUM(CASE WHEN pay_way > 0 THEN pay_amount ELSE 0 END) as notice_fail_count,game_id") + ->field("SUM(pay_amount) as notice_fail_count,game_id") ->where(['s.pay_status' => 1, 'pay_game_status' => 0]) ->where($map) ->group('s.game_id') @@ -884,10 +884,18 @@ SUM(CASE WHEN pay_way = -1 THEN pay_amount ELSE 0 END) as inside_cash_count,g.sd */ public function totalGameStatistics($map, $join = true) { + + $noticeFailData = M("Spend s use index(game_time)","tab_") + ->field("SUM(pay_amount) as notice_fail_count,game_id") + ->where(['s.pay_status' => 1, 'pay_game_status' => 0]) + ->where($map) + ->select(false); + $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"); +SUM(CASE WHEN pay_way = -1 THEN pay_amount ELSE 0 END) as inside_cash_count,notice_fail_count") + ->join("LEFT JOIN ({$noticeFailData})a ON s.game_id = a.game_id"); if ($join) { $query = $query->join('LEFT JOIN tab_game as g ON s.game_id=g.id') ->join('LEFT JOIN tab_partner as p ON g.partner_id=p.id'); diff --git a/Application/Admin/View/Finance/gameStatistics.html b/Application/Admin/View/Finance/gameStatistics.html index 2e17b9bff..a7cda431f 100644 --- a/Application/Admin/View/Finance/gameStatistics.html +++ b/Application/Admin/View/Finance/gameStatistics.html @@ -175,6 +175,8 @@