src/Flexy/ShopBundle/Entity/Vendor/Vendor.php line 25

  1. <?php
  2. namespace App\Flexy\ShopBundle\Entity\Vendor;
  3. use ApiPlatform\Core\Annotation\ApiResource;
  4. use App\Entity\User;
  5. use App\Flexy\ShopBundle\Entity\Customer\Customer;
  6. use App\Flexy\ShopBundle\Entity\Order\Order;
  7. use App\Flexy\ShopBundle\Entity\Product\ImportExcel;
  8. use App\Flexy\ShopBundle\Entity\Product\Product;
  9. use App\Flexy\ShopBundle\Entity\Product\ProductShop;
  10. use App\Flexy\ShopBundle\Repository\VendorRepository;
  11. use Doctrine\Common\Collections\ArrayCollection;
  12. use Doctrine\Common\Collections\Collection;
  13. use Doctrine\ORM\Mapping as ORM;
  14. use Vich\UploaderBundle\Mapping\Annotation as Vich;
  15. use Symfony\Component\HttpFoundation\File\File;
  16. use Symfony\Component\Validator\Constraints as Assert;
  17. /**
  18.  * @Vich\Uploadable
  19.  */
  20. #[ApiResource]
  21. #[ORM\Entity(repositoryClassVendorRepository::class)]
  22. class Vendor implements \Stringable
  23. {
  24.     #[ORM\Id]
  25.     #[ORM\GeneratedValue]
  26.     #[ORM\Column(type'integer')]
  27.     private $id;
  28.     #[ORM\Column(type'string'length255)]
  29.     private ?string $name null;
  30.     #[ORM\Column(type'string'length255nullabletrue)]
  31.     private ?string $image null;
  32.     #[ORM\Column(type'datetime_immutable'nullabletrue)]
  33.     private ?\DateTimeImmutable $createdAt null;
  34.     #[ORM\Column(type'string'length255nullabletrue)]
  35.     #[Assert\Email]
  36.     private ?string $email null;
  37.     #[ORM\OneToOne(targetEntityUser::class, cascade: ['persist''remove'])]
  38.     #[ORM\JoinColumn(nullablefalse)]
  39.     private \App\Entity\User $user;
  40.     #[ORM\Column(type'text'nullabletrue)]
  41.     private ?string $description null;
  42.     #[ORM\Column(type'boolean'nullabletrue)]
  43.     private ?bool $isValid null;
  44.     #[ORM\OneToMany(targetEntityProduct::class, mappedBy'vendor')]
  45.     private \Doctrine\Common\Collections\Collection|array $products;
  46.     #[ORM\Column(type'string'length255)]
  47.     private ?string $fullName null;
  48.     #[ORM\Column(type'string'length255)]
  49.     private ?string $tel null;
  50.     #[ORM\Column(type'string'length255)]
  51.     private ?string $address null;
  52.     #[ORM\Column(type'string'length255)]
  53.     private ?string $city null;
  54.     #[ORM\Column(type'string'length255)]
  55.     private ?string $ICE null;
  56.     #[ORM\Column(type'string'length255)]
  57.     private ?string $RC null;
  58.     #[ORM\Column(type'string'length255)]
  59.     private ?string $simulateUsername null;
  60.     #[ORM\Column(type'string'length255nullabletrue)]
  61.     private ?string $simulatePassword null;
  62.     #[ORM\Column(type'string'length255nullabletrue)]
  63.     private ?string $coverImage null;
  64.     /**
  65.      * @Vich\UploadableField(mapping="join_images", fileNameProperty="pathRCImage")
  66.      */
  67.     private ?\Symfony\Component\HttpFoundation\File\File $imageRCFile null;
  68.         /**
  69.      * @Vich\UploadableField(mapping="join_images", fileNameProperty="pathIceImage")
  70.      */
  71.     private ?\Symfony\Component\HttpFoundation\File\File $imageIceFile null;
  72.         /**
  73.      * @Vich\UploadableField(mapping="join_images", fileNameProperty="pathIFIMAGE")
  74.      */
  75.     private ?\Symfony\Component\HttpFoundation\File\File $imageIFFile null;
  76.     #[ORM\Column(type'string'length255nullabletrue)]
  77.     private ?string $pathRCImage null;
  78.     #[ORM\Column(type'string'length255nullabletrue)]
  79.     private ?string $pathIceImage null;
  80.     #[ORM\Column(type'string'length255nullabletrue)]
  81.     private ?string $pathIFImage null;
  82.     #[ORM\Column(type'string'length255nullabletrue)]
  83.     private ?string $IdentifiantFiscale null;
  84.     #[ORM\OneToMany(targetEntityImportExcel::class, mappedBy'vendor')]
  85.     private \Doctrine\Common\Collections\Collection|array $importExcels;
  86.     #[ORM\OneToMany(targetEntityCustomer::class, mappedBy'vendor')]
  87.     private \Doctrine\Common\Collections\Collection|array $customers;
  88.     #[ORM\OneToMany(targetEntityOrder::class, mappedBy'vendor')]
  89.     private \Doctrine\Common\Collections\Collection|array $orders;
  90.     public function __toString(): string
  91.     {
  92.        return (string)$this->name;
  93.     }
  94.     public function __construct()
  95.     {
  96.         $this->user = new User();
  97.     }
  98.     public function getId(): ?int
  99.     {
  100.         return $this->id;
  101.     }
  102.     public function getName(): ?string
  103.     {
  104.         return $this->name;
  105.     }
  106.     public function setName(string $name): self
  107.     {
  108.         $this->name $name;
  109.         return $this;
  110.     }
  111.     public function getImage(): ?string
  112.     {
  113.         return $this->image;
  114.     }
  115.     public function setImage(?string $image): self
  116.     {
  117.         $this->image $image;
  118.         return $this;
  119.     }
  120.     public function getCreatedAt(): ?\DateTimeImmutable
  121.     {
  122.         return $this->createdAt;
  123.     }
  124.     public function setCreatedAt(?\DateTimeImmutable $createdAt): self
  125.     {
  126.         $this->createdAt $createdAt;
  127.         return $this;
  128.     }
  129.     public function getEmail(): ?string
  130.     {
  131.         return $this->email;
  132.     }
  133.     public function setEmail(?string $email): self
  134.     {
  135.         $this->email $email;
  136.         return $this;
  137.     }
  138.     public function getUser(): ?User
  139.     {
  140.         return $this->user;
  141.     }
  142.     public function setUser(User $user): self
  143.     {
  144.         $this->user $user;
  145.         return $this;
  146.     }
  147.    
  148.     public function getDescription(): ?string
  149.     {
  150.         return $this->description;
  151.     }
  152.     public function setDescription(?string $description): self
  153.     {
  154.         $this->description $description;
  155.         return $this;
  156.     }
  157.     public function getIsValid(): ?bool
  158.     {
  159.         return $this->isValid;
  160.     }
  161.     public function setIsValid(?bool $isValid): self
  162.     {
  163.         $this->isValid $isValid;
  164.         return $this;
  165.     }
  166.     /**
  167.      * @return Collection|Product[]
  168.      */
  169.     public function getProducts(): Collection
  170.     {
  171.         return $this->products;
  172.     }
  173.     public function addProduct(Product $product): self
  174.     {
  175.         if (!$this->products->contains($product)) {
  176.             $this->products[] = $product;
  177.             $product->setVendor($this);
  178.         }
  179.         return $this;
  180.     }
  181.     public function removeProduct(Product $product): self
  182.     {
  183.         if ($this->products->removeElement($product)) {
  184.             // set the owning side to null (unless already changed)
  185.             if ($product->getVendor() === $this) {
  186.                 $product->setVendor(null);
  187.             }
  188.         }
  189.         return $this;
  190.     }
  191.     public function getFullName(): ?string
  192.     {
  193.         return $this->fullName;
  194.     }
  195.     public function setFullName(string $fullName): self
  196.     {
  197.         $this->fullName $fullName;
  198.         return $this;
  199.     }
  200.     public function getTel(): ?string
  201.     {
  202.         return $this->tel;
  203.     }
  204.     public function setTel(string $tel): self
  205.     {
  206.         $this->tel $tel;
  207.         return $this;
  208.     }
  209.     public function getAddress(): ?string
  210.     {
  211.         return $this->address;
  212.     }
  213.     public function setAddress(string $address): self
  214.     {
  215.         $this->address $address;
  216.         return $this;
  217.     }
  218.     public function getCity(): ?string
  219.     {
  220.         return $this->city;
  221.     }
  222.     public function setCity(string $city): self
  223.     {
  224.         $this->city $city;
  225.         return $this;
  226.     }
  227.     public function getICE(): ?string
  228.     {
  229.         return $this->ICE;
  230.     }
  231.     public function setICE(string $ICE): self
  232.     {
  233.         $this->ICE $ICE;
  234.         return $this;
  235.     }
  236.     public function getRC(): ?string
  237.     {
  238.         return $this->RC;
  239.     }
  240.     public function setRC(string $RC): self
  241.     {
  242.         $this->RC $RC;
  243.         return $this;
  244.     }
  245.     public function getSimulateUsername(): ?string
  246.     {
  247.         return $this->simulateUsername;
  248.     }
  249.     public function setSimulateUsername(string $simulateUsername): self
  250.     {
  251.         $this->simulateUsername $simulateUsername;
  252.         return $this;
  253.     }
  254.     public function getSimulatePassword(): ?string
  255.     {
  256.         return $this->simulatePassword;
  257.     }
  258.     public function setSimulatePassword(string $simulatePassword): self
  259.     {
  260.         $this->simulatePassword $simulatePassword;
  261.         return $this;
  262.     }
  263.     public function getCoverImage(): ?string
  264.     {
  265.         return $this->coverImage;
  266.     }
  267.     public function setCoverImage(?string $coverImage): self
  268.     {
  269.         $this->coverImage $coverImage;
  270.         return $this;
  271.     }
  272.     public function setImageRCFile(File $path null)
  273.     {
  274.         $this->imageRCFile $path;
  275.         // VERY IMPORTANT:
  276.         // It is required that at least one field changes if you are using Doctrine,
  277.         // otherwise the event listeners won't be called and the file is lost
  278.     }
  279.     public function getImageRCFile()
  280.     {
  281.         return $this->imageRCFile;
  282.     }
  283.     public function setImageIceFile(File $path null)
  284.     {
  285.         $this->imageIceFile $path;
  286.         // VERY IMPORTANT:
  287.         // It is required that at least one field changes if you are using Doctrine,
  288.         // otherwise the event listeners won't be called and the file is lost
  289.     }
  290.     public function getImageIceFile()
  291.     {
  292.         return $this->imageIceFile;
  293.     }
  294.     public function setImageIFFile(File $path null)
  295.     {
  296.         $this->imageIFFile $path;
  297.         // VERY IMPORTANT:
  298.         // It is required that at least one field changes if you are using Doctrine,
  299.         // otherwise the event listeners won't be called and the file is lost
  300.  
  301.     }
  302.     public function getImageIFFile()
  303.     {
  304.         return $this->imageIFFile;
  305.     }
  306.     public function getPathRCImage(): ?string
  307.     {
  308.         return $this->pathRCImage;
  309.     }
  310.     public function setPathRCImage(?string $pathRCImage): self
  311.     {
  312.         $this->pathRCImage $pathRCImage;
  313.         return $this;
  314.     }
  315.     public function getPathIceImage(): ?string
  316.     {
  317.         return $this->pathIceImage;
  318.     }
  319.     public function setPathIceImage(?string $pathIceImage): self
  320.     {
  321.         $this->pathIceImage $pathIceImage;
  322.         return $this;
  323.     }
  324.     public function getPathIFImage(): ?string
  325.     {
  326.         return $this->pathIFImage;
  327.     }
  328.     public function setPathIFImage(?string $pathIFImage): self
  329.     {
  330.         $this->pathIFImage $pathIFImage;
  331.         return $this;
  332.     }
  333.     public function getIdentifiantFiscale(): ?string
  334.     {
  335.         return $this->IdentifiantFiscale;
  336.     }
  337.     public function setIdentifiantFiscale(?string $IdentifiantFiscale): self
  338.     {
  339.         $this->IdentifiantFiscale $IdentifiantFiscale;
  340.         return $this;
  341.     }
  342.     /**
  343.      * @return Collection<int, ImportExcel>
  344.      */
  345.     public function getImportExcels(): Collection
  346.     {
  347.         return $this->importExcels;
  348.     }
  349.     public function addImportExcel(ImportExcel $importExcel): self
  350.     {
  351.         if (!$this->importExcels->contains($importExcel)) {
  352.             $this->importExcels[] = $importExcel;
  353.             $importExcel->setVendor($this);
  354.         }
  355.         return $this;
  356.     }
  357.     public function removeImportExcel(ImportExcel $importExcel): self
  358.     {
  359.         if ($this->importExcels->removeElement($importExcel)) {
  360.             // set the owning side to null (unless already changed)
  361.             if ($importExcel->getVendor() === $this) {
  362.                 $importExcel->setVendor(null);
  363.             }
  364.         }
  365.         return $this;
  366.     }
  367.     /**
  368.      * @return Collection<int, Customer>
  369.      */
  370.     public function getCustomers(): Collection
  371.     {
  372.         return $this->customers;
  373.     }
  374.     public function addCustomer(Customer $customer): self
  375.     {
  376.         if (!$this->customers->contains($customer)) {
  377.             $this->customers[] = $customer;
  378.             $customer->setVendor($this);
  379.         }
  380.         return $this;
  381.     }
  382.     public function removeCustomer(Customer $customer): self
  383.     {
  384.         if ($this->customers->removeElement($customer)) {
  385.             // set the owning side to null (unless already changed)
  386.             if ($customer->getVendor() === $this) {
  387.                 $customer->setVendor(null);
  388.             }
  389.         }
  390.         return $this;
  391.     }
  392.     /**
  393.      * @return Collection<int, Order>
  394.      */
  395.     public function getOrders(): Collection
  396.     {
  397.         return $this->orders;
  398.     }
  399.     public function addOrder(Order $order): self
  400.     {
  401.         if (!$this->orders->contains($order)) {
  402.             $this->orders[] = $order;
  403.             $order->setVendor($this);
  404.         }
  405.         return $this;
  406.     }
  407.     public function removeOrder(Order $order): self
  408.     {
  409.         if ($this->orders->removeElement($order)) {
  410.             // set the owning side to null (unless already changed)
  411.             if ($order->getVendor() === $this) {
  412.                 $order->setVendor(null);
  413.             }
  414.         }
  415.         return $this;
  416.     }
  417. }