<?php
namespace App\Entity\Slave;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\DBAL\Types\Types;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Table(name="eposm_s_operation_tariff_amount")
* @ORM\Entity(repositoryClass="App\Repository\Slave\OperationTariffAmountRepository")
*/
class OperationTariffAmount
{
public function displayValueAndAmount()
{
return $this->getValue().' ('.$this->getAmount().' €)';
}
/**
* @ORM\Column(name="id", type="bigint")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\Column(name="value", type="string", length=191)
*/
protected $value;
/**
* @ORM\Column(name="amount", type="decimal", scale=2)
*/
protected $amount;
/**
* @ORM\Column(name="is_standard", type="boolean")
*/
protected $standard = false;
// ManyToOne
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Slave\OperationTariff", inversedBy="amounts")
* @ORM\JoinColumn(name="operation_tariff_id", referencedColumnName="id")
*/
private $tariff;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Slave\OperationAlgorithm", inversedBy="amounts")
* @ORM\JoinColumn(name="operation_algorithm_id", referencedColumnName="id")
*/
private $algorithm;
//
// OneToMany
/**
* @ORM\OneToMany(targetEntity="App\Entity\Slave\JoinTableTechnicianAreaOperationTariffAmount", mappedBy="operationTariffAmount")
*/
private $technicianAreas;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Slave\Ticket", mappedBy="operationTariffAmount")
*/
private $tickets;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Slave\Ticket", mappedBy="uavOperationTariffAmount")
*/
private $uavTickets;
public function __construct()
{
$this->technicianAreas = new ArrayCollection();
$this->tickets = new ArrayCollection();
$this->uavTickets = new ArrayCollection();
}
//
public function getId(): ?string
{
return $this->id;
}
public function getValue(): ?string
{
return $this->value;
}
public function setValue(string $value): self
{
$this->value = $value;
return $this;
}
public function getAmount(): ?string
{
return $this->amount;
}
public function setAmount(string $amount): self
{
$this->amount = $amount;
return $this;
}
public function isStandard(): ?bool
{
return $this->standard;
}
public function setStandard(bool $standard): self
{
$this->standard = $standard;
return $this;
}
public function getTariff(): ?OperationTariff
{
return $this->tariff;
}
public function setTariff(?OperationTariff $tariff): self
{
$this->tariff = $tariff;
return $this;
}
public function getAlgorithm(): ?OperationAlgorithm
{
return $this->algorithm;
}
public function setAlgorithm(?OperationAlgorithm $algorithm): self
{
$this->algorithm = $algorithm;
return $this;
}
/**
* @return Collection<int, JoinTableTechnicianAreaOperationTariffAmount>
*/
public function getTechnicianAreas(): Collection
{
return $this->technicianAreas;
}
public function addTechnicianArea(JoinTableTechnicianAreaOperationTariffAmount $technicianArea): self
{
if (!$this->technicianAreas->contains($technicianArea)) {
$this->technicianAreas->add($technicianArea);
$technicianArea->setOperationTariffAmount($this);
}
return $this;
}
public function removeTechnicianArea(JoinTableTechnicianAreaOperationTariffAmount $technicianArea): self
{
if ($this->technicianAreas->removeElement($technicianArea)) {
// set the owning side to null (unless already changed)
if ($technicianArea->getOperationTariffAmount() === $this) {
$technicianArea->setOperationTariffAmount(null);
}
}
return $this;
}
/**
* @return Collection<int, Ticket>
*/
public function getTickets(): Collection
{
return $this->tickets;
}
public function addTicket(Ticket $ticket): self
{
if (!$this->tickets->contains($ticket)) {
$this->tickets->add($ticket);
$ticket->setOperationTariffAmount($this);
}
return $this;
}
public function removeTicket(Ticket $ticket): self
{
if ($this->tickets->removeElement($ticket)) {
// set the owning side to null (unless already changed)
if ($ticket->getOperationTariffAmount() === $this) {
$ticket->setOperationTariffAmount(null);
}
}
return $this;
}
/**
* @return Collection<int, Ticket>
*/
public function getUavTickets(): Collection
{
return $this->uavTickets;
}
public function addUavTicket(Ticket $uavTicket): self
{
if (!$this->uavTickets->contains($uavTicket)) {
$this->uavTickets->add($uavTicket);
$uavTicket->setUavOperationTariffAmount($this);
}
return $this;
}
public function removeUavTicket(Ticket $uavTicket): self
{
if ($this->uavTickets->removeElement($uavTicket)) {
// set the owning side to null (unless already changed)
if ($uavTicket->getUavOperationTariffAmount() === $this) {
$uavTicket->setUavOperationTariffAmount(null);
}
}
return $this;
}
}