Browse Source

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

兔姬桑 4 years ago
parent
commit
a9919934e5

+ 9 - 10
app/Console/Commands/AutoJob.php

@@ -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, '【封禁代理】-流量已用完');
-        }
     }
 
     // 解封被临时封禁的账号

+ 5 - 3
app/Http/Controllers/AdminController.php

@@ -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);
     }

+ 30 - 14
resources/views/admin/index.blade.php

@@ -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>

+ 14 - 8
resources/views/admin/layouts.blade.php

@@ -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>