CoolCMS API

StockBatch extends StockBatch
in package

Live `FIFO`/`FEFO` batch layers per item x warehouse x batch. Whole entity is server-managed (written by services via raw DBAL) — serves reads (batches grid, stock item tab).

Attributes
#[Entity]
#[Table]
$name: 'cms_mod_store_stock_batches'
#[TableAlias]
'stockBatch'

Table of Contents

Properties

$batchNumber  : string|null
$expirationDate  : DateTime|null
$id  : int|null
$insertDatetime  : DateTime
$movementId  : int|null
$quantity  : string
$receivedDatetime  : DateTime
$stockItem  : StockItem|null
$stockItemId  : int|null
$unitPriceBase  : string|null
$updateDatetime  : DateTime|null
$warehouse  : Warehouse|null
$warehouseId  : int|null

Methods

__construct()  : mixed
callInitMethods()  : void
Calls `init{TraitName}()` for every used trait that defines such a method.
getAllTraits()  : array<string, string>
Returns all traits the class uses, including those used by parent classes and nested traits.
getBatchNumber()  : string|null
getExpirationDate()  : DateTime|null
getId()  : int|null
getInsertDatetime()  : DateTime
getMovementId()  : int|null
getQuantity()  : string
getReceivedDatetime()  : DateTime
getStockItem()  : StockItem|null
getStockItemId()  : int|null
getUnitPriceBase()  : string|null
getUpdateDatetime()  : DateTime|null
getWarehouse()  : Warehouse|null
getWarehouseId()  : int|null
isPersisted()  : bool
setBatchNumber()  : $this
setExpirationDate()  : $this
setId()  : $this
setInsertDatetime()  : $this
setMovementId()  : $this
setQuantity()  : $this
setReceivedDatetime()  : $this
setStockItem()  : self
setStockItemId()  : $this
setUnitPriceBase()  : $this
setUpdateDatetime()  : $this
setWarehouse()  : self
setWarehouseId()  : $this
getTraitsRecursive()  : array<string, string>
Walks the trait list recursively and collects nested traits too.

Properties

$batchNumber

protected string|null $batchNumber = null
Attributes
#[Column]
$name: 'batch_number'
$type: 'string'
$length: 60
$nullable: true
#[ExternalReadonly]

$expirationDate

protected DateTime|null $expirationDate = null
Attributes
#[Column]
$name: 'expiration_date'
$type: 'date'
$nullable: true
#[ExternalReadonly]

$id

protected int|null $id = null
Attributes
#[Column]
$name: 'stock_batch_id'
$type: 'bigint'
$options: ['unsigned' => true]
#[GeneratedValue]
#[Id]

$insertDatetime

protected DateTime $insertDatetime = new DateTime()
Attributes
#[Column]
$name: 'insert_datetime'
$type: 'datetime'
#[ExternalReadonly]

$movementId

protected int|null $movementId = null
Attributes
#[Column]
$name: 'cms_mod_store_stock_movements_stock_movement_id'
$type: 'bigint'
$nullable: true
$options: ['unsigned' => true]
#[ExternalReadonly]

$quantity

protected string $quantity = '0.000'
Attributes
#[Column]
$name: 'quantity'
$type: 'decimal'
$precision: 10
$scale: 3
#[ExternalReadonly]

$receivedDatetime

protected DateTime $receivedDatetime = new DateTime()
Attributes
#[Column]
$name: 'received_datetime'
$type: 'datetime'
#[ExternalReadonly]

$stockItem

protected StockItem|null $stockItem = null
Attributes
#[EntityOf]
\App\UI\Admin\Store\Models\Entities\StockItem::class
#[JoinColumn]
$name: 'cms_mod_store_stock_items_stock_item_id'
$referencedColumnName: 'stock_item_id'
$onDelete: 'CASCADE'
#[ManyToOne]
$targetEntity: \App\UI\Admin\Store\Models\Entities\StockItem::class

$stockItemId

protected int|null $stockItemId = null
Attributes
#[Column]
$name: 'cms_mod_store_stock_items_stock_item_id'
$type: 'integer'
$insertable: false
$updatable: false
$nullable: true
$options: ['unsigned' => true]
#[ExternalReadonly]

$unitPriceBase

protected string|null $unitPriceBase = null
Attributes
#[Column]
$name: 'unit_price_base'
$type: 'decimal'
$precision: 10
$scale: 3
$nullable: true
#[ExternalReadonly]

$updateDatetime

protected DateTime|null $updateDatetime = null
Attributes
#[Column]
$name: 'update_datetime'
$type: 'datetime'
$nullable: true
#[ExternalReadonly]

$warehouse

protected Warehouse|null $warehouse = null
Attributes
#[EntityOf]
\App\UI\Admin\Store\Models\Entities\Warehouse::class
#[JoinColumn]
$name: 'cms_mod_store_warehouses_warehouse_id'
$referencedColumnName: 'warehouse_id'
$onDelete: 'CASCADE'
#[ManyToOne]
$targetEntity: \App\UI\Admin\Store\Models\Entities\Warehouse::class

$warehouseId

protected int|null $warehouseId = null
Attributes
#[Column]
$name: 'cms_mod_store_warehouses_warehouse_id'
$type: 'integer'
$insertable: false
$updatable: false
$nullable: true
$options: ['unsigned' => true]
#[ExternalReadonly]

Methods

__construct()

public __construct([int|null $id = null ][, int|null $stockItemId = null ][, int|null $warehouseId = null ][, string|null $batchNumber = null ][, DateTime|null $expirationDate = null ][, string $quantity = '0.000' ][, string|null $unitPriceBase = null ][, DateTime $receivedDatetime = new DateTime() ][, int|null $movementId = null ][, DateTime $insertDatetime = new DateTime() ][, DateTime|null $updateDatetime = null ]) : mixed
Parameters
$id : int|null = null
$stockItemId : int|null = null
$warehouseId : int|null = null
$batchNumber : string|null = null
$expirationDate : DateTime|null = null
$quantity : string = '0.000'
$unitPriceBase : string|null = null
$receivedDatetime : DateTime = new DateTime()
$movementId : int|null = null
$insertDatetime : DateTime = new DateTime()
$updateDatetime : DateTime|null = null

callInitMethods()

Calls `init{TraitName}()` for every used trait that defines such a method.

public callInitMethods() : void

getAllTraits()

Returns all traits the class uses, including those used by parent classes and nested traits.

public getAllTraits() : array<string, string>
Return values
array<string, string>

getBatchNumber()

public getBatchNumber() : string|null
Return values
string|null

getExpirationDate()

public getExpirationDate() : DateTime|null
Return values
DateTime|null

getInsertDatetime()

public getInsertDatetime() : DateTime
Return values
DateTime

getMovementId()

public getMovementId() : int|null
Return values
int|null

getQuantity()

public getQuantity() : string
Return values
string

getReceivedDatetime()

public getReceivedDatetime() : DateTime
Return values
DateTime

getStockItemId()

public getStockItemId() : int|null
Return values
int|null

getUnitPriceBase()

public getUnitPriceBase() : string|null
Return values
string|null

getUpdateDatetime()

public getUpdateDatetime() : DateTime|null
Return values
DateTime|null

getWarehouseId()

public getWarehouseId() : int|null
Return values
int|null

setBatchNumber()

public setBatchNumber(string|null $batchNumber) : $this
Parameters
$batchNumber : string|null
Return values
$this

setExpirationDate()

public setExpirationDate(DateTime|null $expirationDate) : $this
Parameters
$expirationDate : DateTime|null
Return values
$this

setId()

public setId(int|null $id) : $this
Parameters
$id : int|null
Return values
$this

setInsertDatetime()

public setInsertDatetime(DateTime $insertDatetime) : $this
Parameters
$insertDatetime : DateTime
Return values
$this

setMovementId()

public setMovementId(int|null $movementId) : $this
Parameters
$movementId : int|null
Return values
$this

setQuantity()

public setQuantity(string $quantity) : $this
Parameters
$quantity : string
Return values
$this

setReceivedDatetime()

public setReceivedDatetime(DateTime $receivedDatetime) : $this
Parameters
$receivedDatetime : DateTime
Return values
$this

setStockItemId()

public setStockItemId(int|null $stockItemId) : $this
Parameters
$stockItemId : int|null
Return values
$this

setUnitPriceBase()

public setUnitPriceBase(string|null $unitPriceBase) : $this
Parameters
$unitPriceBase : string|null
Return values
$this

setUpdateDatetime()

public setUpdateDatetime(DateTime|null $updateDatetime) : $this
Parameters
$updateDatetime : DateTime|null
Return values
$this

setWarehouseId()

public setWarehouseId(int|null $warehouseId) : $this
Parameters
$warehouseId : int|null
Return values
$this

getTraitsRecursive()

Walks the trait list recursively and collects nested traits too.

private static getTraitsRecursive(array<string, string> $traits) : array<string, string>
Parameters
$traits : array<string, string>
Return values
array<string, string>
On this page

Search results