<?php
namespace App\Entity;
use App\Repository\GroupDeclinationValueRepository;
use Doctrine\ORM\Mapping as ORM;
use JsonSerializable;
/**
* @ORM\Entity(repositoryClass=GroupDeclinationValueRepository::class)
*/
class GroupDeclinationValue implements JsonSerializable
{
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\ManyToOne(targetEntity=ProduitDeclinationValue::class, inversedBy="groupDeclinationValues",cascade={"persist"})
* @ORM\JoinColumn(nullable=false)
*/
private $produitDeclination;
/**
* @ORM\ManyToOne(targetEntity=Declination::class)
* @ORM\JoinColumn(nullable=false)
*/
private $declination;
/**
* @ORM\ManyToOne(targetEntity=ValueDeclination::class)
* @ORM\JoinColumn(nullable=false)
*/
private $value;
public function getId(): ?int
{
return $this->id;
}
public function getProduitDeclination(): ?ProduitDeclinationValue
{
return $this->produitDeclination;
}
public function setProduitDeclination(?ProduitDeclinationValue $produitDeclination): self
{
$this->produitDeclination = $produitDeclination;
return $this;
}
public function getDeclination(): ?Declination
{
return $this->declination;
}
public function setDeclination(?Declination $declination): self
{
$this->declination = $declination;
return $this;
}
public function getValue(): ?ValueDeclination
{
return $this->value;
}
public function setValue(?ValueDeclination $value): self
{
$this->value = $value;
return $this;
}
public function jsonSerialize()
{
return array(
'id'=>$this->getId(),
'declination' => $this->getDeclination()->getName(),
'declinationValue' => $this->getValue()->getName(),
'produitDeclination' => $this->getProduitDeclination()->getId(),
);
}
}