admin 7 yıl önce
ebeveyn
işleme
dc0e2fde5a

+ 10 - 11
app/Http/Controllers/AdminController.php

@@ -539,8 +539,7 @@ class AdminController extends Controller
         $nodeList = $query->orderBy('status', 'desc')->orderBy('id', 'asc')->paginate(15)->appends($request->except('page'));
         foreach ($nodeList as &$node) {
             // 在线人数
-            $last_log_time = time() - 600; // 10分钟内
-            $online_log = SsNodeOnlineLog::query()->where('node_id', $node->id)->where('log_time', '>=', $last_log_time)->orderBy('id', 'desc')->first();
+            $online_log = SsNodeOnlineLog::query()->where('node_id', $node->id)->where('log_time', '>=', strtotime("-5 minutes"))->orderBy('id', 'desc')->first();
             $node->online_users = empty($online_log) ? 0 : $online_log->online_user;
 
             // 已产生流量
@@ -2226,7 +2225,7 @@ EOF;
             $query->where('status', $status);
         }
 
-        $view['orderList'] = $query->paginate(15);
+        $view['orderList'] = $query->paginate(15)->appends($request->except('page'));
 
         return Response::view('admin.orderList', $view);
     }
@@ -2313,7 +2312,7 @@ EOF;
             });
         }
 
-        $view['list'] = $query->paginate(15);
+        $view['list'] = $query->paginate(15)->appends($request->except('page'));
 
         return Response::view('admin.userBalanceLogList', $view);
     }
@@ -2331,7 +2330,7 @@ EOF;
             });
         }
 
-        $view['list'] = $query->paginate(15);
+        $view['list'] = $query->paginate(15)->appends($request->except('page'));
 
         return Response::view('admin.userBanLogList', $view);
     }
@@ -2349,7 +2348,7 @@ EOF;
             });
         }
 
-        $view['list'] = $query->paginate(15);
+        $view['list'] = $query->paginate(15)->appends($request->except('page'));
 
         return Response::view('admin.userTrafficLogList', $view);
     }
@@ -2379,7 +2378,7 @@ EOF;
             $query->where('status', intval($status));
         }
 
-        $view['list'] = $query->paginate(15);
+        $view['list'] = $query->paginate(15)->appends($request->except('page'));
 
         return Response::view('admin.userRebateList', $view);
     }
@@ -2420,11 +2419,11 @@ EOF;
             $query->where('enable', intval($enable));
         }
 
-        $userList = $query->paginate(15);
+        $userList = $query->paginate(15)->appends($request->except('page'));
         if (!$userList->isEmpty()) {
             foreach ($userList as &$user) {
                 // 最近10条在线IP记录,如果后端设置为60秒上报一次,则为10分钟内的在线IP
-                $user->onlineIPList = SsNodeIp::query()->with(['node', 'user'])->where('port', $user->port)->where('type', 'tcp')->orderBy('id', 'desc')->limit(10)->get();
+                $user->onlineIPList = SsNodeIp::query()->with(['node', 'user'])->where('type', 'tcp')->where('port', $user->port)->where('created_at', '>=', strtotime("-10 minutes"))->orderBy('id', 'desc')->limit(10)->get();
             }
         }
 
@@ -2453,7 +2452,7 @@ EOF;
     // 标签列表
     public function labelList(Request $request)
     {
-        $labelList = Label::query()->paginate(15);
+        $labelList = Label::query()->paginate(15)->appends($request->except('page'));
         foreach ($labelList as $label) {
             $label->userCount = UserLabel::query()->where('label_id', $label->id)->groupBy('label_id')->count();
             $label->nodeCount = SsNodeLabel::query()->where('label_id', $label->id)->groupBy('label_id')->count();
@@ -2525,7 +2524,7 @@ EOF;
     // 邮件发送日志列表
     public function emailLog(Request $request)
     {
-        $view['list'] = EmailLog::query()->orderBy('id', 'desc')->paginate(15);
+        $view['list'] = EmailLog::query()->orderBy('id', 'desc')->paginate(15)->appends($request->except('page'));
 
         return Response::view('admin.emailLog', $view);
     }

+ 17 - 16
composer.lock

@@ -1522,16 +1522,16 @@
         },
         {
             "name": "jenssegers/agent",
-            "version": "v2.6.2",
+            "version": "v2.6.3",
             "source": {
                 "type": "git",
                 "url": "https://github.com/jenssegers/agent.git",
-                "reference": "41cd1fd6200a9b0d70db75133ee23064c9965980"
+                "reference": "bcb895395e460478e101f41cdab139c48dc721ce"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/jenssegers/agent/zipball/41cd1fd6200a9b0d70db75133ee23064c9965980",
-                "reference": "41cd1fd6200a9b0d70db75133ee23064c9965980",
+                "url": "https://api.github.com/repos/jenssegers/agent/zipball/bcb895395e460478e101f41cdab139c48dc721ce",
+                "reference": "bcb895395e460478e101f41cdab139c48dc721ce",
                 "shasum": "",
                 "mirrors": [
                     {
@@ -1593,7 +1593,7 @@
                 "user agent",
                 "useragent"
             ],
-            "time": "2019-01-06T12:37:04+00:00"
+            "time": "2019-01-19T21:32:55+00:00"
         },
         {
             "name": "justinrainbow/json-schema",
@@ -2150,16 +2150,16 @@
         },
         {
             "name": "mews/captcha",
-            "version": "2.2.4",
+            "version": "2.2.5",
             "source": {
                 "type": "git",
                 "url": "https://github.com/mewebstudio/captcha.git",
-                "reference": "df9cc9a2f80b2aa17c68daa8f3b35f43fe28e8aa"
+                "reference": "44ed8d66aa6f27443ff51bbf48a5b28cb958d75f"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/mewebstudio/captcha/zipball/df9cc9a2f80b2aa17c68daa8f3b35f43fe28e8aa",
-                "reference": "df9cc9a2f80b2aa17c68daa8f3b35f43fe28e8aa",
+                "url": "https://api.github.com/repos/mewebstudio/captcha/zipball/44ed8d66aa6f27443ff51bbf48a5b28cb958d75f",
+                "reference": "44ed8d66aa6f27443ff51bbf48a5b28cb958d75f",
                 "shasum": "",
                 "mirrors": [
                     {
@@ -2219,7 +2219,7 @@
                 "laravel5 Captcha",
                 "laravel5 Security"
             ],
-            "time": "2018-11-15T00:54:41+00:00"
+            "time": "2019-01-21T08:00:11+00:00"
         },
         {
             "name": "mews/purifier",
@@ -2617,16 +2617,16 @@
         },
         {
             "name": "overtrue/laravel-lang",
-            "version": "3.0.14",
+            "version": "3.0.15",
             "source": {
                 "type": "git",
                 "url": "https://github.com/overtrue/laravel-lang.git",
-                "reference": "95888a0a9a5b048ba52de57fc01a098f23292b2d"
+                "reference": "555007487344fca450342b0dd19a6ae3bac237e2"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/overtrue/laravel-lang/zipball/95888a0a9a5b048ba52de57fc01a098f23292b2d",
-                "reference": "95888a0a9a5b048ba52de57fc01a098f23292b2d",
+                "url": "https://api.github.com/repos/overtrue/laravel-lang/zipball/555007487344fca450342b0dd19a6ae3bac237e2",
+                "reference": "555007487344fca450342b0dd19a6ae3bac237e2",
                 "shasum": "",
                 "mirrors": [
                     {
@@ -2636,7 +2636,8 @@
                 ]
             },
             "require": {
-                "caouecs/laravel-lang": "~3.0"
+                "caouecs/laravel-lang": "~3.0",
+                "symfony/process": "^3.0|^4.0"
             },
             "type": "library",
             "extra": {
@@ -2670,7 +2671,7 @@
                 "laravel",
                 "overtrue"
             ],
-            "time": "2019-01-13T14:37:42+00:00"
+            "time": "2019-01-22T07:10:12+00:00"
         },
         {
             "name": "paragonie/random_compat",

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

@@ -541,7 +541,7 @@
             var single_obfs = $('#single_obfs').val();
             var sort = $('#sort').val();
             var status = $("input:radio[name='status']:checked").val();
-            var is_tcp_check = $('#is_tcp_check').val();
+            var is_tcp_check = $("input:radio[name='is_tcp_check']:checked").val();
 
             var service = $("input:radio[name='service']:checked").val();
             var v2_alter_id = $('#v2_alter_id').val();

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

@@ -18,7 +18,7 @@
                 <div class="portlet light bordered">
                     <div class="portlet-title">
                         <div class="caption font-dark">
-                            <span class="caption-subject bold uppercase"> 用户在线IP列表 </span>
+                            <span class="caption-subject bold uppercase"> 用户在线IP列表<small>(最近10分钟)</small> </span>
                         </div>
                     </div>
                     <div class="portlet-body">

+ 1 - 1
sql/db.sql

@@ -165,7 +165,7 @@ LOCK TABLES `user` WRITE;
 /*!40000 ALTER TABLE `user` DISABLE KEYS */;
 
 INSERT INTO `user` (`id`, `username`, `password`, `port`, `passwd`, `vmess_id`, `transfer_enable`, `u`, `d`, `t`, `enable`, `method`, `protocol`, `protocol_param`, `obfs`, `obfs_param`, `speed_limit_per_con`, `speed_limit_per_user`, `wechat`, `qq`, `usage`, `pay_way`, `balance`, `enable_time`, `expire_time`, `remark`, `is_admin`, `reg_ip`, `status`, `created_at`, `updated_at`)
-VALUES (1,'admin','$2y$10$ryMdx5ejvCSdjvZVZAPpOuxHrsAUY8FEINUATy6RCck6j9EeHhPfq',10000,'@123', 'c6effafd-6046-7a84-376e-b0429751c304', 1073741824000,0,0,0,1,'aes-256-cfb','origin','','plain','',204800,204800,'','',1,3,0.00,'2017-01-01','2099-01-01',NULL,1,'127.0.0.1',1,now(),now());
+VALUES (1,'admin','$2y$10$ryMdx5ejvCSdjvZVZAPpOuxHrsAUY8FEINUATy6RCck6j9EeHhPfq',10000,'@123', 'c6effafd-6046-7a84-376e-b0429751c304', 1099511627776,0,0,0,1,'aes-256-cfb','origin','','plain','',204800,204800,'','',1,3,0.00,'2017-01-01','2099-01-01',NULL,1,'127.0.0.1',1,now(),now());
 
 /*!40000 ALTER TABLE `user` ENABLE KEYS */;
 UNLOCK TABLES;