src/Entity/GiftProduct.php line 12

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\GiftProductRepository;
  4. use Doctrine\DBAL\Types\Types;
  5. use Doctrine\ORM\Mapping as ORM;
  6. #[ORM\Entity(repositoryClassGiftProductRepository::class)]
  7. #[ORM\Table(name'gift_product')]
  8. #[ORM\HasLifecycleCallbacks]
  9. class GiftProduct extends BaseEntity
  10. {
  11.     #[ORM\Id]
  12.     #[ORM\GeneratedValue]
  13.     #[ORM\Column(type'integer')]
  14.     private ?int $id null;
  15.     #[ORM\ManyToOne(targetEntitySales::class, inversedBy'giftProducts')]
  16.     #[ORM\JoinColumn(nullablefalseonDelete'CASCADE')]
  17.     private ?Sales $sale null;
  18.     #[ORM\ManyToOne(targetEntitySalesReturn::class)]
  19.     #[ORM\JoinColumn(nullabletrueonDelete'SET NULL')]
  20.     private ?SalesReturn $relatedReturn null;
  21.     #[ORM\ManyToOne(targetEntityProduct::class)]
  22.     #[ORM\JoinColumn(nullablefalseonDelete'CASCADE')]
  23.     private ?Product $product null;
  24.     #[ORM\Column(typeTypes::DECIMALprecision15scale4)]
  25.     private string $quantity;
  26.     #[ORM\Column(typeTypes::DECIMALprecision15scale4)]
  27.     private string $baseQuantity;
  28.     #[ORM\Column(typeTypes::TEXT)]
  29.     private string $reason;
  30.     #[ORM\Column(typeTypes::TEXTnullabletrue)]
  31.     private ?string $notes null;
  32.     #[ORM\ManyToOne(targetEntityUser::class)]
  33.     #[ORM\JoinColumn(nullabletrueonDelete'SET NULL')]
  34.     private ?User $givenBy null;
  35.     #[ORM\Column(typeTypes::DATETIME_IMMUTABLE)]
  36.     private \DateTimeImmutable $givenAt;
  37.     #[ORM\Column(typeTypes::BOOLEANoptions: ['default' => false])]
  38.     private bool $stockDeducted false;
  39.     public function __construct()
  40.     {
  41.         $this->givenAt = new \DateTimeImmutable('now');
  42.     }
  43.     public function getId(): ?int
  44.     {
  45.         return $this->id;
  46.     }
  47.     public function getSale(): ?Sales
  48.     {
  49.         return $this->sale;
  50.     }
  51.     public function setSale(?Sales $sale): self
  52.     {
  53.         $this->sale $sale;
  54.         return $this;
  55.     }
  56.     public function getRelatedReturn(): ?SalesReturn
  57.     {
  58.         return $this->relatedReturn;
  59.     }
  60.     public function setRelatedReturn(?SalesReturn $relatedReturn): self
  61.     {
  62.         $this->relatedReturn $relatedReturn;
  63.         return $this;
  64.     }
  65.     public function getProduct(): ?Product
  66.     {
  67.         return $this->product;
  68.     }
  69.     public function setProduct(Product $product): self
  70.     {
  71.         $this->product $product;
  72.         return $this;
  73.     }
  74.     public function getQuantity(): float
  75.     {
  76.         return (float) $this->quantity;
  77.     }
  78.     public function setQuantity(float $quantity): self
  79.     {
  80.         $this->quantity = (string) $quantity;
  81.         return $this;
  82.     }
  83.     public function getBaseQuantity(): float
  84.     {
  85.         return (float) $this->baseQuantity;
  86.     }
  87.     public function setBaseQuantity(float $baseQuantity): self
  88.     {
  89.         $this->baseQuantity = (string) $baseQuantity;
  90.         return $this;
  91.     }
  92.     public function getReason(): string
  93.     {
  94.         return $this->reason;
  95.     }
  96.     public function setReason(string $reason): self
  97.     {
  98.         $this->reason $reason;
  99.         return $this;
  100.     }
  101.     public function getNotes(): ?string
  102.     {
  103.         return $this->notes;
  104.     }
  105.     public function setNotes(?string $notes): self
  106.     {
  107.         $this->notes $notes;
  108.         return $this;
  109.     }
  110.     public function getGivenBy(): ?User
  111.     {
  112.         return $this->givenBy;
  113.     }
  114.     public function setGivenBy(?User $givenBy): self
  115.     {
  116.         $this->givenBy $givenBy;
  117.         return $this;
  118.     }
  119.     public function getGivenAt(): \DateTimeImmutable
  120.     {
  121.         return $this->givenAt;
  122.     }
  123.     public function setGivenAt(\DateTimeImmutable $givenAt): self
  124.     {
  125.         $this->givenAt $givenAt;
  126.         return $this;
  127.     }
  128.     public function isStockDeducted(): bool
  129.     {
  130.         return $this->stockDeducted;
  131.     }
  132.     public function setStockDeducted(bool $stockDeducted): self
  133.     {
  134.         $this->stockDeducted $stockDeducted;
  135.         return $this;
  136.     }
  137. }