src/Entity/GestionComerciale/FabricationMultiple.php line 23

Open in your IDE?
  1. <?php
  2. namespace App\Entity\GestionComerciale;
  3. use App\Entity\Utilisateur\Utilisateur;
  4. use DateTime;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. use Gedmo\Mapping\Annotation as Gedmo;
  8. use Doctrine\Common\Collections\ArrayCollection;
  9. use Symfony\Component\Serializer\Annotation\Groups;
  10. use Symfony\Component\Validator\Constraints as Assert;
  11. use App\Annotations\SecuredEntity;
  12. /**
  13.  * Fabrication
  14.  *
  15.  * @ORM\Table("commerciale__fabrication_multiple")
  16.  * @ORM\Entity(repositoryClass="App\Repository\GestionComerciale\FabricationMultipleRepository")
  17.  * @Gedmo\SoftDeleteable(fieldName="dateSuppression",timeAware=false)
  18.  * @SecuredEntity (name="Fabrication Multiple", group="Gestion commerciale")
  19.  */
  20. class FabricationMultiple
  21. {
  22.     /**
  23.      * @ORM\Column(name="id", type="integer")
  24.      * @ORM\Id
  25.      * @ORM\GeneratedValue(strategy="AUTO")
  26.      */
  27.     private $id;
  28.     
  29.     /**
  30.      * @ORM\Column(name="reference", type="string", length=255, nullable=true)
  31.      */
  32.     private $reference;
  33.     /**
  34.      * @ORM\Column(name="codeBarre", type="string", length=255, nullable=true)
  35.      * @Assert\NotBlank(groups={"LancerUsinage"},message="Le code barre est obligatoire")
  36.      */
  37.     private $codeBarre;
  38.     /**
  39.      * @ORM\ManyToOne(targetEntity="App\Entity\GestionComerciale\TailleDisque")
  40.      * @ORM\JoinColumn(nullable=true)
  41.      * @Assert\NotBlank(groups={"LancerUsinage"},message="La taille du disque est obligatoire")
  42.      */
  43.     private $tailleDisque;
  44.     
  45.     /**
  46.      * @ORM\ManyToOne(targetEntity="App\Entity\Utilisateur\Utilisateur", inversedBy="fabricationsMultiple")
  47.      * @ORM\JoinColumn(nullable=true)
  48.      */
  49.     private $utilisateur;
  50.     
  51.     /**
  52.      * @ORM\ManyToOne(targetEntity="App\Entity\Utilisateur\Utilisateur", inversedBy="fabricationsMagasinier")
  53.      * @ORM\JoinColumn(nullable=true)
  54.      */
  55.     private $magasinier;
  56.     
  57.     /**
  58.      * @ORM\Column(name="commentaire", type="text", nullable=true)
  59.     */
  60.     private $commentaire;
  61.     /**
  62.      * @ORM\Column(name="date", type="datetime")
  63.      */
  64.     private $date;
  65.     
  66.     /**
  67.      * @ORM\Column(name="date_fabrication", type="datetime")
  68.      */
  69.     private $dateFabrication;
  70.     
  71.      /**
  72.      * @ORM\Column(name="date_supression", type="datetime", nullable=true)
  73.      */
  74.     private $dateSuppression;
  75.     
  76.      /**
  77.      * @ORM\Column(name="date_maj", type="datetime", nullable=true)
  78.      * @Gedmo\Timestampable(on="update")
  79.      */
  80.     private $dateMaj;
  81.     
  82.      /**
  83.      * @ORM\Column(name="date_maj_prix", type="datetime", nullable=true)
  84.      
  85.      */
  86.     private $dateMajPrix;
  87.     
  88.     /**
  89.     * @ORM\OneToMany(targetEntity="App\Entity\GestionComerciale\Fabrication", cascade={"persist"}, mappedBy="fabricationMultiple")
  90.     */
  91.     private $fabrications;
  92.     
  93.     /**
  94.     * @ORM\OneToMany(targetEntity="App\Entity\GestionComerciale\Fabrication", cascade={"persist"}, mappedBy="prestation")
  95.     */
  96.     private $fabricationsPrestation;
  97.     /**
  98.      * @ORM\ManyToOne(targetEntity="App\Entity\GestionComerciale\StatutFabrication", inversedBy="fabricationsMultiple")
  99.      * @ORM\JoinColumn(nullable=true)
  100.      */
  101.     private $statutFabricationMultiple;
  102.     
  103.     /**
  104.      * @ORM\Column(name="prestation", type="boolean", nullable=true)
  105.      */
  106.     private $prestation;
  107.     /**
  108.     * @ORM\OneToMany(targetEntity="App\Entity\GestionComerciale\ArticleCommande", mappedBy="fabricationMultiple")
  109.     */
  110.     private $articleCommandes;
  111.     /**
  112.      * @ORM\Column(name="type_fabrication", type="smallint")
  113.      */
  114.     private $typeFabrication Fabrication::DEDUCTIVE;
  115.     public function __construct()
  116.     {
  117.     $this->date = new Datetime();
  118.         $this->dateFabrication          = new Datetime();
  119.         $this->articleCommandes         = new ArrayCollection();
  120.         $this->fabricationsPrestation   = new ArrayCollection();
  121.         $this->fabrications             = new ArrayCollection();
  122.     }
  123.     public function getId(): ?int
  124.     {
  125.         return $this->id;
  126.     }
  127.     public function setReference(?string $reference): FabricationMultiple
  128.     {
  129.         $this->reference $reference;
  130.         return $this;
  131.     }
  132.     public function getReference(): ?string
  133.     {
  134.         return $this->reference;
  135.     }
  136.     public function setCommentaire(?string $commentaire): FabricationMultiple
  137.     {
  138.         $this->commentaire $commentaire;
  139.         return $this;
  140.     }
  141.     public function getCommentaire(): ?string
  142.     {
  143.         return $this->commentaire;
  144.     }
  145.     public function setDate(DateTime $date): FabricationMultiple
  146.     {
  147.         $this->date $date;
  148.         return $this;
  149.     }
  150.     public function getDate(): DateTime
  151.     {
  152.         return $this->date;
  153.     }
  154.     public function setDateFabrication(DateTime $dateFabrication): FabricationMultiple
  155.     {
  156.         $this->dateFabrication $dateFabrication;
  157.         return $this;
  158.     }
  159.     public function getDateFabrication(): DateTime
  160.     {
  161.         return $this->dateFabrication;
  162.     }
  163.     public function setDateSuppression(?DateTime $dateSuppression): FabricationMultiple
  164.     {
  165.         $this->dateSuppression $dateSuppression;
  166.         return $this;
  167.     }
  168.     public function getDateSuppression(): ?DateTime
  169.     {
  170.         return $this->dateSuppression;
  171.     }
  172.     public function setDateMaj(?DateTime $dateMaj): FabricationMultiple
  173.     {
  174.         $this->dateMaj $dateMaj;
  175.         return $this;
  176.     }
  177.     public function getDateMaj(): ?DateTime
  178.     {
  179.         return $this->dateMaj;
  180.     }
  181.     public function setDateMajPrix(?DateTime $dateMajPrix): FabricationMultiple
  182.     {
  183.         $this->dateMajPrix $dateMajPrix;
  184.         return $this;
  185.     }
  186.     public function getDateMajPrix(): ?DateTime
  187.     {
  188.         return $this->dateMajPrix;
  189.     }
  190.     public function setUtilisateur(?Utilisateur $utilisateur): FabricationMultiple
  191.     {
  192.         $this->utilisateur $utilisateur;
  193.         return $this;
  194.     }
  195.     public function getUtilisateur(): ?Utilisateur
  196.     {
  197.         return $this->utilisateur;
  198.     }
  199.     public function setMagasinier(?Utilisateur $magasinier): FabricationMultiple
  200.     {
  201.         $this->magasinier $magasinier;
  202.         return $this;
  203.     }
  204.     public function getMagasinier(): ?Utilisateur
  205.     {
  206.         return $this->magasinier;
  207.     }
  208.     public function addFabrication(Fabrication $fabrication): FabricationMultiple
  209.     {
  210.         $this->fabrications[] = $fabrication;
  211.         $fabrication->setFabricationMultiple($this);
  212.         return $this;
  213.     }
  214.     public function removeFabrication(Fabrication $fabrication)
  215.     {
  216.         $this->fabrications->removeElement($fabrication);
  217.     }
  218.     public function getFabrications(): Collection
  219.     {
  220.         return $this->fabrications;
  221.     }
  222.     public function setPrestation(?bool $prestation): FabricationMultiple
  223.     {
  224.         $this->prestation $prestation;
  225.         return $this;
  226.     }
  227.     public function getPrestation(): ?bool
  228.     {
  229.         return $this->prestation;
  230.     }
  231.     public function addFabricationsPrestation(Fabrication $fabricationsPrestation): FabricationMultiple
  232.     {
  233.         $this->fabricationsPrestation[] = $fabricationsPrestation;
  234.         $fabricationsPrestation->setPrestation($this);
  235.         return $this;
  236.     }
  237.     public function removeFabricationsPrestation(Fabrication $fabricationsPrestation)
  238.     {
  239.         $this->fabricationsPrestation->removeElement($fabricationsPrestation);
  240.     }
  241.     public function getFabricationsPrestation(): Collection
  242.     {
  243.         return $this->fabricationsPrestation;
  244.     }
  245.     public function addArticleCommande(ArticleCommande $articleCommande): FabricationMultiple
  246.     {
  247.         $this->articleCommandes[] = $articleCommande;
  248.         return $this;
  249.     }
  250.     public function removeArticleCommande(ArticleCommande $articleCommande)
  251.     {
  252.         $this->articleCommandes->removeElement($articleCommande);
  253.     }
  254.     public function getArticleCommandes(): Collection
  255.     {
  256.         return $this->articleCommandes;
  257.     }
  258.     public function setStatutFabricationMultiple(?StatutFabrication $statutFabricationMultiple): FabricationMultiple
  259.     {
  260.         $this->statutFabricationMultiple $statutFabricationMultiple;
  261.         return $this;
  262.     }
  263.     public function getStatutFabricationMultiple(): ?StatutFabrication
  264.     {
  265.         return $this->statutFabricationMultiple;
  266.     }
  267.     public function getTypeFabrication() :int
  268.     {
  269.         return $this->typeFabrication;
  270.     }
  271.     public function setTypeFabricationint $typeFabrication)
  272.     {
  273.         $this->typeFabrication $typeFabrication;
  274.         return $this;
  275.     }
  276.     public function getCodeBarre(): ?string
  277.     {
  278.         return $this->codeBarre;
  279.     }
  280.     public function setCodeBarre(?string $codeBarre): self
  281.     {
  282.         $this->codeBarre $codeBarre;
  283.         return $this;
  284.     }
  285.     public function isPrestation(): ?bool
  286.     {
  287.         return $this->prestation;
  288.     }
  289.     public function getTailleDisque(): ?TailleDisque
  290.     {
  291.         return $this->tailleDisque;
  292.     }
  293.     public function setTailleDisque(?TailleDisque $tailleDisque): self
  294.     {
  295.         $this->tailleDisque $tailleDisque;
  296.         return $this;
  297.     }
  298. }