xiaogang пре 4 година
родитељ
комит
5c9084edec
3 измењених фајлова са 31 додато и 0 уклоњено
  1. 14 0
      app/Http/Controllers/Api/UserController.php
  2. 16 0
      app/Services/UserService.php
  3. 1 0
      routes/api.php

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

xqd
@@ -340,5 +340,19 @@ class UserController extends Controller
         return response()->json(['message'=>'操作成功']);
     }
 
+    /**
+     * 设置在线状态和通知开关
+     * @param Request $request
+     * @return \Illuminate\Http\JsonResponse|void
+     */
+    public function online_status(Request $request){
+        try {
+            $res=$this->userService->online_status($request);
+        }catch (\Exception $exception){
+            return $this->response->errorForbidden($exception->getMessage());
+        }
+        return response()->json(['message'=>'操作成功','data'=>$res]);
+    }
+
 
 }

+ 16 - 0
app/Services/UserService.php

xqd
@@ -103,4 +103,20 @@ class UserService
         $black->delete();
         return true;
     }
+
+    /**
+     * 设置隐身和通知开关
+     */
+    public function online_status($request){
+        $user = auth('api')->user();
+        if(isset($request->online)&&!empty($request->online)){
+            $user->online = $request->online;
+            $user->save();
+        }
+        if(isset($request->notice_status)&&!empty($request->notice_status)){
+            $user->notice_status = $request->notice_status;
+            $user->save();
+        }
+        return ['online'=>$user->online,'notice_status'=>$user->notice_status];
+    }
 }

+ 1 - 0
routes/api.php

xqd
@@ -105,6 +105,7 @@ $api->version('v1', [
             $api->post('/check_auth', 'UserController@check_auth')->name('user.check_auth');
             $api->post('/black_list', 'UserController@black_list')->name('user.black_list');
             $api->post('/del_black', 'UserController@del_black')->name('user.del_black');
+            $api->post('/online_status', 'UserController@online_status')->name('user.online_status');
         });
 
         /*