Browse Source

1.账号到期自动关停
2.账号到期警告(15天)

zhangjiangbin 8 years ago
parent
commit
350af76c3c

+ 12 - 0
app/Http/Controllers/AdminController.php

@@ -31,6 +31,11 @@ class AdminController extends BaseController
         $flowCount = UserTrafficLog::sum('u') + UserTrafficLog::sum('d');
         $flowCount = $this->flowAutoShow($flowCount);
         $view['flowCount'] = $flowCount;
+        $view['totalBalance'] = User::sum('balance');
+        $view['expireWarningUserCount'] = User::where('expire_time', '<=', date('Y-m-d', strtotime("+15 days")))->count();
+
+        // 到期账号禁用
+        User::where('enable', 1)->where('expire_time', '<=', date('Y-m-d'))->update(['enable' => 0]);
 
         return Response::view('admin/index', $view);
     }
@@ -48,6 +53,7 @@ class AdminController extends BaseController
         $port = $request->get('port');
         $pay_way = $request->get('pay_way');
         $enable = $request->get('enable');
+        $expireWarning = $request->get('expireWarning');
 
         $query = User::query();
         if (!empty($username)) {
@@ -74,10 +80,16 @@ class AdminController extends BaseController
             $query->where('enable', intval($enable));
         }
 
+        // 临近过期提醒
+        if ($expireWarning) {
+            $query->where('expire_time', '<=', date('Y-m-d', strtotime("+15 days")));
+        }
+
         $userList = $query->orderBy('id', 'desc')->paginate(10);
         foreach ($userList as &$user) {
             $user->transfer_enable = $this->flowAutoShow($user->transfer_enable);
             $user->used_flow = $this->flowAutoShow($user->u + $user->d);
+            $user->expireWarning = $user->expire_time <= date('Y-m-d', strtotime("+ 30 days")) ? 1 : 0;
         }
 
         $view['userList'] = $userList;

+ 3 - 4
app/Http/Controllers/BaseController.php

@@ -121,11 +121,10 @@ class BaseController extends Controller
         assert($n > 0);
         $pos = $n + 1;
         $lines = array();
-        while (count($lines) <= $n)
-        {
-            try  {
+        while (count($lines) <= $n) {
+            try {
                 fseek($fp, -$pos, SEEK_END);
-            }  catch (Exception $e)  {
+            } catch (Exception $e) {
                 fseek(0);
                 break;
             }

+ 1 - 1
resources/views/admin/analysis.blade.php

@@ -26,7 +26,7 @@
                 <div class="portlet light bordered">
                     <div class="portlet-title">
                         <div class="caption font-dark">
-                            <i class="icon-info font-dark"></i>
+                            <i class="icon-bar-chart font-dark"></i>
                             <span class="caption-subject bold uppercase"> 日志分析 </span>
                         </div>
                     </div>

+ 31 - 1
resources/views/admin/index.blade.php

@@ -36,7 +36,7 @@
                             <h3 class="font-green-sharp">
                                 <span data-counter="counterup" data-value="{{$activeUserCount}}">0</span>
                             </h3>
-                            <small>活跃账号(7天内)</small>
+                            <small>活跃账号</small>
                         </div>
                         <div class="icon">
                             <i class="icon-user"></i>
@@ -59,6 +59,21 @@
                     </div>
                 </div>
             </div>
+            <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12">
+                <div class="dashboard-stat2 bordered" onclick="skip('admin/userList?expireWarning=1');">
+                    <div class="display">
+                        <div class="number">
+                            <h3 class="font-red">
+                                <span data-counter="counterup" data-value="{{$expireWarningUserCount}}">0</span>
+                            </h3>
+                            <small>临近到期</small>
+                        </div>
+                        <div class="icon">
+                            <i class="icon-user-unfollow"></i>
+                        </div>
+                    </div>
+                </div>
+            </div>
         </div>
         <div class="row">
             <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12">
@@ -89,6 +104,21 @@
                     </div>
                 </div>
             </div>
+            <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12">
+                <div class="dashboard-stat2 bordered">
+                    <div class="display">
+                        <div class="number">
+                            <h3 class="font-red">
+                                ¥<span data-counter="counterup" data-value="{{$totalBalance}}"></span>
+                            </h3>
+                            <small>盈利</small>
+                        </div>
+                        <div class="icon">
+                            <i class="icon-diamond"></i>
+                        </div>
+                    </div>
+                </div>
+            </div>
         </div>
         <!-- END PAGE BASE CONTENT -->
     </div>

+ 2 - 2
resources/views/admin/layouts.blade.php

@@ -147,7 +147,7 @@
                         </li>
                         <li class="nav-item {{Request::getRequestUri() == '/admin/analysis' ? 'active open' : ''}}">
                             <a href="{{url('admin/analysis')}}" class="nav-link ">
-                                <i class="icon-plus"></i>
+                                <i class="icon-bar-chart"></i>
                                 <span class="title">日志分析</span>
                             </a>
                         </li>
@@ -168,7 +168,7 @@
                         </li>
                         <li class="nav-item {{Request::getRequestUri() == '/admin/system' ? 'active open' : ''}}">
                             <a href="{{url('admin/system')}}" class="nav-link ">
-                                <i class="icon-settings"></i>
+                                <i class="icon-grid"></i>
                                 <span class="title">系统配置</span>
                             </a>
                         </li>

+ 1 - 1
resources/views/admin/system.blade.php

@@ -26,7 +26,7 @@
                 <div class="portlet light bordered">
                     <div class="portlet-title">
                         <div class="caption font-dark">
-                            <i class="icon-info font-dark"></i>
+                            <i class="icon-grid font-dark"></i>
                             <span class="caption-subject bold uppercase"> 系统配置 </span>
                         </div>
                     </div>

+ 9 - 3
resources/views/admin/userList.blade.php

@@ -78,7 +78,7 @@
                                     <th> 用户名(昵称) </th>
                                     <th> 端口 </th>
                                     <th> 加密方式 </th>
-                                    <th> 可用流量/已消耗 </th>
+                                    <th> 已消耗 </th>
                                     <th> 最后使用 </th>
                                     <th> 有效期 </th>
                                     <th> 状态 </th>
@@ -97,9 +97,15 @@
                                             <td> {{$user->username}} </td>
                                             <td> <span class="label label-danger"> {{$user->port}} </span> </td>
                                             <td> <span class="label label-default"> {{$user->method}} </span> </td>
-                                            <td class="center"> {{$user->transfer_enable}}/{{$user->used_flow}} </td>
+                                            <td class="center"> {{$user->used_flow}} </td>
                                             <td class="center"> {{empty($user->t) ? '未使用' : date('Y-m-d H:i:s', $user->t)}} </td>
-                                            <td class="center"> {{$user->expire_time}} </td>
+                                            <td class="center">
+                                                @if ($user->expireWarning)
+                                                    <span class="label label-warning"> {{$user->expire_time}} </span>
+                                                @else
+                                                    {{$user->expire_time}}
+                                                @endif
+                                            </td>
                                             <td>
                                                 @if ($user->enable)
                                                     <span class="label label-info">启用</span>