PM 1459 "Script Task" SOLVED

This commit is contained in:
Luis Fernando Saisa Lopez
2015-06-29 17:19:59 -04:00
parent d60b3a265c
commit e9f33757a9
3 changed files with 21 additions and 13 deletions

View File

@@ -745,18 +745,12 @@ class Derivation
$taskNextDel = \TaskPeer::retrieveByPK($nextDel["TAS_UID"]); $taskNextDel = \TaskPeer::retrieveByPK($nextDel["TAS_UID"]);
if (!is_null($taskNextDel) && $taskNextDel->getTasType() == "SCRIPT-TASK") {
if (!isset($nextDel["USR_UID"])) {
$nextDel["USR_UID"] = "";
}
}
$iNewDelIndex = $this->doDerivation( $currentDelegation, $nextDel, $appFields, $aSP ); $iNewDelIndex = $this->doDerivation( $currentDelegation, $nextDel, $appFields, $aSP );
//Execute Script-Task //Execute Script-Task
$scriptTask = new \ProcessMaker\BusinessModel\ScriptTask(); $scriptTask = new \ProcessMaker\BusinessModel\ScriptTask();
$appFields = $scriptTask->execScriptByActivityUid($nextDel["TAS_UID"], $appFields); $appFields["APP_DATA"] = $scriptTask->execScriptByActivityUid($nextDel["TAS_UID"], $appFields);
//Create record in table APP_ASSIGN_SELF_SERVICE_VALUE //Create record in table APP_ASSIGN_SELF_SERVICE_VALUE
$task = new Task(); $task = new Task();

View File

@@ -602,18 +602,23 @@ class ScriptTask
if (!is_null($trigger)) { if (!is_null($trigger)) {
$pmScript = new \PMScript(); $pmScript = new \PMScript();
$pmScript->setFields($arrayApplicationData); $pmScript->setFields($arrayApplicationData["APP_DATA"]);
$pmScript->setScript($trigger->getTriWebbot()); $pmScript->setScript($trigger->getTriWebbot());
$result = $pmScript->execute(); $result = $pmScript->execute();
$arrayApplicationData = $pmScript->aFields; $arrayApplicationData["APP_DATA"] = $pmScript->aFields;
$case = new \Cases();
$result = $case->updateCase($arrayApplicationData["APP_UID"], $arrayApplicationData);
} }
} }
} }
//Return //Return
return $arrayApplicationData; return $arrayApplicationData["APP_DATA"];
} catch (\Exception $e) { } catch (\Exception $e) {
throw $e; throw $e;
} }

View File

@@ -192,6 +192,13 @@ class BpmnWorkflow extends Project\Bpmn
} }
} }
$activityCurrent = \BpmnActivityPeer::retrieveByPK($actUid);
if ($activityCurrent->getActType() == "TASK" && $activityCurrent->getActTaskType() == "SCRIPTTASK") {
$taskData["TAS_TYPE"] = "SCRIPT-TASK";
$taskData["TAS_ASSIGN_TYPE"] = "BALANCED";
}
$this->wp->addTask($taskData); $this->wp->addTask($taskData);
return $actUid; return $actUid;
@@ -221,10 +228,12 @@ class BpmnWorkflow extends Project\Bpmn
if ($activityBefore->getActTaskType() != "SCRIPTTASK" && $activityCurrent->getActTaskType() == "SCRIPTTASK") { if ($activityBefore->getActTaskType() != "SCRIPTTASK" && $activityCurrent->getActTaskType() == "SCRIPTTASK") {
$taskData["TAS_TYPE"] = "SCRIPT-TASK"; $taskData["TAS_TYPE"] = "SCRIPT-TASK";
$taskData["TAS_ASSIGN_TYPE"] = "BALANCED";
} }
if ($activityBefore->getActTaskType() == "SCRIPTTASK" && $activityCurrent->getActTaskType() != "SCRIPTTASK") { if ($activityBefore->getActTaskType() == "SCRIPTTASK" && $activityCurrent->getActTaskType() != "SCRIPTTASK") {
$taskData["TAS_TYPE"] = "NORMAL"; $taskData["TAS_TYPE"] = "NORMAL";
$taskData["TAS_ASSIGN_TYPE"] = "BALANCED";
$scriptTask = new \ProcessMaker\BusinessModel\ScriptTask(); $scriptTask = new \ProcessMaker\BusinessModel\ScriptTask();
@@ -583,7 +592,7 @@ class BpmnWorkflow extends Project\Bpmn
$messageEventDefinition->delete($arrayMessageEventDefinitionData["MSGED_UID"]); $messageEventDefinition->delete($arrayMessageEventDefinitionData["MSGED_UID"]);
} }
} }
//Email-Event - Delete //Email-Event - Delete
$arrayEventType = array("END", "INTERMEDIATE"); $arrayEventType = array("END", "INTERMEDIATE");
$arrayEventMarker = array("EMAIL"); $arrayEventMarker = array("EMAIL");
@@ -874,7 +883,7 @@ class BpmnWorkflow extends Project\Bpmn
$result = $this->wp->addRoute($activityUid, $taskUid, $routeType, $routeCondition, $routeDefault); $result = $this->wp->addRoute($activityUid, $taskUid, $routeType, $routeCondition, $routeDefault);
$result = $this->wp->addRoute($taskUid, -1, "SEQUENTIAL"); $result = $this->wp->addRoute($taskUid, -1, "SEQUENTIAL");
break; break;
default: default:
//EMPTY //and others types //EMPTY //and others types
$result = $this->wp->addRoute($activityUid, -1, $routeType, $routeCondition, $routeDefault); $result = $this->wp->addRoute($activityUid, -1, $routeType, $routeCondition, $routeDefault);
@@ -1069,7 +1078,7 @@ class BpmnWorkflow extends Project\Bpmn
$result = $this->wp->addRoute($activity["ACT_UID"], $taskUid, "SEQUENTIAL"); $result = $this->wp->addRoute($activity["ACT_UID"], $taskUid, "SEQUENTIAL");
$result = $this->wp->addRoute($taskUid, -1, "SEQUENTIAL"); $result = $this->wp->addRoute($taskUid, -1, "SEQUENTIAL");
break; break;
default: default:
//EMPTY //This it's already implemented //EMPTY //This it's already implemented
//and others types //and others types