소스 검색

fixed:用户端-附近技师

刘学玺 4 달 전
부모
커밋
b08a677165
3개의 변경된 파일9개의 추가작업 그리고 10개의 파일을 삭제
  1. 2 2
      app/Http/Controllers/Client/CoachController.php
  2. 7 6
      app/Services/Client/CoachService.php
  3. 0 2
      routes/api.php

+ 2 - 2
app/Http/Controllers/Client/CoachController.php

@@ -28,8 +28,8 @@ class CoachController extends Controller
      *
      * @authenticated
      *
-     * @queryParam latitude float required 纬度. Example: 34.0522
-     * @queryParam longitude float required 经度. Example: -118.2437
+     * @queryParam latitude float required 纬度. Example: 39.9042
+     * @queryParam longitude float required 经度. Example: 116.4074
      *
      * @response {
      *   "code": 200,

+ 7 - 6
app/Services/Client/CoachService.php

@@ -9,6 +9,7 @@ use App\Enums\TechnicianStatus;
 use App\Enums\UserStatus;
 use App\Models\CoachSchedule;
 use App\Models\CoachUser;
+use App\Models\MemberUser;
 use App\Models\Order;
 use Illuminate\Support\Carbon;
 use Illuminate\Support\Facades\Auth;
@@ -21,12 +22,12 @@ class CoachService
     /**
      * 获取技师列表
      */
-    public function getNearCoachList($latitude, $longitude)
+    public function getNearCoachList(int $userId, float $latitude, float $longitude)
     {
         $page = request()->get('page', 1);
         $perPage = request()->get('per_page', 15);
         // 获取当前用户
-        $user = Auth::user();
+        $user = MemberUser::find($userId);
 
         Log::info('Current user and coordinates:', [
             'user' => $user ? $user->id : null,
@@ -39,7 +40,7 @@ class CoachService
             throw new \Exception('用户未登录');
         }
 
-        if ($user->state !== 'enable') {
+        if ($user->state !== UserStatus::OPEN->value) {
             throw new \Exception('用户状态异常');
         }
 
@@ -62,13 +63,13 @@ class CoachService
         $coaches = CoachUser::query()
             ->whereIn('id', $paginatedCoachIds)
             ->whereHas('info', function ($query) {
-                $query->where('state', 'approved');
+                $query->where('state', TechnicianAuthStatus::PASSED->value);
             })
             ->whereHas('real', function ($query) {
-                $query->where('state', 'approved');
+                $query->where('state', TechnicianAuthStatus::PASSED->value);
             })
             ->whereHas('qual', function ($query) {
-                $query->where('state', 'approved');
+                $query->where('state', TechnicianAuthStatus::PASSED->value);
             })
             ->with(['info:id,nickname,avatar,gender'])
             ->paginate($perPage);

+ 0 - 2
routes/api.php

@@ -129,8 +129,6 @@ Route::prefix('client')->group(function () {
             Route::get('list', [MarketDistTeamController::class, 'index'])->name('team.list');
         });
 
-        // 技师排班相关接口
-        Route::get('/coach/schedule', [App\Http\Controllers\Client\Coach\ScheduleController::class, 'show']);
     });
 
 });