瀏覽代碼

2023-5-22-1 新增服务区-2

yingzi 2 年之前
父節點
當前提交
2ceb11c2bd
共有 1 個文件被更改,包括 22 次插入30 次删除
  1. 22 30
      app/api/controller/User.php

+ 22 - 30
app/api/controller/User.php

@@ -125,8 +125,6 @@ class User extends BaseController
 //    public function getInviterRanking(Request $request){
 //        $time = $request->param('time', time());
 //        $times = explode(" - ",$time);
-////        $page = $request->param('page', 1);
-////        $pageSize = $request->param('pageSize', 6);
 //        if(sizeof($times)==2)
 //        {
 //            $count = (new UserModel) -> where('parent_uid', $request->user['uid'])->where('regtime','>=',$times[0])->where('regtime','<',$times[1])->count();
@@ -143,7 +141,6 @@ class User extends BaseController
 //            $list = (new UserModel)
 //                -> where('uid', '<>', $request->user['uid'])
 //                -> orderRaw('RAND()')
-////                -> limit(6)
 //                -> field('uid, nickname, avatar')
 //                -> select()
 //                -> toArray();
@@ -156,7 +153,6 @@ class User extends BaseController
 //                -> group('parent_uid')
 //                -> field('parent_uid AS uid, COUNT(*) AS count')
 //                -> order('count', 'DESC')
-////                -> page($page, $pageSize)
 //                -> select()
 //                -> toArray();
 //            foreach ($list as &$v) {
@@ -171,47 +167,43 @@ class User extends BaseController
     public function getInviterRanking(Request $request)
     {
         $time = $request->param('time', time());
-        $times = explode(" - ",$time);
-        if(sizeof($times)==2)
-        {
-            $count = (new UserModel) -> where('parent_uid', 'in', function ($query) use ($request) {
-                $query->table('table_user')->where('uid', $request->user['uid'])->field('parent_uid');
-            })->where('regtime','>=',$times[0])->where('regtime','<',$times[1])->count();
-        }
-        else
-        {
-            $count = (new UserModel) -> where('parent_uid', 'in', function ($query) use ($request) {
-                $query->table('table_user')->where('uid', $request->user['uid'])->field('parent_uid');
-            })->count();
+        $times = explode(" - ", $time);
+        if (sizeof($times) == 2) {
+            $count = (new UserModel)->where('parent_uid', $request->user['uid'])->where('regtime', '>=', $times[0])->where('regtime', '<', $times[1])->count();
+        } else {
+            $count = (new UserModel)->where('parent_uid', $request->user['uid'])->count();
         }
+        $uids = (new UserModel)->where('parent_uid', $request->user['uid'])->column('uid');
+        $InfoAudit = new InfoAudit();
         $list = [];
         if ($count == 0) {
             $list = (new UserModel)
-                -> where('uid', '<>', $request->user['uid'])
-                -> orderRaw('RAND()')
-                -> field('uid, nickname, avatar')
-                -> select()
-                -> toArray();
+                ->where('uid', '<>', $request->user['uid'])
+                ->orderRaw('RAND()')
+                ->field('uid, nickname, avatar')
+                ->select()
+                ->toArray();
             foreach ($list as &$v) {
                 $v['count'] = (new UserModel)->where('parent_uid', $v['uid'])->count();
             }
         } else {
             $list = (new UserModel)
-                -> where('parent_uid', 'in', function ($query) use ($request) {
-                    $query->table('table_user')->where('uid', $request->user['uid'])->field('parent_uid');
-                })
-                -> group('parent_uid')
-                -> field('parent_uid AS uid, COUNT(*) AS count')
-                -> order('count', 'DESC')
-                -> select()
-                -> toArray();
+                ->where('parent_uid', 'in', $uids)
+                ->group('parent_uid')
+                ->field('parent_uid AS uid, COUNT(*) AS count')
+                ->order('count', 'DESC')
+                ->select()
+                ->toArray();
             foreach ($list as &$v) {
                 $user = (new UserModel)->where('uid', $v['uid'])->field('nickname, avatar')->find();
                 $v['nickname'] = $user['nickname'];
                 $v['avatar'] = $user['avatar'];
             }
         }
-        return app('json')->success(compact('count','list'));
+        $pub = new Pub($this->app);
+        $template = $pub->getShowTemplateItem('inviter_ranking');
+        $auth = $request->user->auth;
+        return app('json')->success(compact('count', 'list', 'template', 'auth'));
     }