<?php

namespace App\Entity;

use App\Repository\EquipementComplementRepository;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Serializer\Annotation\Groups;

/**
 * @ORM\Entity(repositoryClass=EquipementComplementRepository::class)
 * @ORM\Table(schema="sav")
 */
class EquipementComplement
{
    /**
     * @ORM\Id
     * @ORM\ManyToOne(targetEntity=Equipement::class, inversedBy="equipementComplements", cascade={"persist"})
     * @ORM\JoinColumn(nullable=false, name="idequipement")
     */
    private $equipement;

    /**
     * @ORM\Id
     * @ORM\ManyToOne(targetEntity=TypeComplement::class, inversedBy="equipementComplements")
     * @ORM\JoinColumn(nullable=false, name="idtype_complement")
     * @Groups({"api"})
     */
    private $type_complement;

    /**
     * @ORM\Column(type="boolean", nullable=true)
     * @Groups({"api"})
     */
    private $present;

    /**
     * @ORM\Column(type="string", length=30, nullable=true)
     * @Groups({"api"})
     */
    private $num_serie_frisquet;

    /**
     * @ORM\ManyToOne(targetEntity=EquipementMarque::class, inversedBy="equipementComplements")
     * @ORM\JoinColumn(name="idequipement_marque")
     * @Groups({"api"})
     */
    private $equipement_marque;

    /**
     * @Groups({"api"})
     */
    private $statut;


    public function getTypeComplement(): ?TypeComplement
    {
        return $this->type_complement;
    }

    public function setTypeComplement(?TypeComplement $type_complement): self
    {
        $this->type_complement = $type_complement;

        return $this;
    }

    public function getPresent(): ?bool
    {
        return $this->present;
    }

    public function setPresent(?bool $present): self
    {
        $this->present = $present;

        return $this;
    }


    public function getNumSerieFrisquet(): ?string
    {
        return $this->num_serie_frisquet;
    }

    public function setNumSerieFrisquet(?string $num_serie_frisquet): self
    {
        $this->num_serie_frisquet = $num_serie_frisquet;

        return $this;
    }

    public function getEquipement(): ?Equipement
    {
        return $this->equipement;
    }

    public function setEquipement(?Equipement $equipement): self
    {
        $this->equipement = $equipement;

        return $this;
    }

    public function getEquipementMarque(): ?EquipementMarque
    {
        return $this->equipement_marque;
    }

    public function setEquipementMarque(?EquipementMarque $equipement_marque): self
    {
        $this->equipement_marque = $equipement_marque;

        return $this;
    }

    public function getStatut()
    {
        return $this->statut;
    }

    public function setStatut($statut): self
    {
        $this->statut = $statut;

        return $this;
    }
}
