xiaogang 4 vuotta sitten
vanhempi
commit
b346236bd0

+ 25 - 0
app/Http/Controllers/Api/HomeController.php

xqd xqd
@@ -7,6 +7,7 @@ namespace App\Http\Controllers\Api;
 use App\Http\Params\UserCommentParam;
 use App\Http\Params\UserLikeParam;
 use App\Models\UserComment;
+use App\Models\UserPhotoDestroy;
 use App\Services\DynamicService;
 use App\Services\GeohashService;
 use App\Services\HomeService;
@@ -172,5 +173,29 @@ class HomeController extends Controller
         return response()->json(['weixin'=>$res]);
     }
 
+    /**
+     * 阅后即焚
+     */
+    public function photo_destroy(Request $request){
+        try {
+            if(empty($request->url)){
+                throw new Exception("参数错误");
+            }
+            $user = auth('api')->user();
+
+            $lock = \Illuminate\Support\Facades\Cache::lock('photo_destroy'.$user->id, 1);
+            if ($lock->get()) {
+                if(!UserPhotoDestroy::query()->where(['user_id'=>$user->id,'url'=>$request->url])->first()){
+                    UserPhotoDestroy::query()->create(['user_id'=>$user->id,'url'=>$request->url,'atime'=>date("Y-m-d H:i:s")]);
+                }
+                $lock->release();
+            }else{
+                throw new Exception("请求太频繁");
+            }
+        }catch (\Exception $exception){
+            return $this->response->errorForbidden($exception->getMessage());
+        }
+        return response()->json(['message'=>'已销毁']);
+    }
 
 }

+ 0 - 23
app/Http/Controllers/Api/UserController.php

xqd
@@ -268,30 +268,7 @@ class UserController extends Controller
         return response()->json(['message'=>'删除成功']);
     }
 
-    /**
-     * 阅后即焚
-     */
-    public function photo_destroy(Request $request){
-        try {
-            if(empty($request->url)){
-                throw new Exception("参数错误");
-            }
-            $user = auth('api')->user();
 
-            $lock = Cache::lock('photo_destroy'.$user->id, 1);
-            if ($lock->get()) {
-                if(!UserPhotoDestroy::query()->where(['user_id'=>$user->id,'url'=>$request->url])->first()){
-                    UserPhotoDestroy::query()->create(['user_id'=>$user->id,'url'=>$request->url,'atime'=>date("Y-m-d H:i:s")]);
-                }
-                $lock->release();
-            }else{
-                throw new Exception("请求太频繁");
-            }
-        }catch (\Exception $exception){
-            return $this->response->errorForbidden($exception->getMessage());
-        }
-        return response()->json(['message'=>'已销毁']);
-    }
 
 
 

+ 22 - 15
app/Services/HomeService.php

xqd xqd
@@ -58,6 +58,18 @@ class HomeService
         $user = auth('api')->user();
         $is_like = 0;
         $is_comment = 0;
+
+        $userinfo = User::query()
+            ->leftJoin('users_info','users.id','=','users_info.user_id')
+            ->where('users.id',$user_id)
+            ->select(['users.id','users.sex','users.is_auth','users.is_vip','users.tencent_im_user_id','users.online','users_info.*'])
+            ->first();
+        $userinfo->age = birthday($userinfo->birthday);
+        $userinfo->hobby = !empty($userinfo->hobby)?explode(',',$userinfo->hobby):array();
+
+        $photo = !empty($userinfo->photo)?json_decode($userinfo->photo,true):array();
+
+
         if($user){
             //登录状态  增加 谁看了我记录
             look_log($user->id,$user_id);
@@ -70,26 +82,21 @@ class HomeService
             if(UserComment::query()->where(['user_id'=>$user->id,'comment_id'=>$user_id])->first()){
                 $is_comment = 1;
             }
-        }
-        $userinfo = User::query()
-            ->leftJoin('users_info','users.id','=','users_info.user_id')
-            ->where('users.id',$user_id)
-            ->select(['users.id','users.sex','users.is_auth','users.is_vip','users.tencent_im_user_id','users.online','users_info.*'])
-            ->first();
-        $userinfo->age = birthday($userinfo->birthday);
-        $userinfo->hobby = !empty($userinfo->hobby)?explode(',',$userinfo->hobby):array();
-
-        $photo = !empty($userinfo->photo)?json_decode($userinfo->photo,true):array();
-        //查询是否阅后即焚
-        if(count($photo)>0){
-            foreach ($photo as $k=>$v){
-                if($v['state']==1 && UserPhotoDestroy::query()->where([''])){
 
+            //查询是否阅后即焚
+            if(count($photo)>0){
+                foreach ($photo as $k=>$v){
+                    if($v['state']==1 && UserPhotoDestroy::query()->where(['url'=>$v['url'],'user_id'=>$user->id])->first()){
+                        $photo[$k]['is_destroy'] = 1;
+                    }
                 }
+            }else{
+                $photo = array();
             }
         }
 
-        $userinfo->photo = !empty($userinfo->photo)?json_decode($userinfo->photo,true):array();
+
+        $userinfo->photo = $photo;
 
 
         $userinfo->video = !empty($userinfo->video)?json_decode($userinfo->video,true):array();

+ 1 - 1
app/Services/NoticeService.php

xqd
@@ -116,7 +116,7 @@ class NoticeService
         $query = $query->toArray();
         foreach ($query['data'] as $k=>$v){
             $query['data'][$k]['atime'] = uc_time_ago(strtotime($v['atime']));
-            $query['data'][$k]['img_url'] = $v['img_url']=='[]'?null:json_decode($v['img_url'],true);
+            $query['data'][$k]['img_url'] = $v['img_url']=='[]'? null :json_decode($v['img_url'],true);
             $query['data'][$k]['age'] = !empty($v['birthday'])?birthday($v['birthday']):0;
         }
         return $query;

+ 3 - 1
routes/api.php

xqd xqd xqd
@@ -32,6 +32,7 @@ $api->version('v1', [
             $api->post('/get_location', 'HomeController@get_location')->name('home.get_location');
             $api->post('/user_detail', 'HomeController@user_detail')->name('home.user_detail');
             $api->post('/user_dynamic', 'HomeController@user_dynamic')->name('home.user_dynamic');
+            $api->post('/photo_destroy', 'HomeController@photo_destroy')->name('home.photo_destroy');
         });
 
         /*
@@ -116,7 +117,7 @@ $api->version('v1', [
             $api->post('/get_invite_list', 'UserController@get_invite_list')->name('user.get_invite_list');
             $api->get('/receive_day', 'UserController@receive_day')->name('user.receive_day');
             $api->post('/del_file', 'UserController@del_file')->name('user.del_file');
-            $api->post('/photo_destroy', 'UserController@photo_destroy')->name('user.photo_destroy');
+
         });
 
         /*
@@ -141,6 +142,7 @@ $api->version('v1', [
             $api->post('/do_like', 'HomeController@do_like')->name('home.do_like');
             $api->post('/do_comment', 'HomeController@do_comment')->name('home.do_comment');
             $api->post('/get_weixin', 'HomeController@get_weixin')->name('home.get_weixin');
+
         });
 
         /*