- Added `selfserve_lane` class to handle self-serve lane operations. - Implemented commands (START, STOP, RESET) and states (IDLE, IN_WASH, FAULT, etc.) for lane lifecycle. - Introduced traits for managing lane status, mode, state, caching, and port control. - Added enums for cohesive type definitions (`selfserve_lane_command`, `selfserve_lane_status`, `selfserve_lane_state`, etc.). - Configured `/modules/self-serve/lane/status` route to expose lane state and status via API. - Linked self-serve configuration via `selfserve_c` and `selfserve_enabled_c` for module toggling. - Integrated lane caching logic with Redis for performance improvements. - Updated `index.php` to include the self-serve module.
20 lines
453 B
PHP
20 lines
453 B
PHP
<?php
|
|
|
|
namespace modules\selfserve\helpers;
|
|
|
|
enum selfserve_lane_status
|
|
{
|
|
|
|
case OCCUPIED; // the lane is occupied
|
|
case FAULT; // the lane is in a fault state
|
|
case AVAILABLE; // lane is available
|
|
case MAINTENANCE; // lane is under maintenance
|
|
case CLOSED; // the lane is closed
|
|
case RESERVED; // the lane is reserved
|
|
|
|
public function equals(selfserve_lane_status $status): bool
|
|
{
|
|
return $this === $status;
|
|
}
|
|
}
|