AddressService.php 977 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. namespace App\Services;
  3. use App\Http\Resources\AddressResource;
  4. use App\Models\Address;
  5. use Illuminate\Database\Eloquent\Collection;
  6. class AddressService
  7. {
  8. public function findBySource(array $data): ?Collection
  9. {
  10. $allAddresses = Address::where('source', $data['source'])
  11. ->where('source_id', $data['source_id'])
  12. ->with(['city', 'state'])
  13. ->get();
  14. return $allAddresses;
  15. }
  16. public function one($id): Address
  17. {
  18. return Address::find($id);
  19. }
  20. public function create(array $data): Address
  21. {
  22. return Address::create($data);
  23. }
  24. public function update(array $data, int $id): Address
  25. {
  26. $address = Address::findOrFail($id);
  27. $address->fill($data);
  28. $address->save();
  29. return $address->fresh();
  30. }
  31. public function delete(int $id): bool
  32. {
  33. $address = Address::findOrFail($id);
  34. return $address->delete();
  35. }
  36. }