Merge branch 'feature/agg_game_fail' into release

master
ELF 4 years ago
commit cdaa9efac0

@ -8273,8 +8273,10 @@ class ExportController extends Controller
array('balance_coin_count','平台币直充支出'),
array('inside_cash_count','内充支出'),
array('all_cash_count','游戏内充值合计'),
array('notice_fail_count','联运通知失败合计'),
array('agg_amount','聚合平台数据'),
array('notice_fail_count','通知失败合计'),
array('test_amount','聚合平台测试订单'),
array('agg_failed_amount','聚合通知失败合计'),
);
$map = [];
@ -8282,6 +8284,7 @@ class ExportController extends Controller
$searchGameIds = null;
$game_ids = array_column(getGameByName(I("game_name"), I("sdk_type")), 'id');
$gameWhere = [];
$testStrWhere = '1=1';
if ($game_ids) {
$map['s.game_id'] = ['in', $game_ids];
$gameWhere['id'] = ['in', $game_ids];
@ -8296,6 +8299,7 @@ class ExportController extends Controller
if (!empty(I('timestart'))) {
$timestart = strtotime(I('timestart'));
$map['_string'] = "s.payed_time >= {$timestart}";
$testStrWhere .= " and pay_time >= {$timestart}";
}
if (!empty(I('timeend'))) {
@ -8304,6 +8308,7 @@ class ExportController extends Controller
$map['_string'] .= " and ";
}
$map['_string'] .= " s.pay_time <= {$timeend}";
$testStrWhere .= " and pay_time <= {$timeend}";
}
if (!empty(I('game_type_id'))) {
@ -8328,9 +8333,23 @@ class ExportController extends Controller
$gameSets = index_by_column('game_id', $gameSets);
$searchGameCodes = [];
$testList = [];
$testWhere = [
'game_id' => 0,
'_string' => $testStrWhere,
];
if (count($searchGameIds) > 0) {
$searchGameCodes = M('game', 'tab_')->where(['id' => ['in', $searchGameIds], 'unique_code' => ['neq', '']])->getField('unique_code', true);
$searchGameCodes = array_unique($searchGameCodes);
$testWhere['game_id'] = ['in', $searchGameIds];
$testRows = M('test_order', 'tab_')
->field(['game_id', 'sum(pay_amount) amount'])
->where($testWhere)
->group('game_id')
->select();
foreach ($testRows as $testRow) {
$testList[$testRow['game_id']] = round(floatval($testRow['amount']), 2);
}
}
$client = new AggregateClient();
@ -8341,26 +8360,39 @@ class ExportController extends Controller
'search_games' => $searchGameCodes,
'device_type' => I("sdk_type", 0),
]);
$aggData = [];
$aggFailData = [];
$aggTotal = '0.00';
$aggFailTotal = '0.00';
if ($result['code'] == '0000') {
$aggData = $result['data']['records'];
$aggFailData = $result['data']['fail_records'];
$aggTotal = $result['data']['total'];
$aggFailTotal = $result['data']['fail_total'];
}
$exceptIds = getAggExceptIds($gameSets);
foreach ($xlsData as $key => $value) {
$aggAmount = '0.00';
$aggFailAmount = '0.00';
$testAmount = '0.00';
$deviceType = $value['sdk_version'] == 1 ? 'android' : 'ios';
if ($value['unique_code'] && isset($aggData[$value['unique_code']]) && isset($aggData[$value['unique_code']][$deviceType])) {
$aggAmount = number_format($aggData[$value['unique_code']][$deviceType], 2, '.', '');
$aggFailAmount = number_format($aggFailData[$value['unique_code']][$deviceType], 2, '.', '');
}
$xlsData[$key]['agg_amount'] = $aggAmount;
$xlsData[$key]['agg_failed_amount'] = $aggFailAmount;
$xlsData[$key]['agg_failed_amount'] = '0.00';
if (isset($gameSets[$value['game_id']]) && isAggGame($gameSets[$value['game_id']]['pay_notify_url'])) {
$xlsData[$key]['cash_count'] = $value['cash_count'] = 0;
$xlsData[$key]['balance_coin_count'] =$value['balance_coin_count'] = 0;
$xlsData[$key]['inside_cash_count'] =$value['inside_cash_count'] = 0;
$testAmount = $testList[$value['game_id']] ?? '0.00';
}
$xlsData[$key]['test_amount'] = $testAmount;
// $xlsData[$key]['game_name'] = substr($value["game_name"],0,strrpos($value["game_name"],'('));
$xlsData[$key]['all_cash_count'] = $value['cash_count'] + $value['balance_coin_count'] + $value['inside_cash_count'];
if ($value['sdk_version'] == 1) {
@ -8377,6 +8409,10 @@ class ExportController extends Controller
$map['_string'] = " s.game_id not in (" . implode(',', $exceptIds) . ")";
}
}
$testWhere['_string'] .= ' and game_id in(' . implode(',', $exceptIds) . ')';
$testAllAmount = M('test_order', 'tab_')->where($testWhere)->sum('pay_amount');
$totalData = D("spend")->totalGameStatistics($map);
$sumCash = $totalData['cash_count'];
@ -8390,8 +8426,11 @@ class ExportController extends Controller
'balance_coin_count'=>$sumBalance,
'inside_cash_count'=>$sumInside,
'all_cash_count'=>$sumAll,
'notice_fail_count'=>$sumNoticeFail,
'agg_amount' => $aggTotal,
'notice_fail_count'=>$sumNoticeFail]];
'testAllAmount' => $testAllAmount,
'aggFailTotal' => $aggFailTotal,
]];
$xlsData = array_merge($xlsData,$sumData);
$this->exportAddOperationLog("Finance/gameStatistics","充值-财务管理-游戏统计-导出");
$this->exportExcel($xlsName, $xlsCell, $xlsData);

@ -710,6 +710,7 @@ class FinanceController extends ThinkController
$searchGameIds = null;
$game_ids = array_column(getGameByName(I("game_name"), I("sdk_type")), 'id');
$gameWhere = [];
$testStrWhere = '1=1';
if ($game_ids) {
$map['s.game_id'] = ['in', $game_ids];
$gameWhere['id'] = ['in', $game_ids];
@ -723,6 +724,7 @@ class FinanceController extends ThinkController
if (!empty(I('timestart'))) {
$timestart = strtotime(I('timestart'));
$map['_string'] = "s.payed_time >= {$timestart}";
$testStrWhere .= " and pay_time >= {$timestart}";
}
if (!empty(I('timeend'))) {
@ -731,6 +733,7 @@ class FinanceController extends ThinkController
$map['_string'] .= " and ";
}
$map['_string'] .= " s.payed_time <= {$timeend}";
$testStrWhere .= " and pay_time <= {$timeend}";
}
if (!empty(I('game_type_id'))) {
@ -755,9 +758,24 @@ class FinanceController extends ThinkController
$gameSets = index_by_column('game_id', $gameSets);
$searchGameCodes = [];
$testList = [];
$testWhere = [
'game_id' => 0,
'_string' => $testStrWhere,
];
if (count($searchGameIds) > 0) {
$searchGameCodes = M('game', 'tab_')->where(['id' => ['in', $searchGameIds], 'unique_code' => ['neq', '']])->getField('unique_code', true);
$searchGameCodes = array_unique($searchGameCodes);
$testWhere['game_id'] = ['in', $searchGameIds];
$testRows = M('test_order', 'tab_')
->field(['game_id', 'sum(pay_amount) amount'])
->where($testWhere)
->group('game_id')
->select();
foreach ($testRows as $testRow) {
$testList[$testRow['game_id']] = round(floatval($testRow['amount']), 2);
}
}
$client = new AggregateClient();
@ -769,28 +787,38 @@ class FinanceController extends ThinkController
'device_type' => I("sdk_type", 0),
]);
$aggData = [];
$aggFailData = [];
$aggTotal = '0.00';
$aggFailTotal = '0.00';
if ($result['code'] == '0000') {
$aggData = $result['data']['records'];
$aggFailData = $result['data']['fail_records'];
$aggTotal = $result['data']['total'];
$aggFailTotal = $result['data']['fail_total'];
}
$endTime = time();
$exceptIds = getAggExceptIds($gameSets);
foreach ($data as $key => $value) {
$aggAmount = '0.00';
$aggFailAmount = '0.00';
$testAmount = '0.00';
$deviceType = $value['sdk_version'] == 1 ? 'android' : 'ios';
if ($value['unique_code'] && isset($aggData[$value['unique_code']]) && isset($aggData[$value['unique_code']][$deviceType])) {
$aggAmount = number_format($aggData[$value['unique_code']][$deviceType], 2, '.', '');
$aggFailAmount = number_format($aggFailData[$value['unique_code']][$deviceType], 2, '.', '');
}
// if ($aggAmount != '0.00') {
if (isset($gameSets[$value['game_id']]) && isAggGame($gameSets[$value['game_id']]['pay_notify_url'])) {
$data[$key]['cash_count'] = $value['cash_count'] = 0;
$data[$key]['balance_coin_count'] = $value['balance_coin_count'] = 0;
$data[$key]['inside_cash_count'] = $value['inside_cash_count'] = 0;
$testAmount = $testList[$value['game_id']] ?? '0.00';
}
$data[$key]['all_cash_count'] = number_format($value['cash_count'] + $value['balance_coin_count'] + $value['inside_cash_count'],2,'.','');
$data[$key]['agg_amount'] = $value['unique_code'] ? $aggAmount : '0.00';
$data[$key]['agg_failed_amount'] = $value['unique_code'] ? $aggFailAmount : '0.00';
$data[$key]['test_amount'] = $testAmount;
}
$count = D("spend")->gameStatisticsCount($map);//列表总数
@ -803,6 +831,9 @@ class FinanceController extends ThinkController
$this->checkListOrCountAuthRestMap($map,[]);
$testWhere['_string'] .= ' and game_id in(' . implode(',', $exceptIds) . ')';
$testAllAmount = M('test_order', 'tab_')->where($testWhere)->sum('pay_amount');
//统计合计
if (count($exceptIds) > 0) {
if (isset($map['_string'])) {
@ -824,6 +855,8 @@ class FinanceController extends ThinkController
$aggRate = round($aggTotal/($sumAll + $aggTotal) * 100, 2) . '%';
$allRate = round($sumAll/($sumAll + $aggTotal) * 100, 2) . '%';
$this->assign('testAllAmount', $testAllAmount);
$this->assign('aggFailTotal', $aggFailTotal);
$this->assign('aggRate', $aggRate);
$this->assign('allRate', $allRate);
$this->assign('aggTotal', $aggTotal);
@ -838,6 +871,72 @@ class FinanceController extends ThinkController
$this->display();
}
public function aggDetail($p = 1)
{
$limit = I('row', 10);
$gameId = I('game_id', 0);
$deviceType = 0;
$orderNumber = I('order_number', '');
$roleName = I('role_name', '');
$account = I('account', '');
$gameId = I('game_id', 0);
$game = M('game', 'tab_')->field(['id', 'unique_code', 'game_name'])->where(['game_id' => $gameId])->find();
$client = new AggregateClient();
$result = $client->api('game-recharge-detail', [
'unique_code' => $game['unique_code'],
'started_at' => I('timestart', ''),
'ended_at' => I('timeend', ''),
'account' => $account,
'order_number' => $orderNumber,
'role_name' => $roleName,
'device_type' => I("sdk_type", 0),
'page' => $p,
'limit' => $limit,
]);
$count = 0;
$total = '0.00';
$records = [];
if ($result['code'] != '0000') {
$count = $result['data']['count'];
$total = $result['data']['total'];
$records = $result['data']['records'];
}
foreach ($records as $key => $record) {
$records[$key]['game_name'] = $game['game_name'];
}
if(isset($_REQUEST['export'])){
//操作日志
$GetData = $_GET;
unset($GetData['export']);
$dcop = array(
"order_number"=>"支付订单号",
"pay_success_time"=>"充值时间",
"account"=>"玩家账号",
"game_name"=>"游戏名称",
"rom_platform"=>"设备类型",
"role_name"=>"角色名称",
"money"=>"充值金额",
);
addOperationLog(['op_type'=>3,'key'=>getNowDate(),'url'=>U(CONTROLLER_NAME.'/'.ACTION_NAME,$GetData),'menu'=>"充值-财务管理-游戏统计-订单查看-导出"]);
data2csv($records, "聚合游戏统计订单查看", $dcop);
}
$page = set_pagination($count, $limit);
if ($page) {
$this->assign('_page', $page);
}
$this->assign('pagination', $page);
$this->assign('total', $total);
$this->assign('records', $records);
$this->display();
}
public function gameStatisticsDetail($p = 1) {

@ -0,0 +1,287 @@
<extend name="Public/base"/>
<block name="body">
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
<script type="text/javascript" src="__JS__/select2.min.js"></script>
<style>
.select2-container--default .select2-selection--single {
color: #000;
resize: none;
border-width: 1px;
border-style: solid;
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
height:28px;border-radius:3px;font-size:12px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
line-height:35px;
line-height:28px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
height:26px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
height:26px;line-height:26px;font-size:12px;
}
.select2-results__option[aria-selected] {font-size:12px;}
</style>
<div class="cf main-place top_nav_list navtab_list">
<h3 class="page_title">{$_REQUEST['game_name']}游戏订单查看</h3>
<p class="description_text"></p>
</div>
<div class="cf top_nav_list">
<!-- 高级搜索 -->
<div class="jssearch fl cf search_list">
<!--游戏类型搜索END-->
<div class="input-list">
<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']}"/>
<input type="hidden" name="game_name" value="{$_GET['game_name']}"/>
<div class="input-list">
<input type="text" name="order_number" placeholder="请输入支付订单号" class="" value="{:I('order_number')}" style="width: 180px"/>&nbsp;
</div>
<div class="input-list">
<input type="text" name="account" placeholder="请输入玩家账号" class="" value="{:I('account')}" style="width: 180px"/>&nbsp;
</div>
<div class="input-list">
<input type="text" name="role_name" placeholder="请输入角色名称" class="" value="{:I('role_name')}" style="width: 180px"/>&nbsp;
</div>
<div class="input-list">
<input type="text" readonly id="time-start" name="timestart" class="" value="{$startDate}"
placeholder="开始时间"/>
-
<div class="input-append date" id="datetimepicker" style="display:inline-block">
<input type="text" readonly id="time-end" name="timeend" class="" value="{$endDate}"
placeholder="结束时间"/>
<span class="add-on"><i class="icon-th"></i></span>
</div>
</div>
<div class="input-list">
<a class="sch-btn" href="javascript:;" id="search" url="{:U('Finance/gameStatisticsDetail','model='.$model['name'].'&row='.I('row'),false)}"
style="">搜索</a>
<if condition="$role_export_check eq true ">
<if condition="$_GET['all'] neq 1">
<a class="sch-btn" href="{:U(CONTROLLER_NAME.'/'.ACTION_NAME,array_merge(['export'=>1],I('get.')))}">导出</a>
</if>
</if>
</div>
</div>
</div>
<!-- 数据列表 -->
<div class="data_list">
<div class="">
<table>
<!-- 表头 -->
<thead>
<tr>
<th>支付订单号</th>
<th>充值时间</th>
<th>玩家账号</th>
<th>游戏名称</th>
<th>设备类型</th>
<th>所属平台</th>
<!-- <th>游戏区服</th> -->
<th>角色名称</th>
<th>充值金额</th>
</tr>
</thead>
<!-- 列表 -->
<tbody>
<style>
.data-table thead th, .data-table tbody td{text-align:center}
.data-table tbody td{border-right:1px solid #DDDDDD;}
.d_list .drop-down ul {z-index:999;}
</style>
<if condition = "empty($records)">
<tr>
<td colspan="8" class="text-center">aOh! 暂时还没有内容!</td>
</tr>
</if>
<notemtpy name = "records">
<volist name="records" id="record">
<tr>
<td >{$data.order_number}</td>
<td >{$data.pay_success_time}</td>
<td >{$data.account}</td>
<td >{$data.game_name}</td>
<td >{$data.rom_platform}</td>
<td >聚合</td>
<!-- <td >{$data.server_name}</td> -->
<td >{$data.role_name}</td>
<td >{$data.money}</td>
</tr>
</volist>
<tr>
<td ><span>总计</span></td>
<td colspan="11" ><span><if condition="$sumAll neq ''">累计充值:{$total}<else/>0</if>
</span></td>
</tr>
</notemtpy>
</tbody>
</table>
</div>
</div>
<div class="page">
{$_page|default=''}
</div>
</block>
<block name="script">
<script src="__STATIC__/layer/layer.js" type="text/javascript"></script>
<script type="text/javascript" src="__STATIC__/layer/extend/layer.ext.js" ></script>
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
<php>if(C('COLOR_STYLE')=='blue_color') echo '<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">';</php>
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js" charset="UTF-8"></script>
<script>
<volist name=":I('get.')" id="vo">
Think.setValue('{$key}',"{$vo}");
</volist>
</script>
<script type="text/javascript">
//导航高亮
highlight_subnav('{:U('Finance/gameStatistics')}');
$(function(){
$(".select_gallery").select2();
$('.page a').click(function () {
var href = $(this).attr('href');
$(this).removeAttr('href');
window.location.replace(href)
console.log(href)
});
$('#time-start').datetimepicker({
format: 'yyyy-mm-dd',
language: "zh-CN",
showMeridian:true,
pickDate:true,
minView: 2,
autoclose: true,
pickTime:true,
todayBtn:true,
}).on('change',function(ev){
var val = new Date($.trim($(this).val())).getTime();
var end = new Date($.trim($('#time-end').val())).getTime();
if (val>end) {
layer.msg('开始时间大于结束时间!');$(this).val('');
}
return false;
});
$("#time-end").datetimepicker({
format:"yyyy-mm-dd",
language: "zh-CN",
showMeridian:true,
minView:2,
autoclose:true,
todayBtn:true,
}).on('change',function(ev){
var val = new Date($.trim($(this).val())).getTime();
var start = new Date($.trim($('#time-start').val())).getTime();
if (val<start) {
layer.msg('开始时间大于结束时间!');$(this).val('');
}
return false;
});
//搜索功能
$("#search").click(function(){
var starttime = $.trim($('#time-start').val());
var endtime = $.trim($('#time-end').val());
if (starttime && endtime && starttime > endtime) {layer.msg('开始时间必须小于等于结束时间');return false;}
var url = $(this).attr('url');
var query = $('.jssearch').find('input').serialize();
query += "&" + $('.jssearch').find('select').serialize();
query = query.replace(/(&|^)(\w*?\d*?\-*?_*?)*?=?((?=&)|(?=$))/g,'');
query = query.replace(/^&/g,'');
if( url.indexOf('?')>0 ){
url += '&' + query;
}else{
url += '?' + query;
}
window.location.replace(url);
});
//回车自动提交
$('.jssearch').find('input').keyup(function(event){
if(event.keyCode===13){
$("#search").click();
}
});
$(".ljcz").click(function(){
var id = $(this).attr('data-value');
var game_name = "{:I('game_name')}";
var server_name = "{:I('server_id')}";
layer.open({
type: 2,
title: '游戏消费记录',
shadeClose: true,
shade: 0.8,
area: ['70%', '80%'],
content: 'admin.php?s=/Platform/chongzhi_detail/promote_id/'+id+'/game_name/'+game_name+'/server_name/'+server_name+''//iframe的url
});
});
$("#game_id").change(function(){
$.ajax({
url:"{:U('Ajax/getSpendServer')}",
type:"post",
data:{game_id:$("#game_id option:selected").attr('game-id')},
dataType:'json',
success:function(data){
str = "<option value=''>请选择区服</option>";
for (var i in data){
str += "<option value='"+data[i].server_name+"'>"+data[i].server_name+"</option>"
}
$("#server_id").empty();
$("#server_id").append(str);
$("#server_id").select2();
}
})
});
var game_id = "{:I('game_name')}";
var game_server = "{:I('server_id')}";
if(game_id){
$.ajax({
url:"{:U('Ajax/getSpendServer')}",
type:"post",
data:{game_id:game_id,type:2},
dataType:'json',
success:function(data){
str = "<option value=''>请选择区服</option>";
for (var i in data){
str += "<option value='"+data[i].server_name+"' "+(game_server && data[i].server_name == game_server?'selected':'')+">"+data[i].server_name+"</option>"
}
$("#server_id").empty();
$("#server_id").append(str);
$("#server_id").select2();
}
})
}
})
</script>
</block>

@ -175,8 +175,10 @@
<th ><div class="tooltip">内充支出<span class="tooltiptext"><span style="margin-left: -10px">玩家用绑币购买游戏道具所产生的金额</span></span></div></th>
<th ><div class="tooltip">游戏内充值合计<span class="tooltiptext"><span style="margin-left: -10px">游戏现金金额+平台币直充支出+平台币内充支出</span></span></div></th>
<th ><div class="tooltip"><span style="color: red">联运通知失败合计</span><span class="tooltiptext"><span style="margin-left: -10px">联运所有通知失败的合计金额</span></span></div></th>
<th ><div class="tooltip">聚合平台数据<span class="tooltiptext"><span style="margin-left: -10px">包含聚合万盟平台数据,因为聚合平台数据是用接口获取并且涉及其他平台数据,所以只能添加总数据,无法判定平台币还是现金充值</span></span></div></th>
<th ><div class="tooltip"><span style="color: red">通知失败合计</span><span class="tooltiptext"><span style="margin-left: -10px">所有通知失败的合计金额</span></span></div></th>
<th ><div class="tooltip">聚合平台测试订单<span class="tooltiptext"><span style="margin-left: -10px">聚合平台测试订单</span></span></div></th>
<th ><div class="tooltip"><span style="color: red">聚合通知失败合计</span><span class="tooltiptext"><span style="margin-left: -10px">聚合所有通知失败的合计金额</span></span></div></th>
<th >操作</th>
</tr>
@ -222,8 +224,17 @@
'pay_way'=>-1,
false))}"><if condition="$data.inside_cash_count neq ''">{$data.inside_cash_count}<else/>0</if></td>
<td ><if condition="$data.all_cash_count neq ''">{$data.all_cash_count}<else/>0</if></td>
<td >{$data.agg_amount}</td>
<td ><span style="color:red;"><if condition="$data.notice_fail_count neq ''">{$data.notice_fail_count}<else/>0</if></span></td>
<td ><a href="{:U('Finance/aggDetail', [
'timestart'=>$_GET['timestart'],
'timeend'=>$_GET['timeend'],
'sdk_type'=>$_GET['sdk_type'],
'game_id'=>$data['game_id'],
'game_name'=>$data['game_name'],
'partner_id'=>$_REQUEST['partner_id']
])}">{$data.agg_amount}</a></td>
<td ><span style="color:red;"><if condition="$data.test_amount neq ''">{$data.test_amount}<else/>0</if></span></td>
<td ><span style="color:red;"><if condition="$data.agg_failed_amount neq ''">{$data.agg_failed_amount}<else/>0</if></span></td>
<td >
<a href="{:U('Finance/gameStatisticsDetail',array(
'timestart'=>$_GET['timestart'],
@ -242,8 +253,10 @@
<td><if condition="$sumBalance neq ''">{$sumBalance}<else/>0</if></td>
<td><if condition="$sumInside neq ''">{$sumInside}<else/>0</if></td>
<td><if condition="$sumAll neq ''">{$sumAll}<else/>0</if></td>
<td>{$aggTotal}</td>
<td><span style="color: red"><if condition="$sumNoticeFail neq ''">{$sumNoticeFail}<else/>0</if></span></td>
<td>{$aggTotal}</td>
<td><span style="color: red"><if condition="$testAllAmount neq ''">{$testAllAmount}<else/>0</if></span></td>
<td><span style="color: red"><if condition="$sumNoticeFail neq ''">{$aggFailTotal}<else/>0</if></span></td>
<td>
<a href="{:U('Finance/gameStatisticsDetail',
array(

@ -13,6 +13,7 @@ class AggregateClient
private $apis = [
'game-data' => '/index.php?g=api&m=Game&a=rechargeData',
'game-recharge-detail' => '/index.php?g=api&m=Game&a=rechargeDetail',
];
public function __construct()
@ -47,6 +48,7 @@ class AggregateClient
'form_params' => $params,
]);
$result = (string)$response->getBody();
// var_dump($result);
return json_decode($result, true);
}
}
Loading…
Cancel
Save