From c366fcfe4e0bf6432d62af3d741c888631844025 Mon Sep 17 00:00:00 2001 From: zhengyongxing Date: Wed, 23 Sep 2020 17:05:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B1=87=E6=80=BB=E7=BC=96=E8=BE=91=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CompanyStatementPoolController.class.php | 100 +++++++++--- .../View/CompanyStatementPool/editPuPool.html | 149 ++++++++++++++---- 2 files changed, 199 insertions(+), 50 deletions(-) diff --git a/Application/Admin/Controller/CompanyStatementPoolController.class.php b/Application/Admin/Controller/CompanyStatementPoolController.class.php index 916f3d9c4..3666deff8 100644 --- a/Application/Admin/Controller/CompanyStatementPoolController.class.php +++ b/Application/Admin/Controller/CompanyStatementPoolController.class.php @@ -168,6 +168,7 @@ class CompanyStatementPoolController extends ThinkController $v['oplist'] = $this->OpAuth($v); } +// dump($data);die(); $count = $this->DBModel->field("count(id) count,SUM(statement_money) as statement_money,SUM(lack_statement_money) lack_statement_money")->where($map)->find(); // dd($count); $params['p'] = $page; @@ -279,16 +280,34 @@ class CompanyStatementPoolController extends ThinkController foreach($va['game_list'] as $key=>&$val){ $line ++; if($v['withdraw_type'] != 3) { - if(isset($val['ratio'])){ +// if(!$val['ratio']&&!$val['increment_ratio']) { +// if(isset($val['ratio'])){ +// $val['increment_ratio'] = 0; +// }else{ +// $val['ratio'] = 0; +// } +// } + if (!$val['increment_ratio']) { $val['increment_ratio'] = 0; - }else{ + } + + if (!$val['ratio']) { $val['ratio'] = 0; } + + if (!$val['refund']) { + $val['refund'] = 0; + } +// if(isset($val['ratio'])){ +// $val['increment_ratio'] = 0; +// }else{ +// $val['ratio'] = 0; +// } } if($is_export){ if($v['withdraw_type'] != 3) { - $val['sum_money'] = "=ROUND(K{$line}*(L{$line}+M{$line}),2)"; + $val['sum_money'] = "=ROUND((K{$line}-L{$line})*(M{$line}+N{$line}),2)"; } else { $val['sum_money'] = "=ROUND(K{$line}*(M{$line}),2)"; } @@ -349,20 +368,30 @@ class CompanyStatementPoolController extends ThinkController foreach($va['game_list'] as $key=>&$val){ $line ++; if($v['withdraw_type'] != 3) { - if(isset($val['ratio'])){ +// if(!$val['ratio']&&!$val['increment_ratio']) { +// if(isset($val['ratio'])){ +// $val['increment_ratio'] = 0; +// }else{ +// $val['ratio'] = 0; +// } +// } + if (!$val['increment_ratio']) { $val['increment_ratio'] = 0; - }else{ + } + + if (!$val['ratio']) { $val['ratio'] = 0; } + } if($is_export){ if($v['withdraw_type'] != 3) { - $val['sum_money'] = "=ROUND(K{$line}*(L{$line}+M{$line}),2)"; + $val['sum_money'] = "=ROUND((K{$line}-L{$line})*(M{$line}+N{$line}),2)"; } else { - $val['sum_money'] = "=ROUND(K{$line}*(M{$line}),2)"; + $val['sum_money'] = "=ROUND(K{$line}*(N{$line}),2)"; } - $v['statement_money'] .= "N{$line}+"; + $v['statement_money'] .= "O{$line}+"; }else{ $count['platform_amount'] += $val['pay_amount']; $count['sum_money'] += $val['sum_money']; @@ -372,7 +401,7 @@ class CompanyStatementPoolController extends ThinkController $v['row'] = $row; if($is_export){ if($v['withdraw_type'] != 3) { - $v['statement_money'] .="O{$cline}-P{$cline},2)"; + $v['statement_money'] .="P{$cline}-Q{$cline},2)"; } else { $v['statement_money'] = substr($v['statement_money'],0,strlen($v['statement_money'])-1).",2)"; } @@ -381,7 +410,7 @@ class CompanyStatementPoolController extends ThinkController if($is_export){ $count["platform_amount"] = "=ROUND(SUM(K2:K".$line."),2)"; - $count["sum_money"] = "=ROUND(SUM(Q2:Q".$line."),2)"; + $count["sum_money"] = "=ROUND(SUM(R2:R".$line."),2)"; } $this->assign("data",$infolist); $this->assign("count",$count); @@ -1095,7 +1124,7 @@ class CompanyStatementPoolController extends ThinkController case '-2': case '-1': case '0': - $optist = ["viewPool","reCount","cancelPool","editPool"]; + $optist = ["viewPool","reCount","cancelPool"]; break; case '1': $optist = ["viewPool","addRemark","viewRemark","editRemark","viewVoucher","editVoucher","uploadVoucher","setPayment","setUlPayment"]; @@ -1139,6 +1168,10 @@ class CompanyStatementPoolController extends ThinkController $optist = ['viewPool','cancelPool']; } + if($info['company_type'] == 2 && $info['verify_status'] == '0'&&$info['withdraw_type'] != "特殊补点") { + array_push($optist,"editPool"); + } + if(empty($info['ext_file'])){ //未上传凭证 $optist = array_diff($optist, ["viewVoucher", "editVoucher"]); @@ -1197,38 +1230,67 @@ class CompanyStatementPoolController extends ThinkController $data = $_POST; + if (!$data) { + $this->ajaxReturn(['status'=>0,'info'=>'数据错误']); + } + $ratio = $data['ratio']; $refund = $data['refund']; $increment_ratio = $data['increment_ratio']; $sum_money = $data['sum_money']; + $st = $data['st']; + $id = $data['id']; + $remark = $data['remark']; + + $amount = 0; + $statement_amount = 0; + $statement_lack_amount = 0; foreach ($ratio as $key => $value) { - $statement_data = M("company_statement_info","tab_")->where(['id'=>$key])->find(); + if ($st[$key] == 1) { + $model = M("company_statement_info","tab_"); + } else { + $model = M("company_lack_statement_info","tab_"); + } + $statement_data = $model->where(['id'=>$key])->find(); $statement_info = json_decode($statement_data['statement_info'],true); - dump($statement_info); + foreach ($statement_info as $k => $v) { $game_list = $v['game_list']; foreach ($game_list as $gk => $gv) { - $statement_info[$k]['game_list'][$gk]['ratio'] = $ratio[$key][$v['account']][$k]; - $statement_info[$k]['game_list'][$gk]['refund'] = $refund[$key][$v['account']][$k]; - $statement_info[$k]['game_list'][$gk]['increment_ratio'] = $increment_ratio[$key][$v['account']][$k]; - $statement_info[$k]['game_list'][$gk]['sum_money'] = $sum_money[$key][$v['account']][$k]; + $statement_info[$k]['game_list'][$gk]['ratio'] = $ratio[$key][$v['account']][$gk]; + $statement_info[$k]['game_list'][$gk]['refund'] = $refund[$key][$v['account']][$gk]; + $statement_info[$k]['game_list'][$gk]['increment_ratio'] = $increment_ratio[$key][$v['account']][$gk]; + $statement_info[$k]['game_list'][$gk]['sum_money'] = $sum_money[$key][$v['account']][$gk]; + + $amount += $sum_money[$key][$v['account']][$gk]; + if ($st[$key] == 1) { + $statement_amount += $sum_money[$key][$v['account']][$gk]; + } else { + $statement_lack_amount += $sum_money[$key][$v['account']][$gk]; + } +// dump($v['account']); +// dump($sum_money[$key][$v['account']][$gk]); } } -// dump($statement_info); $statement_info = json_encode($statement_info); - M("company_statement_info","tab_")->where(['id'=>$key])->save(['statement_info'=>$statement_info]); + $model->where(['id'=>$key])->save(['statement_info'=>$statement_info,'statement_money'=>$amount,'pay_amount'=>$amount,'remark'=>$remark[$key]]); + $amount = 0; } + M("company_statement_pool","tab_")->where(['id'=>$id])->save(['pay_amount'=>$statement_amount,'statement_money'=>$statement_amount,'lack_statement_money'=>$statement_lack_amount]); + + $this->ajaxReturn(['status'=>1,'info'=>'保存成功']); + } } diff --git a/Application/Admin/View/CompanyStatementPool/editPuPool.html b/Application/Admin/View/CompanyStatementPool/editPuPool.html index 593a2aef1..8db6a8d58 100644 --- a/Application/Admin/View/CompanyStatementPool/editPuPool.html +++ b/Application/Admin/View/CompanyStatementPool/editPuPool.html @@ -13,6 +13,7 @@ + @@ -95,7 +96,7 @@
-
+ @@ -144,7 +145,7 @@ - + @@ -160,14 +161,15 @@ - - - + + + + + - + @@ -196,7 +198,7 @@ - + - - - + + + @@ -232,7 +234,7 @@ - + @@ -241,9 +243,9 @@ - - - + + + @@ -267,9 +269,9 @@ - - - + + + @@ -284,14 +286,14 @@ - + - + @@ -304,13 +306,16 @@
{$com['statement_info'][0]['account']}{$com['statement_info'][0]['account']} - {$com['statement_info'][0]['game_list'][0]['game_type_name']} {$com['statement_info'][0]['game_list'][0]['statement_begin_time']}-{$com['statement_info'][0]['game_list'][0]['statement_end_time']} {$com['statement_info'][0]['game_list'][0]['pay_amount']}%%%% {$com['statement_info'][0]['game_list'][0]['sum_money']} - {$com['reward']} {$com['fine']}{$com['statement_money']}{$com['statement_money']} - {$com.remark} @@ -216,9 +218,9 @@ {$game['game_type_name']} {$game['statement_begin_time']}-{$game['statement_end_time']} {$game['pay_amount']}%%%% {$game['sum_money']}
{$account['account']}{$account['account']} {$account['game_list'][0]['game_name']}{$account['game_list'][0]['pay_amount']} %%%% {$account['game_list'][0]['sum_money']} {$game['pay_amount']} %%%% {$game['sum_money']}
合计:{$count.platform_amount}{$count.platform_amount} {$count.sum_money}{$count.sum_money}
-
- - -
+
+
+ + +
+ +
@@ -344,25 +349,64 @@ } }); }); + var return_data = ""; + $("#submit").click(function(){ + var options = { + url:"{:U('editCompanyStatementPool')}", //同action + type:'post', + beforeSend:function(xhr){ + }, + success:function(data) + { + return_data = data; + }, + + complete:function(data){ + + if(return_data.status==1){ + layer.msg("" + return_data.info + ""); + setTimeout(function(){ + parent.location.reload(); + },1500); + }else{ + layer.msg("" + return_data.info + ""); + return false; + } + + }, + error: function(xhr,status,msg){ + //alert("状态码"+status+"; "+msg) + layer.msg('玩命加载中..'); + + } + }; + $("#form").ajaxSubmit(options); + }); $(".refund").on("blur",function () { caculate_sum_money(this); + changeStatementAmount(this); + changeSumAmount(); }); $(".ratio").on("blur",function () { caculate_sum_money(this); + changeStatementAmount(this); + changeSumAmount(); }); $(".increment_ratio").on("blur",function () { caculate_sum_money(this); + changeStatementAmount(this); + changeSumAmount(); }); - + // 分成结算金额重算 function caculate_sum_money(_this) { var pay_money = $(_this).parent().parent().find(".pay_amount").text(); var ratio = $(_this).parent().parent().find(".ratio").val(); - + //比例金额 if (!ratio || ratio < 0) { ratio = 0; $(_this).parent().parent().find(".ratio").val(ratio); @@ -370,13 +414,13 @@ ratio = 100; $(_this).parent().parent().find(".ratio").val(ratio); } - + //退款 var refund = $(_this).parent().parent().find(".refund").val(); if (!refund || refund < 0) { refund = 0; $(_this).parent().parent().find(".refund").val(refund); } - + //补点 var increment_ratio = $(_this).parent().parent().find(".increment_ratio").val(); if (!increment_ratio || increment_ratio < 0) { increment_ratio = 0; @@ -386,13 +430,56 @@ $(_this).parent().parent().find(".increment_ratio").val(increment_ratio); } + //扣款 pay_money = parseFloat(pay_money) - parseFloat(refund); - var value = parseFloat(pay_money)*(parseFloat(ratio)/100) + parseFloat(pay_money)*(parseFloat(increment_ratio)/100); $(_this).parent().parent().find(".sum_money_span").text(value.toFixed(2)); $(_this).parent().parent().find(".sum_money").val(value.toFixed(2)); + } + //结算金额重算 + function changeStatementAmount(_this) { + + var _parent = $(_this).parent().parent(); + var statement_amount = ''; + + for (;;) { + statement_amount = _parent.find(".statement_money").text(); + if (!statement_amount ) { + _parent = _parent.prev(); + } else { + break; + } + } + + var row = _parent.find(".statement_money").attr("rowspan"); + var get_item = _parent; + var sum_amount = 0; + for (var i =0;i