From f2f7fab8e64d7db5bd2b07701d8054c2ffe8a44f Mon Sep 17 00:00:00 2001 From: Nick Retel Date: Wed, 29 May 2024 23:01:58 +0200 Subject: [PATCH] wip --- src/DTO/Address.php | 12 ++++++------ src/DTO/Vacancy.php | 8 +++----- src/DeBanensite.php | 23 ++++++++++++++++++++--- 3 files changed, 29 insertions(+), 14 deletions(-) diff --git a/src/DTO/Address.php b/src/DTO/Address.php index 47bda03..0d8155f 100644 --- a/src/DTO/Address.php +++ b/src/DTO/Address.php @@ -34,16 +34,16 @@ public static function fromJson($data): self return new self( $id, - $data['zipcode'], - $data['houseNumber'], + $data['zipcode'] ?? null, + $data['houseNumber'] ?? null, $data['houseNumberSuffix'], $data['latitude'], $data['longitude'], $data['street'], - $data['city'], - $data['state'], - $data['country'], - $data['formattedAddress'], + $data['city'] ?? null, + $data['state'] ?? null, + $data['country'] ?? null, + $data['formattedAddress'] ?? null, ); } } diff --git a/src/DTO/Vacancy.php b/src/DTO/Vacancy.php index fa6205a..8114af8 100644 --- a/src/DTO/Vacancy.php +++ b/src/DTO/Vacancy.php @@ -23,17 +23,16 @@ public function __construct( public ?int $minHours, public ?int $maxHours, public string $publishFrom, - public ?string $publishTo, public bool $online, public ?string $contactEmail, public ?string $applyUrl, - public array $companyBranch, + public ?array $companyBranch, public ?array $requiredFieldsForApplication, public mixed $backgroundImage, public ?string $logo, public ?array $usps, public ?array $screeningQuestions, - public ?string $uwvJob, + public mixed $uwvJob, public ?string $metaTitle, public ?string $metaDescription, public ?string $publishedAt, @@ -75,11 +74,10 @@ public static function defaultFormat($data): self $data['minHours'] ?? null, $data['maxHours'] ?? null, $data['publishFrom'], - $data['publishTo'], $data['online'], $data['contactEmail'] ?? null, $data['applyUrl'] ?? null, - $data['companyBranch'], + $data['companyBranch'] ?? null, $data['requiredFieldsForApplication'] ?? null, $data['backgroundImage'] ?? null, $data['logo'] ?? null, diff --git a/src/DeBanensite.php b/src/DeBanensite.php index 6b3c105..84eb704 100755 --- a/src/DeBanensite.php +++ b/src/DeBanensite.php @@ -2,9 +2,11 @@ namespace NckRtl\DeBanensite; +use Exception; use Illuminate\Support\Collection; use NckRtl\DeBanensite\ApiRequests\CompanyBranch\GetCompanyBranch; use NckRtl\DeBanensite\ApiRequests\CompanyBranch\GetCompanyBranches; +use NckRtl\DeBanensite\ApiRequests\Vacancy\DeleteVacancy; use NckRtl\DeBanensite\ApiRequests\Vacancy\GetVacancies; use NckRtl\DeBanensite\ApiRequests\Vacancy\GetVacancy; use NckRtl\DeBanensite\ApiRequests\Vacancy\StoreVacancy; @@ -47,11 +49,21 @@ public function allPublishedVacancyIds(): Collection public function closeVacancy($vacancyId) { - $vacancy = $this->connector->send(new GetVacancy($vacancyId, 'updateOrCreate'))->dto(); + // $vacancy = $this->connector->send(new GetVacancy($vacancyId, 'updateOrCreate'))->dto(); - $vacancy->fulfilledAt = now()->format('Y-m-d\TH:i:s.v\Z'); + // // $vacancy->fulfilledAt = now()->format('Y-m-d\TH:i:s.v\Z'); + // $vacancy->fulfilledAt = now()->setTimezone('UTC')->format('Y-m-d\TH:i:sP'); + // // $vacancy->publishTo = now()->setTimezone('UTC')->format('Y-m-d\TH:i:sP'); + // // $vacancy->online = false; + // // $vacancy->published = false; - $this->connector->send(new UpdateVacancy($vacancyId, $vacancy)); + // $this->connector->send(new UpdateVacancy($vacancyId, $vacancy)); + + try { + DeBanensite::deleteVacancy($vacancyId); + } catch (Exception $e) { + + } } public function getVacancy(string $vacancyId, ?string $dtoType = null) @@ -59,6 +71,11 @@ public function getVacancy(string $vacancyId, ?string $dtoType = null) return $this->connector->send(new GetVacancy($vacancyId, $dtoType))->dto(); } + public function deleteVacancy(string $vacancyId, ?string $dtoType = null) + { + return $this->connector->send(new DeleteVacancy($vacancyId, $dtoType))->dto(); + } + public function updateVacancy(string $vacancyId, VacancyForForStoreOrUpdate $vacancyDto) { return $this->connector->send(new UpdateVacancy($vacancyId, $vacancyDto))->dto();