From fa6bb2a9105a2e95a60eb4048001577d201e18af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Tobias=20de=20Freitas=20Neto?= Date: Tue, 26 Dec 2023 15:53:14 -0400 Subject: [PATCH] getCoordinatesForAddress agora retorna um dto --- .../GeocodingResponseData.php | 31 +++++++++++++++++++ .../Contracts/GeocodingServiceContract.php | 11 +++++-- src/app/Services/GeocodingService.php | 14 ++++++--- 3 files changed, 48 insertions(+), 8 deletions(-) create mode 100644 src/app/DataTransferObjects/GeocodingResponseData.php diff --git a/src/app/DataTransferObjects/GeocodingResponseData.php b/src/app/DataTransferObjects/GeocodingResponseData.php new file mode 100644 index 0000000..c82a696 --- /dev/null +++ b/src/app/DataTransferObjects/GeocodingResponseData.php @@ -0,0 +1,31 @@ +geocoder = new Geocoder($client); $this->geocoder->setApiKey(config('laravel-geo-layer.key')); $this->geocoder->setRegion(config('laravel-geo-layer.region')); @@ -31,11 +33,13 @@ class GeocodingService implements GeocodingServiceContract * * @param string $address The address to retrieve coordinates for. * - * @return array An array containing the latitude and longitude coordinates. + * @return GeocodingResponseData An array containing the latitude and longitude coordinates. */ - public function getCoordinatesForAddress(string $address): array + public function getCoordinatesForAddress(string $address): GeocodingResponseData { - return $this->geocoder->getCoordinatesForAddress($address); + return GeocodingResponseData::from( + $this->geocoder->getCoordinatesForAddress($address) + ); } /**