ProviderWorkingDayService.php 993 B

123456789101112131415161718192021222324252627282930313233343536
  1. <?php
  2. namespace App\Services;
  3. use App\Models\ProviderWorkingDay;
  4. use Illuminate\Database\Eloquent\Collection;
  5. class ProviderWorkingDayService
  6. {
  7. public function getByProvider(int $providerId): Collection
  8. {
  9. return ProviderWorkingDay::where('provider_id', $providerId)->get();
  10. }
  11. public function findByDayAndPeriod(int $providerId, int $day, string $period): ?ProviderWorkingDay
  12. {
  13. return ProviderWorkingDay::where('provider_id', $providerId)
  14. ->where('day', $day)
  15. ->where('period', $period)
  16. ->first();
  17. }
  18. public function create(array $data): ProviderWorkingDay
  19. {
  20. return ProviderWorkingDay::create($data);
  21. }
  22. public function delete($id, $day, $period): bool
  23. {
  24. $workingDay = ProviderWorkingDay::where('provider_id', $id)
  25. ->where('day', $day)
  26. ->where('period', $period)
  27. ->first();
  28. return $workingDay ? $workingDay->delete() : false;
  29. }
  30. }