Przeglądaj źródła

feat: :sparkles: feat (agendamentos) criado bloco de servicos do dia na dashboard

foi criado o bloco de serviços do dia na dashboard do app e do cliente, com indicacao de inicio, codigo preenchido e finalizacao (libera avaliacao ao finalizar)

fase:dev | origin:escopo
Gustavo Zanatta 1 tydzień temu
rodzic
commit
099eee13cc

+ 1 - 0
app/Http/Resources/DashboardClienteResource.php

@@ -22,6 +22,7 @@ class DashboardClienteResource extends JsonResource
       'lastDoneSchedules' => $this['lastDoneSchedules'],
       'favoriteProviders' => $this['favoriteProviders'],
       'providersClose' => $this['providersClose'],
+      'todaySchedules' => $this['todaySchedules'],
     ];
   }
 }

+ 29 - 2
app/Services/DashboardService.php

@@ -182,6 +182,32 @@ class DashboardService
       ->orderBy('schedules.date', 'asc')
       ->get();
 
+    $todaySchedules = Schedule::with('address:district,address,number,source_id,source,id,address_type')
+      ->where('schedules.client_id', $cliente->id)
+      ->whereIn('schedules.status', ['accepted', 'paid', 'started', 'finished'])
+      ->whereDate('schedules.date', now()->toDateString())
+      ->leftJoin('providers', 'providers.id', '=', 'schedules.provider_id')
+      ->leftJoin('users as provider_user', 'provider_user.id', '=', 'providers.user_id')
+      ->leftJoin('media', 'media.id', '=', 'providers.profile_media_id')
+      ->select(
+        'schedules.id',
+        'schedules.provider_id',
+        'provider_user.name as provider_name',
+        'schedules.date',
+        'schedules.start_time',
+        'schedules.end_time',
+        'schedules.total_amount',
+        'schedules.period_type',
+        'schedules.schedule_type',
+        'schedules.address_id',
+        'schedules.status',
+        'schedules.code_verified',
+        'schedules.code',
+        'media.url as provider_photo',
+      )
+      ->orderBy('schedules.start_time', 'asc')
+      ->get();
+
     return [
       'headerBar'        => $headerBar,
       'summaryInfos'     => $summaryInfos,
@@ -190,6 +216,7 @@ class DashboardService
       'lastDoneSchedules' => $lastDoneSchedules,
       'favoriteProviders' => $favoriteProviders,
       'providersClose'   => $providersClose,
+      'todaySchedules'   => $todaySchedules,
     ];
   }
 
@@ -297,7 +324,7 @@ class DashboardService
 
     $todayServices = Schedule::with('address:district,address,number,source_id,source,id')
       ->where('schedules.provider_id', $provider->id)
-      ->whereIn('schedules.status', ['accepted', 'paid', 'started'])
+      ->whereIn('schedules.status', ['accepted', 'paid', 'started', 'finished'])
       ->whereDate('schedules.date', now()->toDateString())
       ->leftJoin('clients', 'clients.id', '=', 'schedules.client_id')
       ->leftJoin('users as client_user', 'client_user.id', '=', 'clients.user_id')
@@ -314,7 +341,7 @@ class DashboardService
         'schedules.schedule_type',
         'schedules.status',
         'schedules.code_verified',
-        'schedules.status',
+        'schedules.code',
         'custom_schedules.offers_meal',
       )
       ->orderBy('schedules.start_time', 'asc')