游戏订单查看

master
liuweiwen 5 years ago
parent ead339046f
commit 39e3350dd9

@ -129,7 +129,11 @@ class FinanceController extends ThinkController
$page = intval($p);
$page = $page ? $page : 1; //默认显示第一页数据
$row=10;
if(isset($_REQUEST['row'])) {$row = $_REQUEST['row'];}else{$row = 10;}
if(isset($_REQUEST['row'])) {
$row = $_REQUEST['row'];
}else{
$row = 10;
}
$map = [];
if(!empty(I('count_date'))){
@ -720,11 +724,19 @@ class FinanceController extends ThinkController
}
//游戏统计列表
$data = D("spend")->gameStatistics($map);
$data = D("spend")->gameStatistics($map, $row, $p);
foreach ($data as $key => $value) {
$data[$key]['all_cash_count'] = $value['cash_count'] + $value['balance_coin_count'] + $value['inside_cash_count'];
}
$allData = D("spend")->gameStatistics($map);//列表总数
$count = count($allData);
$page = set_pagination($count, $row);
if ($page) {
$this->assign('_page', $page);//分页
}
//统计合计
$totalData = D("spend")->totalGameStatistics($map);
$sumCash = $totalData['cash_count'];
@ -757,6 +769,14 @@ class FinanceController extends ThinkController
$map['promote_id'] = $_REQUEST['root_id'];
}
if (isset($_REQUEST['pay_way'])) {
$map['pay_way'] = $_REQUEST['pay_way'];
}
if (!empty($_REQUEST['pay_order_number'])) {
$map['pay_order_number'] = $_REQUEST['pay_order_number'];
}
if (!empty(I("parent_id"))) {
$parent_id = I("parent_id");
$promote_id = $this->getPromoteList($parent_id);
@ -809,20 +829,49 @@ class FinanceController extends ThinkController
$data[$key]['pay_way'] = getPayType($value['pay_way']);
}
$sum = D('spend')->sumSpend($map,'pay_amount');
$totalData = D('spend')->totalGameStatistics($map, false);
$sumCash = $totalData['cash_count'];
$sumBalance = $totalData['balance_coin_count'];
$sumInside = $totalData['inside_cash_count'];
$sumAll = $sumCash + $sumBalance + $sumInside;
$this->assign('sumCash', $sumCash);
$this->assign('sumBalance', $sumBalance);
$this->assign('sumInside', $sumInside);
$this->assign('sumAll', $sumAll);
$count = D("spend")->getSpendData($map,$field,$group,$order);
$count = count($count);
$page = set_pagination($count,$row);
if($page) {$this->assign('_page', $page);}
$this->meta_title = '游戏充值流水';
$this->meta_title = '游戏订单查看';
$this->assign('data',$data);
$this->assign('sum_amount',$sum);
$this->display();
}
/**
*获取合作公司
*/
public function getPartnetList()
{
$game_ids = array_column(getGameByName(I("game_name"), I("sdk_type")), 'id');
if ($game_ids) {
$map['g.id'] = ['in', $game_ids];
}
if (I('sdk_type')) {
$map['sdk_version'] = I('sdk_type');
}
$data = M('partner','tab_')->alias('p')
->join('left join tab_game as g on g.partner_id = p.id')
->field("partner, p.id")
->where($map)
->group('p.id')
->select();
$this->ajaxReturn($data,'json');
}
}

@ -831,34 +831,43 @@ class SpendModel extends Model
/**
*获取游戏统计列表数据
* @param $map array 查询条件
* @param $row int 每页条数
* @param $page int 第几页
*/
public function gameStatistics($map)
public function gameStatistics($map, $row = 0, $page = 1)
{
$data = $this->alias("s")
->field("s.game_id,s.game_name,p.partner as partner_name,SUM(CASE WHEN pay_way > 0 THEN pay_amount ELSE 0 END) as cash_count,
$query = $this->alias("s")
->field("s.game_id,s.game_name,p.partner as partner_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,
SUM(CASE WHEN pay_way = -1 THEN pay_amount ELSE 0 END) as inside_cash_count")
->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')
->where(['s.pay_status' => 1])
->where($map)
->group('s.game_id')
->select();
->group('s.game_id');
if ($row) {
$query = $query->page($page,$row);
}
$data = $query->select();
return $data;
}
/**
*获取游戏统计列表数据
*/
public function totalGameStatistics($map)
public function totalGameStatistics($map, $join = true)
{
$data = $this->alias("s")
$query = $this->alias("s")
->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")
->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')
->where(['s.pay_status' => 1])
SUM(CASE WHEN pay_way = -1 THEN pay_amount ELSE 0 END) as inside_cash_count");
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');
}
$data = $query->where(['s.pay_status' => 1])
->where($map)
->find();
return $data;

@ -183,11 +183,10 @@
<td ><if condition="$data.all_cash_count neq ''">{$data.all_cash_count}<else/>0</if></td>
<td >
<a href="{:U('Finance/gameStatisticsDetail',array(
'timestart'=>$_GET['timestart'],
'timeend'=>$_GET['timeend'],
'timestart'=>$_GET['timestart'],
'timeend'=>$_GET['timeend'],
'sdk_type'=>$_GET['sdk_type'],
'game_name'=>$_GET['game_name'],
'game_id'=>$_REQUEST['game_id'],
'game_id'=>$data['game_id'],
'partner_id'=>$_REQUEST['partner_id'],
false))}" >查看</a>
</td>
@ -296,7 +295,7 @@
$.ajax({
url:"{:U('Finance/getGameList')}",
type:"post",
data:{partner_id:$("#partner_id option:selected").attr('partner-id'), sdk_type:$("#sdk_version1 option:selected").val()},
data:{partner_id:$("#partner_id option:selected").val(), sdk_type:$("#sdk_version1 option:selected").val()},
dataType:'json',
success:function(data){
var str = "<option value=''>请选择游戏</option>";
@ -350,6 +349,33 @@
});
$("#partner_id").change();
function get_partnet_list()
{
var partner_id = "{:I('partner_id')}";
$.ajax({
url:"{:U('Finance/getPartnetList')}",
type:"post",
data:{game_name:$("#game_name option:selected").val(), sdk_type:$("#sdk_version1 option:selected").val()},
dataType:'json',
success:function(data){
var str = "<option value=''>请选择合作公司</option>";
for (var i in data){
str += "<option value='"+data[i].id+"'"+(partner_id && data[i].id == partner_id?'selected':'')+">"+data[i].partner+"</option>"
}
// console.log(str);
$("#partner_id").empty();
$("#partner_id").append(str);
// $("#server_id").select2();
}
})
}
$("#game_name, #sdk_type").change(function(){
get_partnet_list();
});
$("#game_name").change();
})
</script>
</block>

@ -30,7 +30,7 @@
<div class="cf main-place top_nav_list navtab_list">
<h3 class="page_title">{$_REQUEST['game_name']}充值流水</h3>
<h3 class="page_title">{$_REQUEST['game_name']}游戏订单查看</h3>
<p class="description_text"></p>
</div>
@ -42,26 +42,67 @@
<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>
<if condition="$_GET['all'] neq 1">
<a class="sch-btn" href="{:U('Export/gameFinanceDetail',
array('count_date'=>$_GET['count_date'],'game_id'=>$_GET['game_id'],'game_name'=>$_GET['game_name'],'user_account'=>$_GET['user_account'],'user_nickname'=>$_GET['user_nickname'],'parent_id'=>$_GET['parent_id'],'root_id'=>$_GET['root_id'],false))}" style="width: 100px;border: #3C95C8 solid 1px;">导出</a>
</if>
</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="pay_order_number" placeholder="请输入支付订单号" class="" value="{:I('pay_order_number')}" style="width: 180px"/>&nbsp;
</div>
<div class="input-list">
<input type="text" name="user_account" placeholder="请输入玩家账号搜索" class="" value="{:I('user_account')}" style="width: 180px"/>&nbsp;
<input type="text" name="user_account" placeholder="请输入玩家账号" class="" value="{:I('user_account')}" style="width: 180px"/>&nbsp;
</div>
<!-- <div class="input-list">-->
<!-- <input type="text" name="user_nickname" placeholder="请输入角色名称" class="" value="{:I('user_nickname')}" 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>
<input type="text" name="user_nickname" placeholder="请输入角色名称搜索" class="" value="{:I('user_nickname')}" style="width: 180px"/>&nbsp;
<div class="input-list input-list-server search_label_rehab">
<select id="pay_way" name="pay_way" class="select_gallery" style="width:120px;">
<option value="">请选择支付渠道</option>
<option value="1">支付宝</option>
<option value="2">微信(扫码)</option>
<option value="3">微信app</option>
<option value="4">威富通</option>
<option value="5">聚宝云</option>
<option value="6">竣付通</option>
<option value="7">金猪</option>
<option value="9">双乾支付-支付宝</option>
<option value="10">双乾支付-银联</option>
<option value="15">双乾支付-快捷</option>
<option value="0">平台币</option>
<option value="-1">绑币</option>
</select>
</div>
<div class="input-list">
<a class="sch-btn" href="javascript:;" id="search" url="{:U('Finance/gameFinanceDetail','model='.$model['name'].'&row='.I('row'),false)}"
<a class="sch-btn" href="javascript:;" id="search" url="{:U('Finance/gameStatisticsDetail','model='.$model['name'].'&row='.I('row'),false)}"
style="">搜索</a>
<if condition="$_GET['all'] neq 1">
<a class="sch-btn" href="{:U('Export/gameFinanceDetail',
array(
'game_id'=>$_GET['game_id'],
'game_name'=>$_GET['game_name'],
'pay_way'=>$_GET['pay_way'],
'timestart'=>$_GET['timestart'],
'timeend'=>$_GET['timeend'],
'user_account'=>$_GET['user_account'],
'pay_order_number'=>$_GET['pay_order_number'],
false))}">导出</a>
</if>
</div>
</div>
</div>
@ -127,7 +168,9 @@
</volist>
<tr>
<td ><span>总计</span></td>
<td colspan="11" ><span><if condition="$sum_amount neq ''">{$sum_amount}<else/>0</if></span></td>
<td colspan="11" ><span><if condition="$sumAll neq ''">累计充值:{$sumAll}<else/>0</if>
(现金金额:{$sumCash} 平台币:{$sumBalance} 绑币:{$sumInside}
</span></td>
</tr>
</notemtpy>
@ -156,7 +199,7 @@
</script>
<script type="text/javascript">
//导航高亮
highlight_subnav('{:U('Finance/index')}');
highlight_subnav('{:U('Finance/gameStatistics')}');
$(function(){
$('.page a').click(function () {
@ -166,6 +209,40 @@
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());

Loading…
Cancel
Save