<?php
namespace App\Entity\System;
use Doctrine\ORM\Mapping as ORM;
/**
* ProductDate
*
* @ORM\Table(name="ps_product_date",
* uniqueConstraints={
*
* @ORM\UniqueConstraint(name="uk_product_product_attribute", columns={"id_product", "id_product_attribute"})
* },
* indexes={
*
* @ORM\Index(name="ps_product_date_date_api_publication_index", columns={"date_api_publication"})
* }
* )
*
* @ORM\Entity(repositoryClass="App\Repository\System\ProductDateRepository")
*/
class ProductDate
{
/**
* @var int
*
* @ORM\Id
*
* @ORM\GeneratedValue(strategy="AUTO")
*
* @ORM\Column(type="integer")
*/
private $id;
/**
* @var Product
*
* @ORM\ManyToOne(targetEntity="App\Entity\System\Product", inversedBy="productDates")
*
* @ORM\JoinColumn(name="id_product", referencedColumnName="id_product", nullable=false)
*/
private $product;
/**
* @var ProductAttribute
*
* @ORM\OneToOne (targetEntity="App\Entity\System\ProductAttribute", inversedBy="productDate")
*
* @ORM\JoinColumn(name="id_product_attribute", referencedColumnName="id_product_attribute", nullable=true)
*/
private $productAttribute;
/**
* @var \DateTime|null
*
* @ORM\Column(name="date_upd", type="datetime", nullable=true)
*/
private $dateUpd;
/**
* @var \DateTime|null
*
* @ORM\Column(name="date_description", type="datetime", nullable=true)
*/
private $dateDescription;
/**
* @var \DateTime|null
*
* @ORM\Column(name="date_stock", type="datetime", nullable=true)
*/
private $dateStock;
/**
* @var \DateTime|null
*
* @ORM\Column(name="date_images", type="datetime", nullable=true)
*/
private $dateImages;
/**
* @var \DateTime|null
*
* @ORM\Column(name="date_api_publication", type="datetime", nullable=true)
*/
private $dateApiPublication;
/**
* @deprecated
*
* @var \DateTime|null
*
* @ORM\Column(type="datetime", nullable=true)
*/
private $dateNewStock;
/**
* @deprecated
*
* @var \DateTime|null
*
* @ORM\Column(type="datetime", nullable=true)
*/
private $dateNext;
/**
* @deprecated
*
* @var \DateTime|null
*
* @ORM\Column(type="datetime", nullable=true)
*/
private $dateProperties;
/**
* @deprecated
*
* @var \DateTime|null
*
* @ORM\Column(type="datetime", nullable=true)
*/
private $dateCategories;
public function getProduct(): Product
{
return $this->product;
}
/**
* @param Product $product
*
* @return ProductDate
*/
public function setProduct(Product $product): ProductDate
{
$this->product = $product;
return $this;
}
/**
* @return ProductAttribute
*/
public function getProductAttribute(): ProductAttribute
{
return $this->productAttribute;
}
/**
* @param ProductAttribute $productAttribute
*
* @return ProductDate
*/
public function setProductAttribute(ProductAttribute $productAttribute): ProductDate
{
$this->productAttribute = $productAttribute;
return $this;
}
/**
* @return \DateTime|null
*/
public function getDateUpd(): ?\DateTime
{
return $this->dateUpd;
}
/**
* @param \DateTime|null $dateUpd
*
* @return ProductDate
*/
public function setDateUpd(?\DateTime $dateUpd): ProductDate
{
$this->dateUpd = $dateUpd;
return $this;
}
/**
* @return \DateTime|null
*/
public function getDateDescription(): ?\DateTime
{
return $this->dateDescription;
}
/**
* @param \DateTime|null $dateDescription
*
* @return ProductDate
*/
public function setDateDescription(?\DateTime $dateDescription): ProductDate
{
$this->dateDescription = $dateDescription;
return $this;
}
public function getDateStock(): ?\DateTime
{
return $this->dateStock;
}
public function setDateStock(?\DateTime $dateStock): ProductDate
{
$this->dateStock = $dateStock;
return $this;
}
public function getDateImages(): ?\DateTime
{
return $this->dateImages;
}
public function setDateImages(?\DateTime $dateImages): ProductDate
{
$this->dateImages = $dateImages;
return $this;
}
public function getDateApiPublication(): ?\DateTime
{
return $this->dateApiPublication;
}
public function setDateApiPublication(?\DateTime $dateApiPublication): ProductDate
{
$this->dateApiPublication = $dateApiPublication;
return $this;
}
public function getDateNewStock(): ?\DateTime
{
return $this->dateNewStock;
}
public function setDateNewStock(?\DateTime $dateNewStock): ProductDate
{
$this->dateNewStock = $dateNewStock;
return $this;
}
public function getDateNext(): ?\DateTime
{
return $this->dateNext;
}
public function setDateNext(?\DateTime $dateNext): ProductDate
{
$this->dateNext = $dateNext;
return $this;
}
public function getDateProperties(): ?\DateTime
{
return $this->dateProperties;
}
public function setDateProperties(?\DateTime $dateProperties): ProductDate
{
$this->dateProperties = $dateProperties;
return $this;
}
public function getId(): int
{
return $this->id;
}
public function setId(int $id): ProductDate
{
$this->id = $id;
return $this;
}
public function getDateCategories(): ?\DateTime
{
return $this->dateCategories;
}
public function setDateCategories(?\DateTime $dateCategories): ProductDate
{
$this->dateCategories = $dateCategories;
return $this;
}
}