Enums & Constants
Complete reference for all enums and constants used throughout the Inventory Service.
Overview
This section documents all enums and constants used in the Inventory Service. These provide type safety and consistent values across the system.
ServiceMethodsEnum
Maps service method names to their corresponding service implementations.
| Enum Case | Service Class | Description |
|---|---|---|
| CREATE_WAREHOUSE | CreateWarehouse | Creates a new warehouse |
| CREATE_LOCATION | CreateLocation | Creates a new storage location |
| GET_WAREHOUSES | GetWarehouses | Retrieves warehouse information |
| MOVE_STORAGE_UNIT | StockMovementDecisionTree | Executes storage unit movements |
| GET_STORAGE_STOCK | GetStockService | Retrieves stock information |
| GET_STORAGE_SNAPSHOTS | GetSnapshots | Retrieves storage snapshots |
| CREATE_STORAGE_REGISTER_ENTRY | MakeStorageRegisterEntry | Creates storage register entries |
| GET_STORAGE_REGISTER_ENTRIES | GetStorageRegisterEntries | Retrieves storage register entries |
| SET_PALLET_REGISTER_QUANTITY | SetPalletQuantity | Sets pallet quantities |
| GET_PALLET_REGISTER_ENTRIES | GetPalletRecords | Retrieves pallet register records |
| GET_RESERVED_STOCK_BY_PRODUCT | GetReservedStockByProductService | Gets reserved stock by product |
| GET_RESERVED_STOCK_BY_PARCEL | GetReservedStockByParcelService | Gets reserved stock by parcel |
ProcessTypeEnum
Defines the types of inventory processes that can be executed.
| Value | Description | Allowed Origins | Allowed Destinations |
|---|---|---|---|
| BATCH_PROCESS | Incoming inventory from external sources | EXTERNAL | ACTIVE_STORAGE, SCRAP, PUFFER |
| PICKING_PROCESS | Moving items to picking areas | RESERVED | PICKING |
| PACKING_PROCESS | Moving items to packing areas | PICKING | PACKING |
| PARCEL_PROCESS | Reserving items for specific parcels | ACTIVE_STORAGE, PUFFER | RESERVED |
| RETURN_PROCESS | Processing returned items | EXTERNAL | ACTIVE_STORAGE, SCRAP, PUFFER |
| SCRAP_PROCESS | Moving items to scrap | ACTIVE_STORAGE, PUFFER, EXTERNAL, PICKING, PACKING | SCRAP |
| SHIP_ORDER_PROCESS | Shipping items externally | PACKING | EXTERNAL |
| STOCK_CORRECTION_PROCESS | Inventory adjustments | ACTIVE_STORAGE, PUFFER, EXTERNAL | ACTIVE_STORAGE, PUFFER, EXTERNAL |
| DELETE_ORDER_PROCESS | Canceling reservations | RESERVED | ACTIVE_STORAGE, SCRAP, PUFFER |
| INTERNAL_MOVE_PROCESS | Internal warehouse movements | ACTIVE_STORAGE, PUFFER, RESERVED, SCRAP | ACTIVE_STORAGE, PUFFER, RESERVED, SCRAP |
StoragePlaceEnum
Defines the different storage locations within the warehouse system.
| Value | Storage Class | Supports Parcel ID | Description |
|---|---|---|---|
| ACTIVE_STORAGE | ActiveStorageUnit | No | Main storage area for available inventory |
| RESERVED | ReservedStorageUnit | Yes | Items reserved for specific orders/parcels |
| PUFFER | PufferStorageUnit | No | Buffer storage for temporary holding |
| PICKING | PickingUnit | Yes | Items being picked for orders |
| PACKING | PackingUnit | Yes | Items being packed for shipment |
| SCRAP | ScrapStorageUnit | No | Damaged or unusable items |
| EXTERNAL | N/A | No | External to the warehouse system |
ParcelMethodEnum
Defines methods for processing parcels during reservation.
| Value | Description |
|---|---|
| EXACT_LOT_NUMBERS_METHOD | Reserve specific lot numbers with exact quantities |
| FIRST_IN_FIRST_OUT_METHOD | Reserve using FIFO logic based on lot dates |
| FIRST_EXPIRY_FIRST_OUT_METHOD | Reserve items with nearest expiry dates first |
ParcelStatusEnum
Status values for parcels throughout their lifecycle.
| Value | Description |
|---|---|
| SENT_TO_PROCESSING | Parcel sent for processing |
| PICKING_IN_PROGRESS | Items are being picked |
| PACKING_IN_PROGRESS | Items are being packed |
| PACKED | Parcel is packed and ready to ship |
| DELETED | Parcel has been canceled/deleted |
| DATA_ERROR | Error in parcel data |
ParcelEventEnum
Events that can occur during parcel processing.
| Value | Description |
|---|---|
| PARCEL_CREATED | New parcel created |
| PARCEL_RESERVED | Items reserved for parcel |
| PARCEL_PICKED | Items picked for parcel |
| PARCEL_PACKED | Parcel packed and ready |
| PARCEL_SHIPPED | Parcel shipped externally |
| PARCEL_DELETED | Parcel canceled/deleted |
WarehouseTypeEnum
Types of warehouses supported by the system.
| Value | Description |
|---|---|
| INTERNAL | Internal warehouse managed by the organization |
| EXTERNAL | External warehouse managed by third parties |
| DISTRIBUTION | Distribution center for order fulfillment |
ResponseStatusEnum
Standard response status values for API responses.
| Value | Description |
|---|---|
| SUCCESS | Operation completed successfully |
| ERROR | Operation failed with an error |
| WARNING | Operation completed with warnings |
StockMovementStepsEnum
Defines the decision tree steps for stock movement processing.
Step Categories
- Decision Tree Flow: START_DECISION_TREE, END_DECISION_TREE
- Process Validation: CHECK_PROCESS_TYPE, CHECK_WAREHOUSE_INTEGRITY
- Parcel Processing: Various parcel-specific validation steps
- Simple Processing: Basic validation for standard operations
- Routing: Steps that determine the next action in the flow
Enum Usage
Static Methods
Many enums provide static helper methods:
// Get enum by string value
$processType = ProcessTypeEnum::getProcessEnum('BATCH_PROCESS');
// Get storage place by string
$storagePlace = StoragePlaceEnum::getEnumByString('ACTIVE_STORAGE');
// Get parcel method by string
$parcelMethod = ParcelMethodEnum::getEnumByString('EXACT_LOT_NUMBERS_METHOD');
Business Logic Methods
Enums include business logic for validation:
// Get allowed destinations for a process type
$destinations = ProcessTypeEnum::BATCH_PROCESS->getAllowedDestinations();
// Get allowed origins for a process type
$origins = ProcessTypeEnum::BATCH_PROCESS->getAllowedOrigins();
// Check if storage place supports parcel ID
$supportsParcel = StoragePlaceEnum::RESERVED->supportsParcelId(); // true