<?php
namespace App\Entity\Idempiere\MaterialManagement;
use App\Entity\Idempiere\AdClient;
use App\Entity\Idempiere\AdOrg;
use App\Entity\Idempiere\MProduct;
use App\Entity\Idempiere\MWarehouse;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(readOnly=true)
* @ORM\Table(name="m_storagereservation")
*/
class Reservation { // QUITAR FINAL
/**
* @ORM\Id
* @ORM\ManyToOne(targetEntity=AdClient::class)
* @ORM\JoinColumn(name="ad_client_id", referencedColumnName="ad_client_id", nullable=false)
*/
private AdClient $client;
/**
* @ORM\Id
* @ORM\ManyToOne(targetEntity=AdOrg::class)
* @ORM\JoinColumn(name="ad_org_id", referencedColumnName="ad_org_id", nullable=false)
*/
private AdOrg $organization;
/**
* @ORM\Id
* @ORM\ManyToOne(targetEntity=MProduct::class, inversedBy="reservationList")
* @ORM\JoinColumn(name="m_product_id", referencedColumnName="m_product_id", nullable=false)
*/
private MProduct $product;
/**
* @ORM\Id
* @ORM\ManyToOne(targetEntity=MWarehouse::class, inversedBy="warehouseList")
* @ORM\JoinColumn(name="m_warehouse_id", referencedColumnName="m_warehouse_id", nullable=false)
*/
private MWarehouse $warehouse;
/** @ORM\Column(type="integer") */
private int $qty;
/** @ORM\Column(type="datetime", nullable=true) */
private $datelastinventory;
/** @ORM\Column(type="string", length=1) */
private string $isactive;
/** @ORM\Column(type="string", length=1) */
private string $issotrx;
/** @ORM\Column(type="string", length=40) */
private string $m_storagereservation_uu;
public function getId(): string { return $this->m_storagereservation_uu; }
public function getProduct(): MProduct { return $this->product; }
public function getWarehouse(): MWarehouse { return $this->warehouse; }
public function getOrganization(): AdOrg { return $this->organization; }
public function getQty(): int { return $this->qty; }
public function isActive(): bool { return $this->isactive === 'Y'; }
public function isIsSotrx(): bool { return $this->issotrx === 'Y'; }
public function getDateLastInventory(): ?\DateTimeInterface {
return $this->datelastinventory;
}
}