toby/app/Infrastructure/Http/Resources/VacationRequestResource.php
Adrian Hopek c95d08c861
#120 - remote work (#127)
* #120 - wip

* #120 - add icon to home office

* #120 - wip

* #120 - wip

* #120 - wip

* #120 - wip

* #120 - wip

* #120 - ui fixes

* #120 - fix

* #120 - fix

* #120 - fix

* #120 - fix

* #120 - translation fix

* #120 - fix

Co-authored-by: EwelinaLasowy <ewelina.lasowy@blumilk.pl>
2022-04-21 07:44:22 +02:00

38 lines
1.0 KiB
PHP

<?php
declare(strict_types=1);
namespace Toby\Infrastructure\Http\Resources;
use Illuminate\Http\Resources\Json\JsonResource;
use Toby\Domain\VacationTypeConfigRetriever;
class VacationRequestResource extends JsonResource
{
public static $wrap = null;
protected VacationTypeConfigRetriever $configRetriever;
public function __construct($resource)
{
parent::__construct($resource);
$this->configRetriever = app(VacationTypeConfigRetriever::class);
}
public function toArray($request): array
{
return [
"id" => $this->id,
"name" => $this->name,
"user" => new SimpleUserResource($this->user),
"type" => $this->type,
"isVacation" => $this->configRetriever->isVacation($this->type),
"state" => $this->state,
"from" => $this->from->toDisplayString(),
"to" => $this->to->toDisplayString(),
"comment" => $this->comment,
"days" => VacationResource::collection($this->vacations),
];
}
}