xiaogang 4 gadi atpakaļ
vecāks
revīzija
4ef8088e81

+ 34 - 0
app/Http/Controllers/Api/TestController.php

xqd xqd
@@ -4,12 +4,14 @@
 namespace App\Http\Controllers\Api;
 
 
+use App\Models\DynamicModel;
 use App\Models\User;
 use App\Models\UserInfoModel;
 
 class TestController
 {
     public function creat_user(){
+        return response()->json(['message'=>"暂时无法使用"]);
         $total = 1000;
 
         for ($i=0;$i<$total;$i++){
@@ -49,4 +51,36 @@ class TestController
         }
         echo  'success';
     }
+
+    public function juzi(){
+        return [
+            '坎坷路途,给身边一份温暖。生活,本就是体谅和理解,把快乐装在心中,静静融化,慢慢扩散',
+            '梦想也许在今天无法实现,但重要的是,它在你心里。重要的是,你一直在努力',
+            '奋斗的意义,不在于,一定会让你取得多大的成就,只是让你在平凡的日子里,活得比原来的那个',
+            '心若年轻,岁月不老。那些偷偷溜走的时光,沧桑了我们的容颜,却丰盈了我们的人生。即使青春不',
+            '人生,就要活得漂亮,走得铿锵。自己不奋斗,终归是摆设。无论你是谁,宁可做拼搏的失败者,也',
+        ];
+    }
+
+    public function create_dynamic(){
+       // return response()->json(['message'=>"暂时无法使用"]);
+        $total = 100;
+        for ($i=0;$i<$total;$i++){
+            $ins = array();
+            $ins['user_id'] = rand(30,900);
+            $ins['content'] = $this->juzi()[rand(0,4)];
+            $ins['img_url'] = json_encode([
+                'https://zhengda.oss-cn-chengdu.aliyuncs.com/chengluApp/img/u%3D3870964477%2C3746012709%26fm%3D26%26gp%3D0.jpg',
+                'https://zhengda.oss-cn-chengdu.aliyuncs.com/chengluApp/img/%E4%B8%8B%E8%BD%BD.jpg',
+                'https://zhengda.oss-accelerate.aliyuncs.com/chengluApp/image_picker977203985037292577.jpg',
+                'https://zhengda.oss-accelerate.aliyuncs.com/chengluApp/image_picker977203985037292577.jpg'
+            ]);
+            $ins['type'] = 1;
+            $ins['status'] = 1;
+            $ins['site'] = json_encode(["city"=>"成都市","lat"=>"30.720653","lng"=>"103.899019"]);
+            $ins['tag'] = rand(1,10);
+
+            DynamicModel::query()->create($ins);
+        }
+    }
 }

+ 19 - 6
app/Services/HomeService.php

xqd
@@ -15,18 +15,31 @@ class HomeService
      */
     public function get_list($param){
 
-       // DB::select();
-
         $query = User::query()
             ->leftJoin("users_info",'users.id','=','users_info.user_id')
             ->select(['users.id','users.is_vip','users.tencent_im_user_id','users.sex','users.is_auth','users.latitude','users.longitude','users.online','users_info.avatar','users_info.nickname','users_info.area','users_info.birthday','users_info.height','users_info.weight'])
-            ->addSelect(DB::raw("acos(cos(" .$param['latitude'] . "*pi()/180)*cos(cl_users.latitude*pi()/180)*cos(" . $param['longitude'] . "*pi()/180-cl_users.longitude*pi()/180)+sin(" . $param['latitude'] . "*pi()/180)*sin(cl_users.latitude * pi()/180)) * 6367000 AS distance"))
-            ->orderBy('distance','ASC')
-            ->paginate(request('perPage',20));
+            ->addSelect(DB::raw("acos(cos(" .$param['latitude'] . "*pi()/180)*cos(cl_users.latitude*pi()/180)*cos(" . $param['longitude'] . "*pi()/180-cl_users.longitude*pi()/180)+sin(" . $param['latitude'] . "*pi()/180)*sin(cl_users.latitude * pi()/180)) * 6367000 AS distance"));
+
+        if($param['keyword']!=""){
+            $query = $query->where('users_info.nickname','like','%'.$param['keyword'].'%');
+        }
+        if($param['online']==1){
+            $query = $query->where(['users.online'=>$param['online']]);
+        }
+
+        if($param['new']==1){
+            $query = $query->orderBy('users.created_at','desc');
+        }
+
+        if($param['nearby']==1){
+            $query = $query->orderBy('distance','ASC');
+        }
+
+
+        $query = $query->paginate(request('perPage',20));
         $query = $query->toArray();
         foreach ($query['data'] as $k=>$v){
                 $query['data'][$k]['age'] =!empty($v['birthday'])? birthday($v['birthday']):0;
-
                 //计算距离
                $query['data'][$k]['distance'] =  $v['distance']>1000?round($v['distance']/1000,2).'km':round($v['distance']).'m';
         }

+ 1 - 0
routes/api.php

xqd
@@ -166,6 +166,7 @@ $api->version('v1', [
     $api->any('/wx_notify', 'PayNotifyController@wx_notify')->name('wx_notify');
     $api->any('/ali_notify', 'PayNotifyController@ali_notify')->name('ali_notify');
     $api->any('/creat_user', 'TestController@creat_user')->name('creat_user');
+    $api->any('/create_dynamic', 'TestController@create_dynamic')->name('create_dynamic');
 
 
 });