<?php
namespace App\Entity;
use App\Repository\SaleOrderParticipantRepository;
use App\Traits\DateTrait;
use DateTimeInterface;
use Doctrine\ORM\Mapping as ORM;
use JMS\Serializer\Annotation\Expose;
use JMS\Serializer\Annotation\Groups;
/**
* @ORM\Entity(repositoryClass=SaleOrderParticipantRepository::class)
*/
class SaleOrderParticipant
{
use DateTrait;
public const A = "adulte";
public const E = "enfant";
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="string", length=255)
*
* @Expose
* @Groups({"sale_order:item", "sale_oder_item:list", "sale_order:post", "get:read","export_order_datatable"})
*/
private ?string $lastName;
/**
* @ORM\Column(type="string", length=255)
*
* @Expose
* @Groups({"sale_order:item", "sale_oder_item:list", "sale_order:post", "get:read","export_order_datatable"})
*/
private ?string $firstName;
/**
* @ORM\Column(type="string", length=1)
*
* @Expose
* @Groups({"sale_order:item", "sale_oder_item:list", "sale_order:post", "get:read","export_order_datatable"})
*/
private ?string $typeParticipant;
/**
* @ORM\ManyToOne(targetEntity=SaleOrderItem::class, inversedBy="participants")
* @ORM\JoinColumn(nullable=false, name="sale_order_item_id")
*/
private ?SaleOrderItem $saleOrderItem = null;
/**
* @ORM\Column(type="date", nullable=true)
*
* @Expose
* @Groups({"sale_order:item", "sale_oder_item:list", "sale_order:post", "get:read","export_order_datatable"})
*/
private ?DateTimeInterface $birthDate;
public function getId(): ?int
{
return $this->id;
}
public function getLastName(): ?string
{
return $this->lastName;
}
public function setLastName(string $lastName): self
{
$this->lastName = $lastName;
return $this;
}
public function getFirstName(): ?string
{
return $this->firstName;
}
public function setFirstName(string $firstName): self
{
$this->firstName = $firstName;
return $this;
}
public function getTypeParticipant(): ?string
{
return $this->typeParticipant;
}
public function setTypeParticipant(string $typeParticipant): self
{
$this->typeParticipant = $typeParticipant;
return $this;
}
public function getBirthDate(): ?DateTimeInterface
{
return $this->birthDate;
}
public function setBirthDate(?DateTimeInterface $birthDate): self
{
$this->birthDate = $birthDate;
return $this;
}
public function getSaleOrderItem(): ?SaleOrderItem
{
return $this->saleOrderItem;
}
public function setSaleOrderItem(?SaleOrderItem $saleOrderItem): self
{
$this->saleOrderItem = $saleOrderItem;
return $this;
}
}