- add support for console

This commit is contained in:
Kamil Niemczycki 2023-07-27 14:01:55 +02:00
parent 5b71fa9781
commit f500c8691f
Signed by: kamilniemczycki
GPG Key ID: 04D4E2012F969213

View File

@ -9,16 +9,23 @@ use Illuminate\Http\Resources\Json\JsonResource;
class CVResource extends JsonResource
{
public static $wrap = null;
private bool $isConsole = false;
public function toArray($request): array
public function toArray($request = null): array
{
return [
'id' => $this->when($this->isConsole, fn (): int => $this->id),
'token' => $this->token,
'email' => $this->email,
'phoneNumber' => $this->phoneNumber,
'formattedPhoneNumber' => $this->formattedPhoneNumber,
'recipient' => $this->when($this->isConsole, fn (): string => $this->recipient),
'phone' => new PhoneResource($this->resource),
'locations' => $this->locations,
'views' => $this->when(
$this->isConsole,
fn (): int => $this->resource->info()->select('id')->get()->count()
),
'registeredViews' => $this->when($this->isConsole, fn (): int => $this->views),
'mission' => $this->when(
!is_null($this->mission),
fn (): array => explode(PHP_EOL, $this->mission, 5)
@ -33,4 +40,11 @@ class CVResource extends JsonResource
),
];
}
public function setAsConsole(): self
{
$this->isConsole = true;
return $this;
}
}