2023-01-29 10:26:52 +08:00

684 lines
23 KiB
HTML

{extend name="public/base"/}
{block name="style"}
<link rel="stylesheet" type="text/css" href="__PUBLIC__/css/libs/bootstrap-editable.css">
{/block}
{block name="body"}
<div class="main-box no-header clearfix">
<div class="main-box-body clearfix">
<div class="tabs-wrapper">
<ul class="nav nav-tabs">
<li ><a href="{:url('statistics/order')}">订单统计</a></li>
<li class="active"><a href="{:url('statistics/user')}">用户统计</a></li>
<!-- {if session('user_auth.group')!=4}
<li><a href="{:url('statistics/agentlog')}">下线统计</a></li>
{/if}
{if session('user_auth.group')!=4&&session('user_auth.group')!=3}
<li><a href="{:url('statistics/novel')}">小说统计</a></li>
<li><a href="{:url('statistics/kouliang')}">通道统计</a></li>
<li><a href="{:url('bookbonus/index')}">打赏记录</a></li>
{/if}
<li><a href="{:url('subscription/index')}">订阅记录</a></li>
{if session('user_auth.group')!=4&&session('user_auth.group')!=3}
<li><a href="{:url('statistics/vipstat')}">包月统计</a></li>
{/if} -->
</ul>
<!-- 表格列表 -->
<div class="col-md-3" >
<div class="well">
<b>今日新增<span style="font-weight:normal;font-size:13px;color:#090" class="pull-right">
<span id="refresh_seconds"></span> 秒后刷新
</span></b>
<div class="text-primary" style="font-size:32px;margin:5px 0">
<span >{$todaynewUser}</span>
</div>
<div>
<div>
新用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todaynewUserNum}</span>
</b>
</div>
<div>
新增高净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayhighUserNum}</span>
</b>
</div>
<div>
新增中净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayinUserNum}</span>
</b>
</div>
<div>
新增初净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayfirstUserNum}</span>
</b>
</div>
<div>
新增低净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todaylowUserNum}</span>
</b>
</div>
<div>
新增潜在用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayhiddenUserNum}</span>
</b>
</div>
<div>
新增无效老用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayinvalidNum}</span>
</b>
</div>
<div>
新增无效新用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayinvalidNewUserNum}</span>
</b>
</div>
<div style="margin-top:10px;">
付费笔数(新用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todaynewUserNumPay}</span>
</b>
</div>
<div>
付费笔数(高净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayhighUserNumPay}</span>
</b>
</div>
<div>
付费笔数(中净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayinUserNumPay}</span>
</b>
</div>
<div>
付费笔数(初净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayfirstUserNumPay}</span>
</b>
</div>
<div>
付费笔数(低净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todaylowUserNumPay}</span>
</b>
</div>
<div>
付费笔数(潜在用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayhiddenUserNumPay}</span>
</b>
</div>
<div>
付费笔数(无效老用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayinvalidNumPay}</span>
</b>
</div>
<div>
付费笔数(无效新用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayinvalidNewUserNumPay}</span>
</b>
</div>
<div>
付费笔数(渠道首充):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayPayNum}</span>
(<span>{if $todayPayNum >0&&$todaynewUser>0}{$todayPayNum/$todaynewUser*100|round=###}{else/}0{/if}</span>%)
</b>
</div>
<div>
付费笔数(客户端):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$todayclientPayNum}</span>
</b>
</div>
</div>
</div>
</div>
<div class="col-md-3">
<div class="well">
<b>昨日新增</b>
<div class="text-primary" style="font-size:32px;margin:5px 0">
<span >{$yesterdaynewUser}</span>
</div>
<div>
<div>
<div>
新用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdaynewUserNum}</span>
</b>
</div>
<div>
新增高净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayhighUserNum}</span>
</b>
</div>
<div>
新增中净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayinUserNum}</span>
</b>
</div>
<div>
新增初净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayfirstUserNum}</span>
</b>
</div>
<div>
新增低净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdaylowUserNum}</span>
</b>
</div>
<div>
新增潜在用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayhiddenUserNum}</span>
</b>
</div>
<div>
新增无效老用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayinvalidNum}</span>
</b>
</div>
<div>
新增无效新用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayinvalidNewUserNum}</span>
</b>
</div>
<div style="margin-top:10px;">
付费笔数(新用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdaynewUserNumPay}</span>
</b>
</div>
<div>
付费笔数(高净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayhighUserNumPay}</span>
</b>
</div>
<div>
付费笔数(中净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayinUserNumPay}</span>
</b>
</div>
<div>
付费笔数(初净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayfirstUserNumPay}</span>
</b>
</div>
<div>
付费笔数(低净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdaylowUserNumPay}</span>
</b>
</div>
<div>
付费笔数(潜在用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayhiddenUserNumPay}</span>
</b>
</div>
<div>
付费笔数(无效老用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayinvalidNumPay}</span>
</b>
</div>
<div>
付费笔数(无效新用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayinvalidNewUserNumPay}</span>
</b>
</div>
<div>
付费笔数(渠道首充):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayPayNum}</span>
(<span>{if $yesterdayPayNum >0&&$yesterdaynewUser>0}{$yesterdayPayNum/$yesterdaynewUser*100|round=###}{else/}0{/if}</span>%)
</b>
</div>
<div>
付费笔数(客户端):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$yesterdayclientPayNum}</span>
</b>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-3">
<div class="well">
<b>本月新增 </b>
<div class="text-primary" style="font-size:32px;margin:5px 0">
<span >{$monthnewUser}</span>
</div>
<div>
<div>
<div>
新用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthnewUserNum}</span>
</b>
</div>
<div>
新增高净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthhighUserNum}</span>
</b>
</div>
<div>
新增中净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthinUserNum}</span>
</b>
</div>
<div>
新增初净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthfirstUserNum}</span>
</b>
</div>
<div>
新增低净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthlowUserNum}</span>
</b>
</div>
<div>
新增潜在用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthhiddenUserNum}</span>
</b>
</div>
<div>
新增无效老用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthinvalidNum}</span>
</b>
</div>
<div>
新增无效新用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthinvalidNewUserNum}</span>
</b>
</div>
<div style="margin-top:10px;">
付费笔数(新用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthnewUserNumPay}</span>
</b>
</div>
<div>
付费笔数(高净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthhighUserNumPay}</span>
</b>
</div>
<div>
付费笔数(中净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthinUserNumPay}</span>
</b>
</div>
<div>
付费笔数(初净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthfirstUserNumPay}</span>
</b>
</div>
<div>
付费笔数(低净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthlowUserNumPay}</span>
</b>
</div>
<div>
付费笔数(潜在用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthhiddenUserNumPay}</span>
</b>
</div>
<div>
付费笔数(无效老用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthinvalidNumPay}</span>
</b>
</div>
<div>
付费笔数(无效新用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthinvalidNewUserNumPay}</span>
</b>
</div>
<div>
付费笔数(渠道首充):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthPayNum}</span>
(<span>{if $monthPayNum >0&&$monthnewUser>0}{$monthPayNum/$monthnewUser*100|round=###}{else/}0{/if}</span>%)
</b>
</div>
<div>
付费笔数(客户端):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$monthclientPayNum}</span>
</b>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-3">
<div class="well">
<b>上月新增 </b>
<div class="text-primary" style="font-size:32px;margin:5px 0">
<span >{$beginnewUser}</span>
</div>
<div>
<div>
<div>
新用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$beginnewUserNum}</span>
</b>
</div>
<div>
新增高净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$beginhighUserNum}</span>
</b>
</div>
<div>
新增中净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$begininUserNum}</span>
</b>
</div>
<div>
新增初净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$beginfirstUserNum}</span>
</b>
</div>
<div>
新增低净值用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$beginlowUserNum}</span>
</b>
</div>
<div>
新增潜在用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$beginhiddenUserNum}</span>
</b>
</div>
<div>
新增无效老用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$begininvalidNum}</span>
</b>
</div>
<div>
新增无效新用户:
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$begininvalidNewUserNum}</span>
</b>
</div>
<div style="margin-top:10px;">
付费笔数(新用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$beginnewUserNumPay}</span>
</b>
</div>
<div>
付费笔数(高净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$beginhighUserNumPay}</span>
</b>
</div>
<div>
付费笔数(中净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$begininUserNumPay}</span>
</b>
</div>
<div>
付费笔数(初净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$beginfirstUserNumPay}</span>
</b>
</div>
<div>
付费笔数(低净值用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$beginlowUserNumPay}</span>
</b>
</div>
<div>
付费笔数(潜在用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$beginhiddenUserNumPay}</span>
</b>
</div>
<div>
付费笔数(无效老用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$begininvalidNumPay}</span>
</b>
</div>
<div>
付费笔数(无效新用户):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$begininvalidNewUserNumPay}</span>
</b>
</div>
<div>
付费笔数(渠道首充):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$beginPayNum}</span>
(<span>{if $beginPayNum >0&&$beginnewUser>0}{$beginPayNum/$beginnewUser*100|round=###}{else/}0{/if}</span>%)
</b>
</div>
<div>
付费笔数(客户端):
<b class="text-warning">
<span data-bind="text: stats_today.subscribed_count">{$beginclientPayNum}</span>
</b>
</div>
</div>
</div>
</div>
</div>
<div class="tab-content">
<div class="tab-pane fade in active" id="tab用户统计">
</div>
<div class="panel panel-default col-sm-12" id="order-daily-stats-panel">
<table class="table table-bordered table-striped" >
<thead>
<tr>
<th>日期</th>
<th class="text-right">新增用户</th>
<th class="text-right">付费笔数(渠道首充)</th>
<th class="text-right">付费笔数(潜在用户+无效老用户)</th>
<th class="text-right">付费笔数(客户端)</th>
</tr>
</thead>
<tbody data-bind="foreach: stats">
{volist name="info" id="vo"}
<tr>
<td>
<span >{$key}</span>
</td>
<td class="text-right">
<span >{$vo.newUser}</span>
</td>
<td class="text-right">
<span >{$vo.PayNum}</span>
</td>
<td class="text-right">
<span >{$vo.hiddenUserNumPay+$vo.invalidNumPay}</span>
</td>
<td class="text-right">
<span >{$vo.clientPayNum}</span>
</td>
</tr>
{/volist}
</tbody>
</table>
</div>
</div>
<div class="tab-pane fade " id="tab用户统计">
</div>
<div class="tab-pane fade " id="tab小说充值统计">
</div>
</div>
</div>
<!-- /表格列表 -->
</div>
</div>
{/block}
{block name="script"}
<script type="text/javascript" src="__PUBLIC__/js/bootstrap-editable.min.js"></script>
<script type="text/javascript">
$(function(){
$.fn.editable.defaults.mode = 'popup';
$.fn.editableform.buttons = '<button type="submit" class="btn btn-success editable-submit btn-mini"><i class="fa fa-check-square-o fa-white"></i></button>' +
'<button type="button" class="btn editable-cancel btn-mini"><i class="fa fa-times"></i></button>';
$('.editable').editable();
var num=60; //初始化计数器
document.getElementById("refresh_seconds").innerHTML=num; //在页面中显示10秒
var tim=setInterval(function (){
num--; //函数每调用一次num减一
document.getElementById("refresh_seconds").innerHTML=num;
//在页面中显示减一后的秒数
if(num==1){
clearInterval(tim);
window.location.reload();
}
},1000);
})
</script>
{/block}