Merge branch 'hotfix/payStatistic' of wmtx/platform into master

补点功能修正
master
廖金灵 4 years ago committed by Gogs
commit 9a2630093a

@ -611,6 +611,96 @@ class AggregateFinanceStatementController extends ThinkController
$objPHPExcel->getActiveSheet()->setCellValue('B'.($line+8), $first_data);//户名
// $objPHPExcel->getActiveSheet()->setCellValue('E'.($line+8), $data['pay_company']['payee_name']);//户名
// $objPHPExcel->getActiveSheet()->setCellValue('E'.($line+9), $data['pay_company']['bank_account']);//银行账号
// $objPHPExcel->getActiveSheet()->setCellValue('E'.($line+10), $data['pay_company']['opening_bank']);//开户行
if($data['withdraw_type'] == 1){
$m = date('Y.m', $data['begintime']);
$fileName = "{$data['second_party_info']['partner']}&{$data['first_party_info']['partner']}-对账单{$m}";
}else{
$fileName = "{$data['second_party_info']['partner']}&{$data['first_party_info']['partner']}-对账单{$statement_begin_time}-{$statement_end_time}";
}
ob_end_clean();//清除缓冲区,避免乱码
header('pragma:public');
header('Content-type:application/vnd.ms-excel;charset=utf-8;name="' . $fileName .'".xls');
header("Content-Disposition:attachment;filename={$fileName}.xls");//attachment新窗口打印inline本窗口打印
$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
}
public function excelDownStreamPersonTemplate($data,$big_all_sum_money) {
header("Content-type: text/html; charset=utf-8");
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />');
date_default_timezone_set('Asia/Shanghai');
Vendor("PHPExcel.PHPExcel");
$objPHPExcel = new \PHPExcel();
$objReader = \PHPExcel_IOFactory::createReader('Excel5');
//设置模板文件
$objPHPExcel = $objReader->load("Public/Admin/excel/aggregate_stream.xls");
$statement_begin_time = date('Y.m.d', $data['begintime']);//对账开始时间
$statement_end_time = date('Y.m.d',$data['endtime']);//对账截止时间
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setWrapText(true);
$objPHPExcel->getActiveSheet()->setCellValue('A1', "《 {$data['channel_name']} 》结算单\n{$statement_begin_time}-{$statement_end_time}");
if ($data['withdraw_type'] == '2') {
$objPHPExcel->getActiveSheet()->setCellValue('D2','补点比例');
}
$line = 3;
foreach ($data['statement_info'] as $key => $value) {
$objPHPExcel->getActiveSheet()->insertNewRowBefore($line,1);
$objPHPExcel->getActiveSheet()->removeConditionalStyles();
$objPHPExcel->getActiveSheet()->setCellValue('A'.$line, $value['begintime'] . '-' . $value['endtime']);
$product_name = $value['game_name'];
$objPHPExcel->getActiveSheet()->setCellValue('D'.$line, $value['ratio'] . '%');
$objPHPExcel->getActiveSheet()->setCellValue('E'.$line, $value['fax_ratio'] . '%');
$objPHPExcel->getActiveSheet()->setCellValue('C'.$line, $value['money']);
$objPHPExcel->getActiveSheet()->setCellValue('B'.$line, $product_name);
$objPHPExcel->getActiveSheet()->setCellValue('F'.$line, $value['ratio_money']);
$objPHPExcel->getActiveSheet()->getStyle('A'.$line)->getFont()->setBold(false);
$objPHPExcel->getActiveSheet()->getStyle('B'.$line)->getFont()->setBold(false);
$objPHPExcel->getActiveSheet()->getStyle('C'.$line)->getFont()->setBold(false);
$objPHPExcel->getActiveSheet()->getStyle('D'.$line)->getFont()->setBold(false);
$objPHPExcel->getActiveSheet()->getStyle('E'.$line)->getFont()->setBold(false);
$objPHPExcel->getActiveSheet()->getStyle('F'.$line)->getFont()->setBold(false);
$line++;
}
$objPHPExcel->getActiveSheet()->setCellValue('C'.($line), $data['pay_money']);//合计-平台总额
$objPHPExcel->getActiveSheet()->setCellValue('F'.($line), $data['ratio_money']);//合计-结算金额
$objPHPExcel->getActiveSheet()->setCellValue('B'.($line+1), $big_all_sum_money);//大写支付结算金额
//甲方信息
$objPHPExcel->getActiveSheet()->setCellValue('B'.($line+3), $data['first_party_info']['partner']);//甲方
$objPHPExcel->getActiveSheet()->setCellValue('B'.($line+4), $data['first_party_info']['link_man']);//联系人
$objPHPExcel->getActiveSheet()->setCellValue('B'.($line+5), $data['first_party_info']['link_phone']);//联系电话
$objPHPExcel->getActiveSheet()->setCellValue('B'.($line+6), $data['first_party_info']['address']);//邮寄地址
// $objPHPExcel->getActiveSheet()->setCellValue('B'.($line+7), $data['second_party_info']['invoice_type']);//发票类型
//乙方信息
$objPHPExcel->getActiveSheet()->setCellValue('E'.($line+3), $data['second_party_info']['partner']);//乙方
$objPHPExcel->getActiveSheet()->setCellValue('E'.($line+4), $data['second_party_info']['link_man']);//联系人
$objPHPExcel->getActiveSheet()->setCellValue('E'.($line+5), $data['second_party_info']['link_phone']);//联系电话
$objPHPExcel->getActiveSheet()->setCellValue('E'.($line+6), $data['second_party_info']['address']);//邮寄地址
//开票信息
// $invoice_data = "发票类型:".$data['second_party_info']['invoice_type'];
// $invoice_data .= "\n发票抬头".$data['second_party_info']['partner'];
// $invoice_data .= "\n纳税人识别号".$data['second_party_info']['company_tax_no'];
//
// $invoice_data .= "\n开户银行".$data['second_party_info']['opening_bank'];
// $invoice_data .= "\n开户账号".$data['second_party_info']['payee_name'];
// $invoice_data .= "\n开票内容".$data['second_party_info']['invoice_item'];
// $invoice_data .= "\n注册地址及电话".$data['second_party_info']['register_address'].",".$data['second_party_info']['register_phone'];
//
// $objPHPExcel->getActiveSheet()->setCellValue('B'.($line+7), $invoice_data);//乙方
$first_data = "户名:{$data['pay_company']['payee_name']}";
$first_data .= "\n账号{$data['pay_company']['bank_account']}";
$first_data .= "\n开户行{$data['pay_company']['opening_bank']}";
$objPHPExcel->getActiveSheet()->setCellValue('B'.($line+7), $first_data);//户名
// $objPHPExcel->getActiveSheet()->setCellValue('E'.($line+8), $data['pay_company']['payee_name']);//户名
// $objPHPExcel->getActiveSheet()->setCellValue('E'.($line+9), $data['pay_company']['bank_account']);//银行账号
// $objPHPExcel->getActiveSheet()->setCellValue('E'.($line+10), $data['pay_company']['opening_bank']);//开户行
if($data['withdraw_type'] == 1){
$m = date('Y.m', $data['begintime']);

@ -1181,7 +1181,7 @@ class CompanyStatementController extends ThinkController
$radioMap['_string'] = "start_time < {$end_time}";
}
$map['tab_spend.pay_status'] = 1;
$map['pay_way'] = ['egt',1];
$map['pay_way'] = ['egt',0];
$data = M("spend","tab_")
->field("pay_amount,relation_game_id,relation_game_name,payed_time")

@ -1388,6 +1388,29 @@ class FinanceController extends ThinkController
$cashStatistics[$value['pay_way']]['balance'] += $value['pay_amount'];//别表的平台币充值
}
$testOrderData = M('test_order', 'tab_')
->where([
'pay_way'=>['egt',1],
'pay_time'=>$time
])
->field('pay_way,sum(pay_amount) as pay_amount')
->group("pay_way")
->select();
foreach ($testOrderData as $key => $value) {
if ($value['pay_way'] == NULL&&$value['pay_amount'] == NULL) {
continue;
}
if (!array_key_exists($value['pay_way'], $cashStatistics)) {
$cashStatistics[$value['pay_way']] = $value;
$cashStatistics[$value['pay_way']]['pay_type'] = getPayType($value['pay_way']);//充值方式文字影视
$cashStatistics[$value['pay_way']]['pay_amount'] = '0.00';
$cashStatistics[$value['pay_way']]['balance'] = 0;//别表的平台币充值
}
$cashStatistics[$value['pay_way']]['balance'] += $value['pay_amount'];//别表的平台币充值
}
foreach ($cashStatistics as $key => $value) {
$cashStatistics[$key]['pay_rate'] = '';
$cashStatistics[$key]['total'] = $value['pay_amount'] + $value['balance'];//添加列表合计

@ -431,14 +431,16 @@
//时间数组定义用于判断当前选择的游戏是否有结算过的区间
var begin_time = [];
var end_time = [];
var get_time = $(cval).parent();
var row =$(cval).attr('rowspan');
for (var i=0; i<row; i++) {
for(var item_sec in data[item]['relation_game_name']) {
if (get_time.find('.relation_game_name').text() == data[item]['relation_game_name'][item_sec] && data[item]['begin_time'][item_sec] == get_time.find('.begin_time').text()&& data[item]['end_time'][item_sec] == get_time.find('.end_time').text()) {
if (get_time.find('.relation_game_name').text() == data[item]['relation_game_name'][item_sec]
&& ((data[item]['begin_time'][item_sec] >= get_time.find('.begin_time').text()&&data[item]['begin_time'][item_sec] <= get_time.find('.end_time').text())
|| (data[item]['end_time'][item_sec] >= get_time.find('.begin_time').text()&&data[item]['end_time'][item_sec] <= get_time.find('.end_time').text())
||(data[item]['begin_time'][item_sec]<=get_time.find('.begin_time').text()&&data[item]['end_time'][item_sec]>=get_time.find('.end_time').text()))) {
begin_time.push(get_time.find('.begin_time').text());
end_time.push(get_time.find('.end_time').text());
@ -448,6 +450,7 @@
get_time = get_time.next();
}
for (var time in begin_time) {
if ((begin_time[time]>=time_start && begin_time[time]<=time_end) || (end_time[time]>=time_start && end_time[time]<=time_end)||(begin_time[time]<=time_start && end_time[time] >= time_end)) {

@ -71,12 +71,12 @@
<div class="cf main-place top_nav_list navtab_list">
<h3 class="page_title">{$_REQUEST['count_date']}平台统计</h3>
<h3 class="page_title">{$_REQUEST['count_date']}充值方式统计</h3>
<p class="description_text"></p>
<div class="fr">
<a class="" href="{:U('PayChannel/index')}">游戏充值统计</a>
<a class="tabchose" href="">充值方式统计</a>
<a href="{:U('PayMerchant/index')}">支付方式统计</a>
<a href="{:U('PayMerchant/index')}">支付商户统计</a>
</div>
</div>

@ -70,12 +70,12 @@
<div class="cf main-place top_nav_list navtab_list">
<h3 class="page_title">支付渠道统计</h3>
<h3 class="page_title">游戏充值统计</h3>
<p class="description_text">说明平台币直充金额2019.12.18以前sdk新包数据及sdk旧包数据无法对应相关游戏无法计入以上平台币列表中<span style="color:red">充值方式统计</span>一栏统计<span style="color:red">平台币直充总金额</span></p>
<div class="fr">
<a class="tabchose" href="">游戏充值统计</a>
<a class="" href="{:U('Finance/payTypeStatistics')}">充值方式统计</a>
<a class="" href="{:U('PayMerchant/index')}">支付方式统计</a>
<a class="" href="{:U('PayMerchant/index')}">支付商户统计</a>
</div>
</div>
@ -252,7 +252,7 @@
平台币直充总金额<span style="color: red">(2019.12.18号以前的无法对应游戏记录不显示在列表中,此项也不计入充值方式统计)</span><if condition="$coinSum neq ''">{$coinSum}<else/>0.00</if>
</td>
</tr>
<tr>
<tr style="display: none">
<td><span>支付渠道</span></td>
<td colspan="6">
<volist name="channelData" id="channelData">
@ -260,7 +260,7 @@
</volist>
</td>
</tr>
<tr>
<tr style="display: none">
<td><span>支付渠道占比</span></td>
<td colspan="6">
<volist name="channelData2" id="channel">

@ -70,12 +70,12 @@
<div class="cf main-place top_nav_list navtab_list">
<h3 class="page_title">支付方式统计</h3>
<h3 class="page_title">支付商户统计</h3>
<!-- <p class="description_text">说明平台币直充金额2019.12.18以前sdk新包数据及sdk旧包数据无法对应相关游戏无法计入以上平台币列表中<span style="color:red">充值方式统计</span>一栏统计<span style="color:red">平台币直充总金额</span></p>-->
<div class="fr">
<a href="{:U('PayChannel/index')}">游戏充值统计</a>
<a class="" href="{:U('Finance/payTypeStatistics')}">充值方式统计</a>
<a class="tabchose">支付方式统计</a>
<a class="tabchose">支付商户统计</a>
</div>
</div>

Loading…
Cancel
Save