Пример #1
0
 /**
  * Check if the current user can reach the given Step
  * @param ModelInterface $model
  * @param Step $step
  * @return boolean
  */
 protected function canReachStep(ModelInterface $model, Step $step)
 {
     $roles = $step->getRoles();
     return !(!empty($roles) && !$this->authorizationChecker->isGranted($roles, $model->getWorkflowObject()));
 }
Пример #2
0
 /**
  * Create a new model state.
  *
  * @param  ModelInterface                                 $model
  * @param  string                                         $processName
  * @param  string                                         $stepName
  * @param  ModelState                                     $previous
  * @return \Vas24x7\WorkflowBundle\Entity\ModelState
  */
 protected function createModelState(ModelInterface $model, $processName, $stepName, $previous = null)
 {
     $modelState = new ModelState();
     $modelState->setWorkflowIdentifier($model->getWorkflowIdentifier());
     $modelState->setProcessName($processName);
     $modelState->setStepName($stepName);
     $modelState->setData($model->getWorkflowData());
     $modelState->setCreatedBy($this->tokenStorage->getToken()->getUsername());
     if ($previous instanceof ModelState) {
         $modelState->setPrevious($previous);
     }
     return $modelState;
 }