瀏覽代碼

feat: :sparkles: feat(agendamento-sob-medida) Foi ajutsado o retorno das schedules proposals

Foi criado o leftjoin para retorna os dados necessarios para a listagem das proposta enviadas para o cliente

fase:dev | origin:escopo

Co-authored-by: Copilot <copilot@github.com>
kayo henrique 1 天之前
父節點
當前提交
57f405bd48
共有 1 個文件被更改,包括 30 次插入6 次删除
  1. 30 6
      app/Services/DashboardService.php

+ 30 - 6
app/Services/DashboardService.php

@@ -181,13 +181,37 @@ class DashboardService
       ->orderBy('schedules.date', 'asc')
       ->get();
 
-      $schedulesProposals = ScheduleProposal::leftJoin('schedules', 'schedule_proposals.schedule_id', '=', 'schedules.id')
-      ->where('schedules.client_id', $cliente->id)
-      ->where('schedules.schedule_type', 'custom')
-      ->where('schedules.status', 'pending')
+      $schedulesProposals = ScheduleProposal::query()
+    ->leftJoin('schedules', 'schedule_proposals.schedule_id', '=', 'schedules.id')
+    ->leftJoin('providers', 'schedule_proposals.provider_id', '=', 'providers.id')
+    ->leftJoin('users', 'providers.user_id', '=', 'users.id')
 
-      ->orderBy('schedule_proposals.created_at', 'desc')
-      ->get();
+    ->where('schedules.client_id', $cliente->id)
+    ->where('schedules.schedule_type', 'custom')
+    ->where('schedules.status', 'pending')
+
+    ->orderBy('schedule_proposals.created_at', 'desc')
+
+    ->select([
+        'schedule_proposals.id',
+
+
+        DB::raw("DATE_PART('year', AGE(providers.birth_date)) as idade"),
+        'providers.id as provider_id',
+        'schedules.id as schedule_id',
+        'schedules.date',
+        'schedules.start_time',
+        'schedules.end_time',
+        'schedules.period_type',
+        'schedules.total_amount',
+        'providers.daily_price_8h',
+        'providers.average_rating',
+        'providers.total_services',
+
+        'users.name as provider_name'
+    ])
+
+    ->get();
 
     return [
       'headerBar'        => $headerBar,