diff --git a/workflow/engine/src/BusinessModel/Task.php b/workflow/engine/src/BusinessModel/Task.php index 55cfd052b..be7eaf610 100644 --- a/workflow/engine/src/BusinessModel/Task.php +++ b/workflow/engine/src/BusinessModel/Task.php @@ -1859,15 +1859,14 @@ class Task * @var string $pro_uid. Uid for Process * @var string $tas_uid. Uid for Task * @var string $step_uid. Uid for Step - * @var string $step_uid_rel. Uid Step for relation - * @var string $type. Type relation + * @var string $step_pos. Position for Step * * @author Brayan Pereyra (Cochalo) * @copyright Colosa - Bolivia * * @return void */ - public function moveSteps($pro_uid, $tas_uid, $step_uid, $step_uid_rel, $type) { + public function moveSteps($pro_uid, $tas_uid, $step_uid, $step_pos) { $pro_uid = $this->validateProUid($pro_uid); $tas_uid = $this->validateActUid($tas_uid); @@ -1878,34 +1877,21 @@ class Task foreach ($aSteps as $dataStep) { if ($dataStep['step_uid'] == $step_uid) { $prStepPos = (int)$dataStep['step_position']; - } elseif ($dataStep['step_uid'] == $step_uid_rel) { - $seStepPos = (int)$dataStep['step_position']; } } + $seStepPos = $step_pos; //Principal Step is up if ($prStepPos < $seStepPos) { $modPos = 'UP'; - if ($type == 'DOWN') { - $newPos = $seStepPos; - $iniPos = $prStepPos+1; - $finPos = $seStepPos; - } else { - $newPos = $seStepPos-1; - $iniPos = $prStepPos+1; - $finPos = $seStepPos-1; - } + $newPos = $seStepPos; + $iniPos = $prStepPos+1; + $finPos = $seStepPos; } else { $modPos = 'DOWN'; - if ($type == 'UP') { - $newPos = $seStepPos; - $iniPos = $seStepPos; - $finPos = $prStepPos-1; - } else { - $newPos = $seStepPos-1; - $iniPos = $seStepPos-1; - $finPos = $prStepPos-1; - } + $newPos = $seStepPos; + $iniPos = $seStepPos; + $finPos = $prStepPos-1; } $range = range($iniPos, $finPos); diff --git a/workflow/engine/src/Services/Api/ProcessMaker/Project/Activity.php b/workflow/engine/src/Services/Api/ProcessMaker/Project/Activity.php index fcad391f7..3d2e9c3d2 100644 --- a/workflow/engine/src/Services/Api/ProcessMaker/Project/Activity.php +++ b/workflow/engine/src/Services/Api/ProcessMaker/Project/Activity.php @@ -151,8 +151,7 @@ class Activity extends Api * @param string $prj_uid {@min 1} {@max 32} * @param string $act_uid {@min 1} {@max 32} * @param string $step_uid {@min 1} {@max 32} - * @param string $step_uid_rel {@min 1} {@max 32} - * @param string $type_change {@choice UP,DOWN} + * @param string $step_pos * * @access public * @author Brayan Pereyra (Cochalo) @@ -160,13 +159,13 @@ class Activity extends Api * * @return void * - * @url PUT /:prj_uid/activity/:act_uid/step-move/:step_uid/:step_uid_rel/:type_change + * @url PUT /:prj_uid/activity/:act_uid/step-move/:step_uid/:step_pos */ - public function doPutStepsMoves ($prj_uid, $act_uid, $step_uid, $step_uid_rel, $type_change) + public function doPutStepsMoves ($prj_uid, $act_uid, $step_uid, $step_pos) { try { $task = new \BusinessModel\Task(); - $task->moveSteps($prj_uid, $act_uid, $step_uid, $step_uid_rel, $type_change); + $task->moveSteps($prj_uid, $act_uid, $step_uid, $step_pos); } catch (\Exception $e) { throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage())); }