vacationRequest; if ($this->configRetriever->needsTechnicalApproval($vacationRequest->type)) { $this->stateManager->waitForTechnical($vacationRequest); return; } if ($this->configRetriever->needsAdministrativeApproval($vacationRequest->type)) { $this->stateManager->waitForAdministrative($vacationRequest); return; } $this->stateManager->approve($vacationRequest); } }