CoolCMS API

StockReservation extends StockReservation
in package

Reservation ledger — rows are never deleted, status changes keep the audit trail and idempotence per source ref. Written by the reservation service.

Attributes
#[Entity]
#[Table]
$name: 'cms_mod_store_stock_reservations'
#[TableAlias]
'stockReservation'

Table of Contents

Properties

$expiresDatetime  : DateTime|null
$id  : int|null
$insertDatetime  : DateTime
$note  : string|null
$quantity  : string
$sourceId  : int
$sourceModule  : int
$sourceType  : string
$status  : int
$stockItem  : StockItem|null
$stockItemId  : int|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.
getExpiresDatetime()  : DateTime|null
getId()  : int|null
getInsertDatetime()  : DateTime
getNote()  : string|null
getQuantity()  : string
getSourceId()  : int
getSourceModule()  : int
getSourceType()  : string
getStatus()  : int
getStockItem()  : StockItem|null
getStockItemId()  : int|null
getUpdateDatetime()  : DateTime|null
getWarehouse()  : Warehouse|null
getWarehouseId()  : int|null
isPersisted()  : bool
setExpiresDatetime()  : $this
setId()  : $this
setInsertDatetime()  : $this
setNote()  : $this
setQuantity()  : $this
setSourceId()  : $this
setSourceModule()  : $this
setSourceType()  : $this
setStatus()  : $this
setStockItem()  : self
setStockItemId()  : $this
setUpdateDatetime()  : $this
setWarehouse()  : self
setWarehouseId()  : $this
getTraitsRecursive()  : array<string, string>
Walks the trait list recursively and collects nested traits too.

Properties

$expiresDatetime

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

$id

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

$note

protected string|null $note = null
Attributes
#[Column]
$name: 'note'
$type: 'string'
$length: 255
$nullable: true

$quantity

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

$sourceId

protected int $sourceId = 0
Attributes
#[Column]
$name: 'source_id'
$type: 'integer'
$options: ['unsigned' => true]

$sourceModule

protected int $sourceModule = 0
Attributes
#[Column]
$name: 'source_module'
$type: 'integer'
$options: ['unsigned' => true]

$sourceType

protected string $sourceType = ''
Attributes
#[Column]
$name: 'source_type'
$type: 'string'
$length: 30

$status

protected int $status = StockReservationStatus::ACTIVE
Attributes
#[Column]
$name: 'status'
$type: 'integer'
$options: ['unsigned' => true]
#[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]

$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]

Methods

__construct()

public __construct([int|null $id = null ][, int|null $stockItemId = null ][, int|null $warehouseId = null ][, string $quantity = '0.000' ][, int $status = StockReservationStatus::ACTIVE ][, int $sourceModule = 0 ][, string $sourceType = '' ][, int $sourceId = 0 ][, DateTime|null $expiresDatetime = null ][, string|null $note = null ][, DateTime $insertDatetime = new DateTime() ][, DateTime|null $updateDatetime = null ]) : mixed
Parameters
$id : int|null = null
$stockItemId : int|null = null
$warehouseId : int|null = null
$quantity : string = '0.000'
$status : int = StockReservationStatus::ACTIVE
$sourceModule : int = 0
$sourceType : string = ''
$sourceId : int = 0
$expiresDatetime : DateTime|null = null
$note : string|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>

getExpiresDatetime()

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

getInsertDatetime()

public getInsertDatetime() : DateTime
Return values
DateTime

getStockItemId()

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

getUpdateDatetime()

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

getWarehouseId()

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

setExpiresDatetime()

public setExpiresDatetime(DateTime|null $expiresDatetime) : $this
Parameters
$expiresDatetime : 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

setNote()

public setNote(string|null $note) : $this
Parameters
$note : string|null
Return values
$this

setQuantity()

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

setSourceId()

public setSourceId(int $sourceId) : $this
Parameters
$sourceId : int
Return values
$this

setSourceModule()

public setSourceModule(int $sourceModule) : $this
Parameters
$sourceModule : int
Return values
$this

setSourceType()

public setSourceType(string $sourceType) : $this
Parameters
$sourceType : string
Return values
$this

setStatus()

public setStatus(int $status) : $this
Parameters
$status : int
Return values
$this

setStockItemId()

public setStockItemId(int|null $stockItemId) : $this
Parameters
$stockItemId : int|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