新增导出

master
chenzhi 4 years ago
parent 365faa99a7
commit 78b85d9b37

@ -42,10 +42,22 @@ class GameMarginController extends AdminController
}
$id = $_REQUEST['id'];
$info = $this->DBModel->where("id = '{$id}'")->find();
$this->marginCount($info);
if (isset($_REQUEST['export']) && $_REQUEST['export']==1){
$is_export = true;
$this->export($info);
$this->assign("percent",'');
}else{
$is_export= false;
$this->marginCount($info);
$this->assign("percent",'%');
}
$this->assign("year", $info['count_year']);
$this->assign("month", $info['count_month']);
$this->assign("id", $id);
$this->assign("is_export",$is_export);
$this->display();
}
private function marginCount($info)
@ -111,6 +123,75 @@ class GameMarginController extends AdminController
$this->assign("data",$marginInfo);
$this->assign("count",$count);
}
private function export($info)
{
$marginInfo = json_decode($info['margin_info'],true);
$line = 3;
foreach ($marginInfo as &$v) {
$v["cp_ratio"] = "=ROUND(G{$line}/D{$line},4)";
if($v["pc_pay_amount"] > 0){
$v["pc_ratio"] ="=ROUND(M{$line}/K{$line},4)";
$v["pc_margin_amount"] = "=ROUND((K{$line}*(1-E{$line})*(1-F{$line}-H{$line}-L{$line})),2)";
$v["pc_margin_ratio"] ="=ROUND(N{$line}/K{$line},4)";
}
if ($v["pu_pay_amount"] > 0) {
$v["pu_ratio"] ="=ROUND(R{$line}/P{$line},4)";
$v["pu_margin_amount"] = "=ROUND((P{$line}-P{$line}*(1-E{$line})*(F{$line}+H{$line})-R{$line}),2)";
$v["pu_margin_ratio"] = "=ROUND(S{$line}/P{$line},4)";
}
$v['platform_margin_ratio'] = "=ROUND((D{$line}-V{$line}-G{$line}-I{$line}-J{$line}-M{$line}-R{$line})/(D{$line}-V{$line}),4)";
if($v['jh_pay_amount'] > 0){
$v["jh_ratio"] ="=ROUND(X{$line}/V{$line},4)";
$v["jh_margin_amount"] = "=ROUND((X{$line}-V{$line}*(1-E{$line})*(F{$line}+H{$line})),2)";
$v["jh_margin_ratio"] = "=ROUND(Y{$line}/V{$line},4)";
}
$v['margin_amount'] = "=ROUND((D{$line}-G{$line}-I{$line}-J{$line}-M{$line}-R{$line}+X{$line}),2)";
$v['margin_ratio'] = "=ROUND(AB{$line}/D{$line},4)";
$line ++;
}
$countLine = $line;
$line--;
$count = [
"pay_amount"=>"=SUM(D3:D{$line})",
"cp_ratio"=>"=ROUND(G{$countLine}/D{$countLine},4)",
"cp_statement_amount"=>"=SUM(G3:G{$line})",
"cp_rebate_amount"=>"=SUM(I3:I{$line})",
"cp_other_amount"=>"=SUM(J3:J{$line})",
"pc_pay_amount"=>"=SUM(K3:K{$line})",
"pc_ratio"=>"=ROUND(M{$countLine}/K{$countLine},4)",
"pc_statement_amount"=>"=SUM(M3:M{$line})",
"pc_margin_amount"=>"=SUM(N3:N{$line})",
"pc_margin_ratio"=>"=ROUND(N{$countLine}/K{$countLine},4)",
"pu_pay_amount"=>"=SUM(P3:P{$line})",
"pu_statement_amount"=>"=SUM(R3:R{$line})",
"pu_ratio"=>"=ROUND(R{$countLine}/P{$countLine},4)",
"pu_margin_amount"=>"=SUM(S3:S{$line})",
"pu_margin_ratio"=>"=ROUND(S{$countLine}/P{$countLine},4)",
"platform_margin_ratio"=>"=ROUND((D{$countLine}-V{$countLine}-G{$countLine}-I{$countLine}-J{$countLine}-M{$countLine}-R{$countLine})/(D{$countLine}-V{$countLine}),4)",
"jh_pay_amount"=>"=SUM(V3:V{$line})",
"jh_statement_amount"=>"=SUM(X3:X{$line})",
"jh_ratio"=>"=ROUND(X{$countLine}/V{$countLine},4)",
"jh_margin_amount"=>"=SUM(Y3:Y{$line})",
"jh_margin_ratio"=>"=ROUND(Y{$countLine}/V{$countLine},4)",
"margin_ratio"=>"=ROUND(AB{$countLine}/D{$countLine},4)",
"margin_amount"=>"=SUM(AB3:AB{$line})",
];
$this->assign("data",$marginInfo);
$this->assign("count",$count);
}
/**
* 编辑
*/

@ -83,6 +83,7 @@
<div class="butnlist jscheckbutn" style="margin-left: 2px">
<if condition = "$isCanRecount">
<a class="butn" id="addMargin">生成毛利表</a>
<a class='butn' id='export'>导出</a>
</if>
</div>
</div>
@ -94,6 +95,7 @@
<!-- 表头 -->
<thead>
<tr>
<th><input class="check-all" type="checkbox"></th>
<th>月份</th>
<th>流水</th>
<th>毛利额</th>
@ -112,6 +114,7 @@
<notemtpy name = "data">
<volist name="data" id="data">
<tr>
<td ><input class="ids" type="checkbox" name="ids[]"></td>
<td>{$data.count_year}-{$data.count_month}</td>
<td>{$data.pay_amount}</td>
<td>{$data.margin_amount}</td>
@ -248,6 +251,29 @@
}
});
})
$("#export").click(function () {
var text = $("input:checkbox[name='ids[]']:checked").map(function(index,elem) {
return $(elem).val();
}).get();
if(text.length > 20){
layer.msg("<font style='color:white'>" + '暂不支持超过20条的批量导出' + "</font>");
return;
}
if(text.length < 1){
layer.msg("<font style='color:white'>" + '请先选择要导出的分析单' + "</font>");
return;
}
_export();
function _export(){
for (var index = 0; index < text.length; index++) {
var id = text[index];
var url ="{:U('marginView')}"+"&id="+id+"&export=1";
var iframeExcel = "<iframe src='"+url+"' width='0px' height='0px' style='z-index:-1;position: absolute;top: -999999px;'></iframe>"//添加下载的地址到iframe这里是公司信息我用**表示了。
$("body").append(iframeExcel)
}
}
})
$("#search").click(function(){

@ -160,28 +160,28 @@
<td>{$margin["relation_game_name"]}</td>
<td>{$margin["pay_amount"]}</td>
<td>{$margin["cp_promote_ratio"]}%</td>
<td>{$margin["cp_ratio"]}%</td>
<td>{$margin["cp_ratio"]}{$percent}</td>
<td>{$margin["cp_statement_amount"]}</td>
<td>{$margin["cp_rebate_ratio"]}%</td>
<td>{$margin["cp_rebate_amount"]}</td>
<td>{$margin["cp_other_amount"]}</td>
<td>{$margin["pc_pay_amount"]}</td>
<td>{$margin["pc_ratio"]}%</td>
<td>{$margin["pc_ratio"]}{$percent}</td>
<td>{$margin["pc_statement_amount"]}</td>
<td>{$margin["pc_margin_amount"]}</td>
<td>{$margin["pc_margin_ratio"]}%</td>
<td>{$margin["pc_margin_ratio"]}{$percent}</td>
<td>{$margin["pu_pay_amount"]}</td>
<td>{$margin["pu_ratio"]}%</td>
<td>{$margin["pu_ratio"]}{$percent}</td>
<td>{$margin["pu_statement_amount"]}</td>
<td>{$margin["pu_margin_amount"]}</td>
<td>{$margin["pu_margin_ratio"]}%</td>
<td>{$margin["platform_margin_ratio"]}%</td>
<td>{$margin["pu_margin_ratio"]}{$percent}</td>
<td>{$margin["platform_margin_ratio"]}{$percent}</td>
<td>{$margin["jh_pay_amount"]}</td>
<td>{$margin["jh_ratio"]}%</td>
<td>{$margin["jh_ratio"]}{$percent}</td>
<td>{$margin["jh_statement_amount"]}</td>
<td>{$margin["jh_margin_amount"]}</td>
<td>{$margin["jh_margin_ratio"]}%</td>
<td>{$margin["margin_ratio"]}%</td>
<td>{$margin["jh_margin_ratio"]}{$percent}</td>
<td>{$margin["margin_ratio"]}{$percent}</td>
<td>{$margin["margin_amount"]}</td>
<td>
<a class="confirm margin_edit" data-info='{$margin|json_encode="512"}' data-id="{$id}" data-key="{$key}">编辑</a>
@ -194,28 +194,28 @@
<td>小计</td>
<td>{$count["pay_amount"]}</td>
<td></td>
<td>{$count["cp_ratio"]}%</td>
<td>{$count["cp_ratio"]}{$percent}</td>
<td>{$count["cp_statement_amount"]}</td>
<td></td>
<td>{$count["cp_rebate_amount"]}</td>
<td>{$count["cp_other_amount"]}</td>
<td>{$count["pc_pay_amount"]}</td>
<td>{$count["pc_ratio"]}%</td>
<td>{$count["pc_ratio"]}{$percent}</td>
<td>{$count["pc_statement_amount"]}</td>
<td>{$count["pc_margin_amount"]}</td>
<td>{$count["pc_margin_ratio"]}%</td>
<td>{$count["pc_margin_ratio"]}{$percent}</td>
<td>{$count["pu_pay_amount"]}</td>
<td>{$count["pu_ratio"]}%</td>
<td>{$count["pu_ratio"]}{$percent}</td>
<td>{$count["pu_statement_amount"]}</td>
<td>{$count["pu_margin_amount"]}</td>
<td>{$count["pu_margin_ratio"]}%</td>
<td>{$count["platform_margin_ratio"]}%</td>
<td>{$count["pu_margin_ratio"]}{$percent}</td>
<td>{$count["platform_margin_ratio"]}{$percent}</td>
<td>{$count["jh_pay_amount"]}</td>
<td>{$count["jh_ratio"]}%</td>
<td>{$count["jh_ratio"]}{$percent}</td>
<td>{$count["jh_statement_amount"]}</td>
<td>{$count["jh_margin_amount"]}</td>
<td>{$count["jh_margin_ratio"]}%</td>
<td>{$count["margin_ratio"]}%</td>
<td>{$count["jh_margin_ratio"]}{$percent}</td>
<td>{$count["margin_ratio"]}{$percent}</td>
<td>{$count["margin_amount"]}</td>
<td></td>
</tr>

Loading…
Cancel
Save