Add 更多统计参数 & 优化 数个小细节处理

This commit is contained in:
兔姬桑
2020-10-14 15:28:49 +08:00
parent c347f4b8de
commit a9919934e5
4 changed files with 58 additions and 35 deletions

View File

@@ -138,12 +138,19 @@ class AutoJob extends Command
// 封禁账号
private function blockUsers(): void
{
// 禁用流量超限用户
foreach (User::activeUser()->whereRaw("u + d >= transfer_enable")->get() as $user) {
$user->update(['enable' => 0]);
// 写入日志
$this->addUserBanLog($user->id, 0, '【封禁代理】-流量已用完');
}
// 封禁1小时内流量异常账号
$userList = User::activeUser()->whereBanTime(null);
if (sysConfig('is_traffic_ban')) {
$trafficBanValue = sysConfig('traffic_ban_value');
$trafficBanTime = sysConfig('traffic_ban_time');
foreach ($userList->get() as $user) {
foreach (User::activeUser()->whereBanTime(null)->get() as $user) {
// 对管理员豁免
if ($user->is_admin) {
continue;
@@ -162,14 +169,6 @@ class AutoJob extends Command
}
}
}
// 禁用流量超限用户
foreach ($userList->whereRaw("u + d >= transfer_enable")->get() as $user) {
$user->update(['enable' => 0]);
// 写入日志
$this->addUserBanLog($user->id, 0, '【封禁代理】-流量已用完');
}
}
// 解封被临时封禁的账号

View File

@@ -42,6 +42,7 @@ class AdminController extends Controller
$view['expireDays'] = sysConfig('expire_days');
$view['totalUserCount'] = User::count(); // 总用户数
$view['todayRegister'] = User::whereDate('created_at', date('Y-m-d'))->count();// 今日注册用户
$view['enableUserCount'] = User::whereEnable(1)->count(); // 有效用户数
$view['activeUserCount'] = User::where('t', '>=', $past)->count(); // 活跃用户数
$view['unActiveUserCount'] = User::whereEnable(1)->whereBetween('t', [1, $past,])->count(); // 不活跃用户数
@@ -49,21 +50,22 @@ class AdminController extends Controller
$view['expireWarningUserCount'] = User::whereBetween('expired_at',
[date('Y-m-d'), date('Y-m-d', strtotime("+".sysConfig('expire_days')." days"))])->count(); // 临近过期用户数
$view['largeTrafficUserCount'] = User::whereRaw('(u + d) >= 107374182400')->where('status', '<>', -1)->count(); // 流量超过100G的用户
$view['flowAbnormalUserCount'] = count((new UserHourlyDataFlow)->trafficAbnormal());// 1小时内流量异常用户
$view['nodeCount'] = Node::count();
$view['unnormalNodeCount'] = Node::whereStatus(0)->count();
$view['flowCount'] = flowAutoShow(NodeDailyDataFlow::where('created_at', '>=', date('Y-m-d', strtotime("-30 days")))->sum('total'));
$view['todayFlowCount'] = flowAutoShow(NodeDailyDataFlow::where('created_at', '>=', date('Y-m-d'))->sum('total'));
$view['totalFlowCount'] = flowAutoShow(NodeDailyDataFlow::sum('total'));
$view['totalCredit'] = User::where('credit', '<>', 0)->sum('credit') / 100;
$view['totalWaitRefAmount'] = ReferralLog::whereIn('status', [0, 1])->sum('commission') / 100;
$view['todayWaitRefAmount'] = ReferralLog::whereIn('status', [0, 1])->whereDate('created_at', date('Y-m-d'))->sum('commission') / 100;
$view['totalRefAmount'] = ReferralApply::whereStatus(2)->sum('amount') / 100;
$view['totalOrder'] = Order::count();
$view['todayOrder'] = Order::whereDate('created_at', date('Y-m-d'))->count();
$view['totalOnlinePayOrder'] = Order::where('pay_type', '<>', 0)->count();
$view['todayOnlinePayOrder'] = Order::where('pay_type', '<>', 0)->whereDate('created_at', date('Y-m-d'))->count();
$view['totalSuccessOrder'] = Order::whereStatus(2)->count();
$view['todaySuccessOrder'] = Order::whereStatus(2)->whereDate('created_at', date('Y-m-d'))->count();
// 今日
$view['todayRegister'] = User::whereDate('created_at', date('Y-m-d'))->count();
return view('admin.index', $view);
}

View File

@@ -14,6 +14,11 @@
<span class="ml-15 font-weight-400">总用户</span>
<div class="content-text text-center mb-0">
<span class="font-size-40 font-weight-100">{{$totalUserCount}}</span>
@if ($todayRegister)
<span class="badge badge-success badge-round up font-size-20 m-0" style="top:-20px">
<i class="icon wb-triangle-up" aria-hidden="true"></i> {{$todayRegister}}
</span>
@endif
</div>
</div>
</a>
@@ -157,6 +162,11 @@
<span class="ml-15 font-weight-400">30日内消耗流量</span>
<div class="content-text text-center mb-0">
<span class="font-size-40 font-weight-100">{{$flowCount}}</span>
@if($todayFlowCount !== '0B')
<span class="badge badge-success badge-round up font-size-20 m-0" style="top:-20px">
<i class="icon wb-triangle-up" aria-hidden="true"></i> {{$todayFlowCount}}
</span>
@endif
</div>
</div>
</a>
@@ -170,6 +180,11 @@
<span class="ml-15 font-weight-400">总订单数</span>
<div class="content-text text-center mb-0">
<span class="font-size-40 font-weight-100">{{$totalOrder}}</span>
@if($todayOrder)
<span class="badge badge-success badge-round up font-size-20 m-0" style="top:-20px">
<i class="icon wb-triangle-up" aria-hidden="true"></i> {{$todayOrder}}
</span>
@endif
</div>
</div>
</a>
@@ -183,6 +198,11 @@
<span class="ml-15 font-weight-400">在线支付订单数</span>
<div class="content-text text-center mb-0">
<span class="font-size-40 font-weight-100">{{$totalOnlinePayOrder}}</span>
@if($todayOnlinePayOrder)
<span class="badge badge-success badge-round up font-size-20 m-0" style="top:-20px">
<i class="icon wb-triangle-up" aria-hidden="true"></i> {{$todayOnlinePayOrder}}
</span>
@endif
</div>
</div>
</a>
@@ -196,20 +216,11 @@
<span class="ml-15 font-weight-400">支付成功订单数</span>
<div class="content-text text-center mb-0">
<span class="font-size-40 font-weight-100">{{$totalSuccessOrder}}</span>
</div>
</div>
</a>
</div>
<div class="col-xl-3 col-md-6 info-panel">
<a href="{{route('admin.order', ['status'=>2, 'range_time'=>date('Y-m-d') . ',' . date('Y-m-d 23:59:59')])}}"
class="card card-shadow">
<div class="card-block bg-white">
<button type="button" class="btn btn-floating btn-sm btn-success">
<i class="icon md-ticket-star"></i>
</button>
<span class="ml-15 font-weight-400">今天成功订单数</span>
<div class="content-text text-center mb-0">
<span class="font-size-40 font-weight-100">{{$todaySuccessOrder}}</span>
@if($todaySuccessOrder)
<span class="badge badge-success badge-round up font-size-20 m-0" style="top:-20px">
<i class="icon wb-triangle-up" aria-hidden="true"></i> {{$todaySuccessOrder}}
</span>
@endif
</div>
</div>
</a>
@@ -236,6 +247,11 @@
<span class="ml-15 font-weight-400">待提现佣金</span>
<div class="content-text text-center mb-0">
<span class="font-size-40 font-weight-100">{{$totalWaitRefAmount}}</span>
@if($todayWaitRefAmount)
<span class="badge badge-success badge-round up font-size-20 m-0" style="top:-20px">
<i class="icon wb-triangle-up" aria-hidden="true"></i> {{$todayWaitRefAmount}}
</span>
@endif
</div>
</div>
</a>

View File

@@ -141,13 +141,16 @@
</li>
</ul>
</li>
@php
$openTicket = \App\Models\Ticket::whereStatus(0)->count()
@endphp
<li class="site-menu-item has-sub {{request()->routeIs('admin.ticket.*', 'admin.article.*', 'admin.marketing.*')? 'active open' : ''}}">
<a href="javascript:void(0)">
<i class="site-menu-icon wb-chat-working" aria-hidden="true"></i>
<span class="site-menu-title">客服系统</span>
@if(\App\Models\Ticket::whereStatus(0)->count() > 0 )
@if($openTicket > 0)
<div class="site-menu-badge">
<span class="badge badge-pill badge-success">{{\App\Models\Ticket::whereStatus(0)->count()}}</span>
<span class="badge badge-pill badge-success">{{$openTicket}}</span>
</div>
@endif
</a>
@@ -155,9 +158,9 @@
<li class="site-menu-item {{request()->routeIs('admin.ticket.*') ? 'active open' : ''}}">
<a href="{{route('admin.ticket.index')}}">
<span class="site-menu-title">服务工单</span>
@if(\App\Models\Ticket::whereStatus(0)->count() > 0 )
@if($openTicket > 0)
<div class="site-menu-label">
<span class="badge badge-danger badge-round mr-25">{{\App\Models\Ticket::whereStatus(0)->count()}}</span>
<span class="badge badge-danger badge-round mr-25">{{$openTicket}}</span>
</div>
@endif
</a>
@@ -253,13 +256,16 @@
</li>
</ul>
</li>
@php
$openApply = \App\Models\ReferralApply::whereStatus(0)->count()
@endphp
<li class="site-menu-item has-sub {{request()->routeIs('admin.invite', 'admin.aff.*') ? 'active open' : ''}}">
<a href="javascript:void(0)">
<i class="site-menu-icon wb-thumb-up" aria-hidden="true"></i>
<span class="site-menu-title">推广系统</span>
@if(\App\Models\ReferralApply::whereStatus(0)->count() > 0 )
@if($openApply > 0)
<div class="site-menu-badge">
<span class="badge badge-pill badge-success">{{\App\Models\ReferralApply::whereStatus(0)->count()}}</span>
<span class="badge badge-pill badge-success">{{$openApply}}</span>
</div>
@endif
</a>
@@ -272,9 +278,9 @@
<li class="site-menu-item {{request()->routeIs('admin.aff.index', 'admin.aff.detail') ? 'active open' : ''}}">
<a href="{{route('admin.aff.index')}}">
<span class="site-menu-title">提现管理</span>
@if(\App\Models\ReferralApply::whereStatus(0)->count() > 0 )
@if($openApply > 0)
<div class="site-menu-label">
<span class="badge badge-danger badge-round mr-25">{{\App\Models\ReferralApply::whereStatus(0)->count()}}</span>
<span class="badge badge-danger badge-round mr-25">{{$openApply}}</span>
</div>
@endif
</a>