<?php
declare(strict_types=1);
namespace App\Infrastructure\Doctrine\Entity;
use App\Domain\Common\Entity\IzOrderPriceParameter;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass="App\Infrastructure\Doctrine\Repository\DoctrineIzOrderPriceParameterRepository")
*/
class DoctrineIzOrderPriceParameter implements IzOrderPriceParameter
{
/**
* @ORM\Id
* @ORM\Column(type="string", length=16, unique=true)
*/
private string $codeTpm = '';
/**
* @ORM\Column(type="string", length=191, nullable=true)
*/
private ?string $libelle = null;
/**
* @ORM\Column(type="integer", nullable=true)
*/
private ?int $numeroDePriorite = null;
/**
* @ORM\Column(type="boolean", options={"default": 0})
*/
private ?bool $typeCatalogue = false;
/**
* @ORM\Column(type="string", length=191, nullable=true)
*/
private ?string $typeRange = null;
/**
* @ORM\Column(type="boolean", options={"default": 0})
*/
private bool $prixModifiable = false;
/**
* @ORM\Column(type="boolean", options={"default": 0})
*/
private bool $recuperationPrix = false;
/**
* @ORM\Column(type="float", nullable=true)
*/
private ?float $remise1 = null;
/**
* @ORM\Column(type="float", nullable=true)
*/
private ?float $remise2 = null;
/**
* @ORM\Column(type="float", nullable=true)
*/
private ?float $remise3 = null;
/**
* @ORM\Column(type="string", length=4, nullable=true)
*/
private ?string $critere1 = null;
/**
* @ORM\Column(type="string", length=4, nullable=true)
*/
private ?string $critere2 = null;
/**
* @ORM\Column(type="boolean", options={"default": 0})
*/
private bool $negocie = false;
public function getCodeTpm(): string
{
return $this->codeTpm;
}
public function setCodeTpm(string $codeTpm): void
{
$this->codeTpm = $codeTpm;
}
public function getLibelle(): ?string
{
return $this->libelle;
}
public function setLibelle(?string $libelle): void
{
$this->libelle = $libelle;
}
public function getNumeroDePriorite(): ?int
{
return $this->numeroDePriorite;
}
public function setNumeroDePriorite(?int $numeroDePriorite): void
{
$this->numeroDePriorite = $numeroDePriorite;
}
public function getTypeCatalogue(): ?bool
{
return $this->typeCatalogue;
}
/**
* {@inheritDoc}
*/
public function setTypeCatalogue($typeCatalogue): void
{
if (\in_array($typeCatalogue, ['O', 'N'], true)) {
$typeCatalogue = 'O' === $typeCatalogue;
}
$this->typeCatalogue = (bool) $typeCatalogue;
}
public function getTypeRange(): ?string
{
return $this->typeRange;
}
public function setTypeRange(?string $typeRange): void
{
$this->typeRange = $typeRange;
}
public function isPrixModifiable(): bool
{
return $this->prixModifiable;
}
/**
* {@inheritDoc}
*/
public function setPrixModifiable($prixModifiable): void
{
if (\in_array($prixModifiable, ['O', 'N'], true)) {
$prixModifiable = 'O' === $prixModifiable;
}
$this->prixModifiable = (bool) $prixModifiable;
}
public function isRecuperationPrix(): bool
{
return $this->recuperationPrix;
}
/**
* {@inheritDoc}
*/
public function setRecuperationPrix($recuperationPrix): void
{
if (\in_array($recuperationPrix, ['O', 'N'], true)) {
$recuperationPrix = 'O' === $recuperationPrix;
}
$this->recuperationPrix = (bool) $recuperationPrix;
}
public function getRemise1(): ?float
{
return $this->remise1;
}
public function setRemise1(?float $remise1): void
{
$this->remise1 = $remise1;
}
public function getRemise2(): ?float
{
return $this->remise2;
}
public function setRemise2(?float $remise2): void
{
$this->remise2 = $remise2;
}
public function getRemise3(): ?float
{
return $this->remise3;
}
public function setRemise3(?float $remise3): void
{
$this->remise3 = $remise3;
}
public function getCritere1(): ?string
{
return $this->critere1;
}
public function setCritere1(?string $critere1): void
{
$this->critere1 = $critere1;
}
public function getCritere2(): ?string
{
return $this->critere2;
}
public function setCritere2(?string $critere2): void
{
$this->critere2 = $critere2;
}
public function isNegocie(): bool
{
return $this->negocie;
}
/**
* {@inheritDoc}
*/
public function setNegocie($negocie): void
{
if (\in_array($negocie, ['O', 'N'], true)) {
$negocie = 'O' === $negocie;
}
$this->negocie = (bool) $negocie;
}
}