<?php
namespace App\Entity;
use DateTime;
use App\Repository\RingRepository;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass=RingRepository::class)
*/
class Ring
{
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="string", length=10)
*/
private $ring_code;
/**
* @ORM\Column(type="date", nullable=true)
*/
private $delivery_date;
/**
* @ORM\ManyToOne(targetEntity=Institution::class, inversedBy="ring")
*/
private $institution;
/**
* @ORM\ManyToOne(targetEntity=Ringer::class, inversedBy="rings")
*/
private $owner_ringer;
/**
* @ORM\ManyToOne(targetEntity=Group::class, inversedBy="rings")
*/
private $owner_group;
/**
* @ORM\ManyToOne(targetEntity=Institution::class, inversedBy="rings")
*/
private $owner_office;
/**
* @ORM\Column(type="datetime")
*/
private $creation_date;
/**
* @ORM\Column(type="string", length=15)
*/
private $status;
/**
* @ORM\Column(type="string", length=255)
*/
private $model;
/**
* @ORM\Column(type="string", length=255)
*/
private $number;
/**
* @ORM\Column(type="string", length=10)
*/
private $euring_ring_code;
/**
* @ORM\OneToOne(targetEntity=Register::class, mappedBy="ring", cascade={"persist", "remove"})
*/
private $register;
/**
* @ORM\ManyToOne(targetEntity=RingBatch::class, inversedBy="rings")
* @ORM\JoinColumn(nullable=false)
*/
private $batch;
public function __construct()
{
$this->creation_date = new DateTime();
}
public function __toString()
{
return $this->ring_code;
}
public function getId(): ?int
{
return $this->id;
}
public function getRingCode(): ?string
{
return $this->ring_code;
}
public function setRingCode(string $ring_code): self
{
$this->ring_code = $ring_code;
return $this;
}
public function getDeliveryDate(): ?\DateTimeInterface
{
return $this->delivery_date;
}
public function setDeliveryDate(?\DateTimeInterface $delivery_date): self
{
$this->delivery_date = $delivery_date;
return $this;
}
public function getInstitution(): ?Institution
{
return $this->institution;
}
public function setInstitution(?Institution $institution): self
{
$this->institution = $institution;
return $this;
}
public function getOwnerRinger(): ?Ringer
{
return $this->owner_ringer;
}
public function setOwnerRinger(?Ringer $owner_ringer): self
{
$this->owner_ringer = $owner_ringer;
return $this;
}
public function getOwnerGroup(): ?Group
{
return $this->owner_group;
}
public function setOwnerGroup(?Group $owner_group): self
{
$this->owner_group = $owner_group;
return $this;
}
public function getOwnerOffice(): ?Institution
{
return $this->owner_office;
}
public function setOwnerOffice(?Institution $owner_office): self
{
$this->owner_office = $owner_office;
return $this;
}
public function getCreationDate(): ?\DateTimeInterface
{
return $this->creation_date;
}
public function setCreationDate(\DateTimeInterface $creation_date): self
{
$this->creation_date = $creation_date;
return $this;
}
public function getStatus(): ?string
{
return $this->status;
}
public function setStatus(string $status): self
{
$this->status = $status;
return $this;
}
public function getModel(): ?string
{
return $this->model;
}
public function setModel(string $model): self
{
$this->model = $model;
return $this;
}
public function getNumber(): ?string
{
return $this->number;
}
public function setNumber(string $number): self
{
$this->number = $number;
return $this;
}
public function getEuringRingCode(): ?string
{
return $this->euring_ring_code;
}
public function setEuringRingCode(string $euring_ring_code): self
{
$this->euring_ring_code = $euring_ring_code;
return $this;
}
public function getRegister(): ?Register
{
return $this->register;
}
public function setRegister(Register $register): self
{
// set the owning side of the relation if necessary
if ($register->getRing() !== $this) {
$register->setRing($this);
}
$this->register = $register;
return $this;
}
public function getBatch(): ?RingBatch
{
return $this->batch;
}
public function setBatch(?RingBatch $batch): self
{
$this->batch = $batch;
return $this;
}
}