/** * @url GET /:prj_uid/activity/:act_uid/step/:step_uid * * @param string $step_uid {@min 32}{@max 32} * @param string $act_uid {@min 32}{@max 32} * @param string $prj_uid {@min 32}{@max 32} */ public function doGetActivityStep($step_uid, $act_uid, $prj_uid) { try { $step = new \ProcessMaker\BusinessModel\Step(); $step->setFormatFieldNameInUppercase(false); $step->setArrayParamException(array("stepUid" => "step_uid", "taskUid" => "act_uid", "processUid" => "prj_uid")); $response = $step->getStep($step_uid); return $response; } catch (\Exception $e) { throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()); } }
/** * Get all Steps of a Task * * @param string $taskUid Unique id of Task * * return array Return an array with all Steps of a Task */ public function getSteps($taskUid) { try { $arrayStep = array(); $step = new \ProcessMaker\BusinessModel\Step(); $step->setFormatFieldNameInUppercase($this->formatFieldNameInUppercase); $step->setArrayParamException($this->arrayParamException); //Verify data $this->throwExceptionIfNotExistsTask("", $taskUid, $this->arrayParamException["taskUid"]); //Get data $criteria = new \Criteria("workflow"); $criteria->add(\StepPeer::TAS_UID, $taskUid, \Criteria::EQUAL); $criteria->addAscendingOrderByColumn(\StepPeer::STEP_POSITION); $rsCriteria = \StepPeer::doSelectRS($criteria); $rsCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC); while ($rsCriteria->next()) { $row = $rsCriteria->getRow(); $arrayData = $step->getStep($row["STEP_UID"]); if (count($arrayData) > 0) { $arrayStep[] = $arrayData; } } //Return return $arrayStep; } catch (\Exception $e) { throw $e; } }