<?php
namespace App\Entity;
use App\Repository\BuyInTurkeyRepository;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Entity(repositoryClass: BuyInTurkeyRepository::class)]
class BuyInTurkey extends BaseEntity
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column(type: 'integer')]
private $id;
#[ORM\Column(type: 'float')]
private $quantity;
#[ORM\Column(name: 'total_purchase_quantity', type: 'float', nullable: true)]
private $totalPurhcaseQuantity;
#[ORM\ManyToOne(targetEntity: Product::class, inversedBy: 'buyInTurkeys')]
private $product;
#[ORM\Column(name: 'buying_price', type: 'decimal', precision: 19, scale: 4, nullable: false)]
private $buyingPrice;
#[ORM\Column(name: 'transport_price', type: 'decimal', precision: 19, scale: 4, nullable: false)]
private $transportPrice;
#[ORM\Column(name: 'lashing', type: 'decimal', precision: 19, scale: 4, nullable: false)]
private $lashing;
#[ORM\Column(name: 'customs_price', type: 'decimal', precision: 19, scale: 4, nullable: false)]
private $customsPrice;
#[ORM\Column(name: 'price_fob', type: 'decimal', precision: 19, scale: 4, nullable: false)]
private $priceFob;
#[ORM\Column(name: 'profit_margin', type: 'decimal', precision: 19, scale: 4, nullable: false)]
private $profitMargin;
#[ORM\Column(name: 'invoice_number', type: 'string', nullable: true)]
private $invoiceNumber;
#[ORM\Column(name: 'total_cost_price', type: 'decimal', precision: 19, scale: 4, nullable: false)]
private $totalCostPrice;
#[ORM\Column(name: 'total_purchase_price', type: 'decimal', precision: 19, scale: 4, nullable: false)]
private $totalPuchasePrice;
#[ORM\Column(name: 'buying_company', type: 'string')]
private $buyingCompany;
#[ORM\Column(name: 'buying_date', type: 'date_immutable', nullable: false)]
private $buyingDate;
#[ORM\Column(name: 'is_transported', type: 'boolean', nullable: false)]
private $isTransported;
public function getId(): ?int
{
return $this->id;
}
public function getQuantity(): ?float
{
return $this->quantity;
}
public function setQuantity(float $quantity): self
{
$this->quantity = $quantity;
return $this;
}
public function getBuyingPrice(): ?float
{
return $this->buyingPrice;
}
public function setBuyingPrice(float $buyingPrice): self
{
$this->buyingPrice = $buyingPrice;
return $this;
}
public function getTransportPrice(): ?float
{
return $this->transportPrice;
}
public function setTransportPrice(float $transportPrice): self
{
$this->transportPrice = $transportPrice;
return $this;
}
public function getLashing(): ?float
{
return $this->lashing;
}
public function setLashing(float $lashing): self
{
$this->lashing = $lashing;
return $this;
}
public function getCustomsPrice(): ?float
{
return $this->customsPrice;
}
public function setCustomsPrice(float $customsPrice): self
{
$this->customsPrice = $customsPrice;
return $this;
}
public function getPriceFob(): ?float
{
return $this->priceFob;
}
public function setPriceFob(float $priceFob): self
{
$this->priceFob = $priceFob;
return $this;
}
public function getProfitMargin(): ?float
{
return $this->profitMargin;
}
public function setProfitMargin(float $profitMargin): self
{
$this->profitMargin = $profitMargin;
return $this;
}
public function getInvoiceNumber(): ?string
{
return $this->invoiceNumber;
}
public function setInvoiceNumber(?string $invoiceNumber): self
{
$this->invoiceNumber = $invoiceNumber;
return $this;
}
public function getTotalCostPrice(): ?float
{
return $this->totalCostPrice;
}
public function setTotalCostPrice(float $totalCostPrice): self
{
$this->totalCostPrice = $totalCostPrice;
return $this;
}
/**
* @return mixed
*/
public function getTotalPuchasePrice()
{
return $this->totalPuchasePrice;
}
/**
* @param mixed $totalPuchasePrice
*/
public function setTotalPuchasePrice($totalPuchasePrice): void
{
$this->totalPuchasePrice = $totalPuchasePrice;
}
public function getBuyingCompany(): ?string
{
return $this->buyingCompany;
}
public function setBuyingCompany(string $buyingCompany): self
{
$this->buyingCompany = $buyingCompany;
return $this;
}
public function getBuyingDate(): ?\DateTimeImmutable
{
return $this->buyingDate;
}
public function setBuyingDate(\DateTimeImmutable $buyingDate): self
{
$this->buyingDate = $buyingDate;
return $this;
}
public function isIsTransported(): ?bool
{
return $this->isTransported;
}
public function setIsTransported(bool $isTransported): self
{
$this->isTransported = $isTransported;
return $this;
}
public function getProduct(): ?Product
{
return $this->product;
}
public function setProduct(?Product $product): self
{
$this->product = $product;
return $this;
}
/**
* @return mixed
*/
public function getTotalPurhcaseQuantity()
{
return $this->totalPurhcaseQuantity;
}
/**
* @param mixed $totalPurhcaseQuantity
*/
public function setTotalPurhcaseQuantity($totalPurhcaseQuantity): void
{
$this->totalPurhcaseQuantity = $totalPurhcaseQuantity;
}
}