FileMaster
Search
Toggle Dark Mode
Home
/
.
/
wp-content
/
plugins
/
ameliabooking
/
src
/
Domain
/
Entity
/
Bookable
/
Service
Edit File: Resource.php
<?php /** * @copyright © TMS-Plugins. All rights reserved. * @licence See LICENCE.md for license details. */ namespace AmeliaBooking\Domain\Entity\Bookable\Service; use AmeliaBooking\Domain\ValueObjects\BooleanValueObject; use AmeliaBooking\Domain\ValueObjects\Number\Integer\Id; use AmeliaBooking\Domain\ValueObjects\Number\Integer\PositiveInteger; use AmeliaBooking\Domain\ValueObjects\String\EntityType; use AmeliaBooking\Domain\ValueObjects\String\Name; use AmeliaBooking\Domain\ValueObjects\String\Status; /** * Class Resource * * @package AmeliaBooking\Domain\Entity\Bookable\Service */ class Resource { /** @var Id */ private $id; /** @var Name */ private $name; /** @var PositiveInteger */ private $quantity; /** @var EntityType */ private $shared; /** @var Status */ private $status; /** @var array */ private $entities; /** @var BooleanValueObject */ private $countAdditionalPeople; /** * @return Id */ public function getId() { return $this->id; } /** * @param Id $id */ public function setId($id) { $this->id = $id; } /** * @return Name */ public function getName() { return $this->name; } /** * @param Name $name */ public function setName($name) { $this->name = $name; } /** * @return PositiveInteger */ public function getQuantity() { return $this->quantity; } /** * @param PositiveInteger $quantity */ public function setQuantity($quantity) { $this->quantity = $quantity; } /** * @return EntityType */ public function getShared() { return $this->shared; } /** * @param EntityType $shared */ public function setShared($shared) { $this->shared = $shared; } /** * @return Status */ public function getStatus() { return $this->status; } /** * @param Status $status */ public function setStatus($status) { $this->status = $status; } /** * @return array */ public function getEntities() { return $this->entities; } /** * @param array $entities */ public function setEntities($entities) { $this->entities = $entities; } /** * @return BooleanValueObject */ public function getCountAdditionalPeople() { return $this->countAdditionalPeople; } /** * @param BooleanValueObject $countAdditionalPeople */ public function setCountAdditionalPeople($countAdditionalPeople) { $this->countAdditionalPeople = $countAdditionalPeople; } /** * @return array */ public function toArray() { return [ 'id' => !empty($this->getId()) ? $this->getId()->getValue() : null, 'name' => !empty($this->getName()) ? $this->getName()->getValue() : '', 'quantity' => !empty($this->getQuantity()) ? $this->getQuantity()->getValue() : 1, 'shared' => !empty($this->getShared()) ? $this->getShared()->getValue() : false, 'status' => $this->getStatus() ? $this->getStatus()->getValue() : Status::VISIBLE, 'entities' => $this->getEntities(), 'countAdditionalPeople' => $this->getCountAdditionalPeople() ? $this->getCountAdditionalPeople()->getValue() : null ]; } }
Save
Back