Merged in feature/HOR-4476 (pull request #6491)

HOR-4483

Approved-by: Julio Cesar Laura Avendaño <contact@julio-laura.com>
This commit is contained in:
Paula Quispe
2018-05-29 20:16:49 +00:00
committed by Julio Cesar Laura Avendaño
9 changed files with 180 additions and 89 deletions

View File

@@ -2574,10 +2574,11 @@ class Cases
* Get the transfer History * Get the transfer History
* *
* @name getTransferHistoryCriteria * @name getTransferHistoryCriteria
* @param string $sAppUid * @param integer $appNumber
* @return array *
* @return object
*/ */
public function getTransferHistoryCriteria($sAppUid) public function getTransferHistoryCriteria($appNumber)
{ {
$c = new Criteria('workflow'); $c = new Criteria('workflow');
$c->addSelectColumn(UsersPeer::USR_FIRSTNAME); $c->addSelectColumn(UsersPeer::USR_FIRSTNAME);
@@ -2587,41 +2588,52 @@ class Cases
$c->addSelectColumn(AppDelegationPeer::TAS_UID); $c->addSelectColumn(AppDelegationPeer::TAS_UID);
$c->addSelectColumn(AppDelegationPeer::APP_UID); $c->addSelectColumn(AppDelegationPeer::APP_UID);
$c->addSelectColumn(AppDelegationPeer::DEL_INDEX); $c->addSelectColumn(AppDelegationPeer::DEL_INDEX);
///-- $c->addAsColumn('USR_NAME', "CONCAT(USR_LASTNAME, ' ', USR_FIRSTNAME)");
$sDataBase = 'database_' . strtolower(DB_ADAPTER);
if (G::LoadSystemExist($sDataBase)) {
$oDataBase = new database();
$c->addAsColumn('USR_NAME', $oDataBase->concatString("USR_LASTNAME", "' '", "USR_FIRSTNAME"));
$c->addAsColumn(
'DEL_FINISH_DATE', $oDataBase->getCaseWhen("DEL_FINISH_DATE IS NULL", "'-'", AppDelegationPeer::DEL_FINISH_DATE)
);
$c->addAsColumn(
'APP_TYPE', $oDataBase->getCaseWhen("DEL_FINISH_DATE IS NULL", "'IN_PROGRESS'", AppDelayPeer::APP_TYPE)
);
}
$c->addSelectColumn(AppDelegationPeer::DEL_INIT_DATE); $c->addSelectColumn(AppDelegationPeer::DEL_INIT_DATE);
$c->addSelectColumn(AppDelayPeer::APP_ENABLE_ACTION_DATE); $c->addSelectColumn(AppDelayPeer::APP_ENABLE_ACTION_DATE);
$c->addSelectColumn(AppDelayPeer::APP_DISABLE_ACTION_DATE); $c->addSelectColumn(AppDelayPeer::APP_DISABLE_ACTION_DATE);
$c->addSelectColumn(TaskPeer::TAS_TITLE);
//APP_DELEGATION LEFT JOIN USERS
$c->addJoin(AppDelegationPeer::USR_UID, UsersPeer::USR_UID, Criteria::LEFT_JOIN);
//APP_DELAY FOR MORE DESCRIPTION //We added this custom query for the case tracker
//$c->addJoin(AppDelegationPeer::DEL_INDEX, AppDelayPeer::APP_DEL_INDEX, Criteria::LEFT_JOIN); $c->addAsColumn(
//$c->addJoin(AppDelegationPeer::APP_UID, AppDelayPeer::APP_UID, Criteria::LEFT_JOIN); 'TAS_TITLE',
'CASE WHEN TASK.TAS_TITLE = "INTERMEDIATE-THROW-EMAIL-EVENT" THEN "' . G::LoadTranslation('ID_INTERMEDIATE_THROW_EMAIL_EVENT') . '"
WHEN TASK.TAS_TITLE = "INTERMEDIATE-THROW-MESSAGE-EVENT" THEN "' . G::LoadTranslation('ID_INTERMEDIATE_THROW_MESSAGE_EVENT') . '"
WHEN TASK.TAS_TITLE = "INTERMEDIATE-CATCH-MESSAGE-EVENT" THEN "' . G::LoadTranslation('ID_INTERMEDIATE_CATCH_MESSAGE_EVENT') . '"
WHEN TASK.TAS_TITLE = "INTERMEDIATE-CATCH-TIMER-EVENT" THEN "' . G::LoadTranslation('ID_INTERMEDIATE_CATCH_TIMER_EVENT') . '"
ELSE TASK.TAS_TITLE
END'
);
$dbAdapter = 'database_' . strtolower(DB_ADAPTER);
if (G::LoadSystemExist($dbAdapter)) {
$dataBase = new database();
$c->addAsColumn(
'USR_NAME',
$dataBase->concatString("USR_LASTNAME", "' '", "USR_FIRSTNAME")
);
$c->addAsColumn(
'DEL_FINISH_DATE',
$dataBase->getCaseWhen("DEL_FINISH_DATE IS NULL", "'-'", AppDelegationPeer::DEL_FINISH_DATE)
);
$c->addAsColumn(
'APP_TYPE',
$dataBase->getCaseWhen("DEL_FINISH_DATE IS NULL", "'IN_PROGRESS'", AppDelayPeer::APP_TYPE)
);
}
//Define the joins
$c->addJoin(AppDelegationPeer::USR_ID, UsersPeer::USR_ID, Criteria::LEFT_JOIN);
$c->addJoin(AppDelegationPeer::TAS_ID, TaskPeer::TAS_ID, Criteria::LEFT_JOIN);
$del = DBAdapter::getStringDelimiter(); $del = DBAdapter::getStringDelimiter();
$app = array(); $app = [];
$app[] = array(AppDelegationPeer::DEL_INDEX, AppDelayPeer::APP_DEL_INDEX); $app[] = [AppDelegationPeer::DEL_INDEX, AppDelayPeer::APP_DEL_INDEX];
$app[] = array(AppDelegationPeer::APP_UID, AppDelayPeer::APP_UID); $app[] = [AppDelegationPeer::APP_NUMBER, AppDelayPeer::APP_NUMBER];
$c->addJoinMC($app, Criteria::LEFT_JOIN); $c->addJoinMC($app, Criteria::LEFT_JOIN);
//LEFT JOIN TASK TAS_TITLE //Define the where
$c->addJoin(AppDelegationPeer::TAS_UID, TaskPeer::TAS_UID, Criteria::LEFT_JOIN); $c->add(AppDelegationPeer::APP_NUMBER, $appNumber);
//WHERE //Order by
$c->add(AppDelegationPeer::APP_UID, $sAppUid);
//ORDER BY
$c->clearOrderByColumns(); $c->clearOrderByColumns();
$c->addAscendingOrderByColumn(AppDelegationPeer::DEL_DELEGATE_DATE); $c->addAscendingOrderByColumn(AppDelegationPeer::DEL_DELEGATE_DATE);

View File

@@ -3932,7 +3932,7 @@ class WorkspaceTools
WHERE AM.TAS_ID = 0 AND AM.PRO_ID = 0 AND AM.APP_NUMBER != 0 AND AM.DEL_INDEX != 0"); WHERE AM.TAS_ID = 0 AND AM.PRO_ID = 0 AND AM.APP_NUMBER != 0 AND AM.DEL_INDEX != 0");
$con->commit(); $con->commit();
// Populating APP_MESSAGE.PRO_ID when does not exits DEL_INDEX // Populating APP_MESSAGE.PRO_ID
CLI::logging("-> Populating APP_MESSAGE.PRO_ID\n"); CLI::logging("-> Populating APP_MESSAGE.PRO_ID\n");
$con->begin(); $con->begin();
$stmt = $con->createStatement(); $stmt = $con->createStatement();
@@ -3948,7 +3948,7 @@ class WorkspaceTools
WHERE AM.PRO_ID = 0 AND AM.APP_NUMBER != 0"); WHERE AM.PRO_ID = 0 AND AM.APP_NUMBER != 0");
$con->commit(); $con->commit();
// Populating APP_MESSAGE.PRO_ID // Populating APP_MESSAGE.APP_MSG_STATUS_ID
CLI::logging("-> Populating APP_MESSAGE.APP_MSG_STATUS_ID \n"); CLI::logging("-> Populating APP_MESSAGE.APP_MSG_STATUS_ID \n");
$con->begin(); $con->begin();
$rs = $stmt->executeQuery("UPDATE APP_MESSAGE $rs = $stmt->executeQuery("UPDATE APP_MESSAGE
@@ -3961,8 +3961,8 @@ class WorkspaceTools
APP_MSG_STATUS_ID = 0"); APP_MSG_STATUS_ID = 0");
$con->commit(); $con->commit();
// Populating APP_MESSAGE.PRO_ID // Populating APP_MESSAGE.APP_MSG_TYPE_ID
CLI::logging("-> Populating APP_MESSAGE.APP_MSG_STATUS_ID \n"); CLI::logging("-> Populating APP_MESSAGE.APP_MSG_TYPE_ID \n");
$con->begin(); $con->begin();
$rs = $stmt->executeQuery("UPDATE APP_MESSAGE $rs = $stmt->executeQuery("UPDATE APP_MESSAGE
SET APP_MSG_TYPE_ID = (case SET APP_MSG_TYPE_ID = (case
@@ -3975,6 +3975,28 @@ class WorkspaceTools
APP_MSG_TYPE_ID = 0"); APP_MSG_TYPE_ID = 0");
$con->commit(); $con->commit();
// Populating TAS.TAS_TITLE with BPMN_EVENT.EVN_NAME
/*----------------------------------********---------------------------------*/
CLI::logging("-> Populating TASK.TAS_TITLE with BPMN_EVENT.EVN_NAME\n");
$con->begin();
$rs = $stmt->executeQuery("UPDATE TASK
INNER JOIN (
SELECT ELEMENT_TASK_RELATION.TAS_UID, BPMN_EVENT.EVN_NAME
FROM ELEMENT_TASK_RELATION
JOIN BPMN_EVENT ON (BPMN_EVENT.EVN_UID = ELEMENT_TASK_RELATION.ELEMENT_UID)
) AS EVENT
ON (TASK.TAS_UID = EVENT.TAS_UID)
SET TASK.TAS_TITLE = EVENT.EVN_NAME
WHERE TASK.TAS_TITLE IN (
'INTERMEDIATE-THROW-MESSAGE-EVENT',
'INTERMEDIATE-THROW-EMAIL-EVENT',
'INTERMEDIATE-CATCH-TIMER-EVENT',
'INTERMEDIATE-CATCH-MESSAGE-EVENT'
)
AND EVENT.EVN_NAME != ''");
$con->commit();
/*----------------------------------********---------------------------------*/
CLI::logging("-> Migrating And Populating Indexing for avoiding the use of table APP_CACHE_VIEW Done \n"); CLI::logging("-> Migrating And Populating Indexing for avoiding the use of table APP_CACHE_VIEW Done \n");
// Populating PRO_ID, USR_ID // Populating PRO_ID, USR_ID

View File

@@ -16,12 +16,19 @@
*/ */
class Task extends BaseTask class Task extends BaseTask
{ {
const tas_type_events = [
'INTERMEDIATE-THROW-MESSAGE-EVENT',
'INTERMEDIATE-THROW-EMAIL-EVENT',
'INTERMEDIATE-CATCH-TIMER-EVENT',
'INTERMEDIATE-CATCH-MESSAGE-EVENT'
];
/** /**
* This value goes in the content table * This value goes in the content table
* @var string * @var string
*/ */
protected $tas_title_content = ''; protected $tas_title_content = '';
/** /**
* Get the tas_title column value. * Get the tas_title column value.
* @return string * @return string

View File

@@ -9929,6 +9929,18 @@ msgstr "Insufficient privileges to execute this function"
msgid "INT" msgid "INT"
msgstr "INT" msgstr "INT"
# TRANSLATION
# LABEL/ID_INTERMEDIATE_CATCH_MESSAGE_EVENT
#: LABEL/ID_INTERMEDIATE_CATCH_MESSAGE_EVENT
msgid "Untitled - Intermediate Send Message Event"
msgstr "Untitled - Intermediate Send Message Event"
# TRANSLATION
# LABEL/ID_INTERMEDIATE_CATCH_TIMER_EVENT
#: LABEL/ID_INTERMEDIATE_CATCH_TIMER_EVENT
msgid "Untitled - Intermediate Timer Event"
msgstr "Untitled - Intermediate Timer Event"
# TRANSLATION # TRANSLATION
# LABEL/ID_INTERMEDIATE_MESSAGE_EVENT # LABEL/ID_INTERMEDIATE_MESSAGE_EVENT
#: LABEL/ID_INTERMEDIATE_MESSAGE_EVENT #: LABEL/ID_INTERMEDIATE_MESSAGE_EVENT
@@ -9953,6 +9965,18 @@ msgstr "Intermediate Timer Event (Multiple Event)"
msgid "[LABEL/ID_INTERMEDIATE_TIMER_EVENTS] Intermediate Timer Event (Multiple Event)" msgid "[LABEL/ID_INTERMEDIATE_TIMER_EVENTS] Intermediate Timer Event (Multiple Event)"
msgstr "Intermediate Timer Event (Multiple Event)" msgstr "Intermediate Timer Event (Multiple Event)"
# TRANSLATION
# LABEL/ID_INTERMEDIATE_THROW_EMAIL_EVENT
#: LABEL/ID_INTERMEDIATE_THROW_EMAIL_EVENT
msgid "Untitled - Intermediate Email Event"
msgstr "Untitled - Intermediate Email Event"
# TRANSLATION
# LABEL/ID_INTERMEDIATE_THROW_MESSAGE_EVENT
#: LABEL/ID_INTERMEDIATE_THROW_MESSAGE_EVENT
msgid "Untitled - Intermediate Receive Message Event"
msgstr "Untitled - Intermediate Receive Message Event"
# TRANSLATION # TRANSLATION
# LABEL/ID_INTERNATIONAL # LABEL/ID_INTERNATIONAL
#: LABEL/ID_INTERNATIONAL #: LABEL/ID_INTERNATIONAL

View File

@@ -58486,10 +58486,14 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_INSTRUCTIONS_TEXT','en','To assign a case, first select the case in the list. Then enter a user name in the ''Search'' field and select a user to whom the case will be reassigned.','2014-10-21') , ( 'LABEL','ID_INSTRUCTIONS_TEXT','en','To assign a case, first select the case in the list. Then enter a user name in the ''Search'' field and select a user to whom the case will be reassigned.','2014-10-21') ,
( 'LABEL','ID_INSUFFICIENT_PRIVILEGES_FUNCTION','en','Insufficient privileges to execute this function','2014-01-15') , ( 'LABEL','ID_INSUFFICIENT_PRIVILEGES_FUNCTION','en','Insufficient privileges to execute this function','2014-01-15') ,
( 'LABEL','ID_INT','en','INT','2014-01-15') , ( 'LABEL','ID_INT','en','INT','2014-01-15') ,
( 'LABEL','ID_INTERMEDIATE_CATCH_MESSAGE_EVENT','en','Untitled - Intermediate Send Message Event','2018-05-23') ,
( 'LABEL','ID_INTERMEDIATE_CATCH_TIMER_EVENT','en','Untitled - Intermediate Timer Event','2018-05-23') ,
( 'LABEL','ID_INTERMEDIATE_MESSAGE_EVENT','en','Intermediate Message Events (Task Notifications)','2014-01-15') , ( 'LABEL','ID_INTERMEDIATE_MESSAGE_EVENT','en','Intermediate Message Events (Task Notifications)','2014-01-15') ,
( 'LABEL','ID_INTERMEDIATE_MESSAGE_EVENTS','en','Intermediate Message Events (Task Notifications)','2014-01-15') , ( 'LABEL','ID_INTERMEDIATE_MESSAGE_EVENTS','en','Intermediate Message Events (Task Notifications)','2014-01-15') ,
( 'LABEL','ID_INTERMEDIATE_TIMER_EVENT','en','Intermediate Timer Event (Multiple Event)','2014-01-15') , ( 'LABEL','ID_INTERMEDIATE_TIMER_EVENT','en','Intermediate Timer Event (Multiple Event)','2014-01-15') ,
( 'LABEL','ID_INTERMEDIATE_TIMER_EVENTS','en','Intermediate Timer Event (Multiple Event)','2014-01-15') , ( 'LABEL','ID_INTERMEDIATE_TIMER_EVENTS','en','Intermediate Timer Event (Multiple Event)','2014-01-15') ,
( 'LABEL','ID_INTERMEDIATE_THROW_EMAIL_EVENT','en','Untitled - Intermediate Email Event','2018-05-23') ,
( 'LABEL','ID_INTERMEDIATE_THROW_MESSAGE_EVENT','en','Untitled - Intermediate Receive Message Event','2018-05-23') ,
( 'LABEL','ID_INTERNATIONAL','en','International','2014-01-15') , ( 'LABEL','ID_INTERNATIONAL','en','International','2014-01-15') ,
( 'LABEL','ID_INVALID_APPLICATION_ID_MSG','en','An invalid application ID was stored for the session. <br/> This could have happened if you opened another case in a new tab or window. <br/> Please {0} the case.','2014-10-21') , ( 'LABEL','ID_INVALID_APPLICATION_ID_MSG','en','An invalid application ID was stored for the session. <br/> This could have happened if you opened another case in a new tab or window. <br/> Please {0} the case.','2014-10-21') ,
( 'LABEL','ID_INVALID_APPLICATION_NUMBER','en','You have set a invalid Application Number','2014-01-15') , ( 'LABEL','ID_INVALID_APPLICATION_NUMBER','en','You have set a invalid Application Number','2014-01-15') ,

View File

@@ -1,5 +1,6 @@
<?php <?php
use Cases as ClassesCases;
use ProcessMaker\Util\DateTime; use ProcessMaker\Util\DateTime;
$actionAjax = isset($_REQUEST['actionAjax']) ? $_REQUEST['actionAjax'] : null; $actionAjax = isset($_REQUEST['actionAjax']) ? $_REQUEST['actionAjax'] : null;
@@ -7,7 +8,10 @@ $actionAjax = isset($_REQUEST['actionAjax']) ? $_REQUEST['actionAjax'] : null;
switch ($actionAjax) { switch ($actionAjax) {
case 'historyGridList_JXP': case 'historyGridList_JXP':
global $G_PUBLISH; global $G_PUBLISH;
$criteria = Cases::getTransferHistoryCriteria($_SESSION['APPLICATION']); $appUid = $_SESSION['APPLICATION'];
$case = new ClassesCases();
$fields = $case->loadCase($appUid);
$criteria = Cases::getTransferHistoryCriteria($fields['APP_NUMBER']);
$dataSet = GulliverBasePeer::doSelectRs($criteria); $dataSet = GulliverBasePeer::doSelectRs($criteria);
$totalCount = $dataSet->getRecordCount(); $totalCount = $dataSet->getRecordCount();

View File

@@ -60,7 +60,7 @@ $G_PUBLISH = new Publisher();
if ($noShowTitle == 0) { if ($noShowTitle == 0) {
$G_PUBLISH->AddContent( 'smarty', 'cases/cases_title', '', '', $aFields ); $G_PUBLISH->AddContent( 'smarty', 'cases/cases_title', '', '', $aFields );
} }
$G_PUBLISH->AddContent( 'propeltable', 'paged-table', 'tracker/tracker_TransferHistory', Cases::getTransferHistoryCriteria( $_SESSION['APPLICATION'] ), array () ); $G_PUBLISH->AddContent('propeltable', 'paged-table', 'tracker/tracker_TransferHistory', Cases::getTransferHistoryCriteria($aFields['APP_NUMBER']), []);
$bpmn = new ProcessMaker\Project\Bpmn(); $bpmn = new ProcessMaker\Project\Bpmn();
$flagIsBpmn = ($bpmn->exists($_SESSION["PROCESS"]))? true : false; $flagIsBpmn = ($bpmn->exists($_SESSION["PROCESS"]))? true : false;

View File

@@ -2,7 +2,12 @@
namespace ProcessMaker\BusinessModel\Light; namespace ProcessMaker\BusinessModel\Light;
use AppDelegationPeer;
use Cases as ClassesCases;
use G;
use PmDynaform; use PmDynaform;
use Process as ClassesProcess;
use ResultSet;
class Tracker class Tracker
{ {
@@ -73,37 +78,46 @@ class Tracker
} }
/**
* This function get the case history related to the case
*
* @param string $idProcess
* @param string $appUid
*
* @return array
*/
public function history($idProcess, $appUid) public function history($idProcess, $appUid)
{ {
$oCase = new \Cases(); $case = new ClassesCases();
$aFields = $oCase->loadCase( $appUid ); $fields = $case->loadCase($appUid);
$oProcess = new \Process(); $process = new ClassesProcess();
$aProcessFieds = $oProcess->load( $idProcess ); $processFields = $process->load($idProcess);
$noShowTitle = 0; $noShowTitle = 0;
if (isset( $aProcessFieds['PRO_SHOW_MESSAGE'] )) { if (isset($processFields['PRO_SHOW_MESSAGE'])) {
$noShowTitle = $aProcessFieds['PRO_SHOW_MESSAGE']; $noShowTitle = $processFields['PRO_SHOW_MESSAGE'];
} }
if (isset( $aFields['TITLE'] )) { if (isset($fields['TITLE'])) {
$aFields['APP_TITLE'] = $aFields['TITLE']; $fields['APP_TITLE'] = $fields['TITLE'];
} }
if ($aFields['APP_PROC_CODE'] != '') { if ($fields['APP_PROC_CODE'] != '') {
$aFields['APP_NUMBER'] = $aFields['APP_PROC_CODE']; $fields['APP_NUMBER'] = $fields['APP_PROC_CODE'];
} }
$aFields['CASE'] = \G::LoadTranslation( 'ID_CASE' ); $fields['CASE'] = G::LoadTranslation('ID_CASE');
$aFields['TITLE'] = \G::LoadTranslation( 'ID_TITLE' ); $fields['TITLE'] = G::LoadTranslation('ID_TITLE');
$c = \Cases::getTransferHistoryCriteria( $appUid ); $c = ClassesCases::getTransferHistoryCriteria($fields['APP_NUMBER']);
$dataset = \AppDelegationPeer::doSelectRS( $c ); $dataset = AppDelegationPeer::doSelectRS($c);
$dataset->setFetchmode( \ResultSet::FETCHMODE_ASSOC ); $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$dataset->next(); $dataset->next();
$history = array(); $history = [];
while ($row = $dataset->getRow()) { while ($row = $dataset->getRow()) {
$history[] = $row; $history[] = $row;
$dataset->next(); $dataset->next();
} }
$response = $this->parserHistory($history); $response = $this->parserHistory($history);
return $response; return $response;
} }

View File

@@ -2,9 +2,14 @@
namespace ProcessMaker\Project\Adapter; namespace ProcessMaker\Project\Adapter;
use BpmnFlow;
use BpmnFlowPeer;
use Exception;
use ProcessMaker\BusinessModel\ElementTaskRelation;
use ProcessMaker\Plugins\PluginRegistry; use ProcessMaker\Plugins\PluginRegistry;
use ProcessMaker\Project; use ProcessMaker\Project;
use ProcessMaker\Util; use ProcessMaker\Util;
use ProcessMaker\Util\Common;
/** /**
* Class BpmnWorkflow * Class BpmnWorkflow
@@ -777,39 +782,39 @@ class BpmnWorkflow extends Project\Bpmn
} }
} }
/* /**
public function updateEventStartObjects($eventUid, $taskUid) * This function get the TAS_UID
{ * Create or just return the value
$event = \BpmnEventPeer::retrieveByPK($eventUid); *
* @param string $elementUid
//Case-Scheduler - Update * @param string $elementType
if (!is_null($event) && $event->getEvnType() == "START" && $event->getEvnMarker() == "TIMER") { * @param string $key
$caseScheduler = new \CaseScheduler(); * @param string $eventName
*
if ($caseScheduler->Exists($eventUid)) { * @return string
$this->wp->updateCaseScheduler($eventUid, array("TAS_UID" => $taskUid)); * @throws Exception
} */
} private function __createTaskByElement($elementUid, $elementType, $key, $eventName = '')
//Update web entry
//if (!is_null($event) && $event->getEvnType() == "START" && $event->getEvnMarker() == "MESSAGE") {
// $this->wp->updateWebEntry($eventUid, array("TAS_UID" => $taskUid));
//}
}
*/
private function __createTaskByElement($elementUid, $elementType, $key)
{ {
try { try {
$taskTitle = $taskType = $this->arrayTaskAttribute[$key]["type"];
/*----------------------------------********---------------------------------*/
$taskTitle = empty($eventName) ? $taskType : $eventName;
/*----------------------------------********---------------------------------*/
if (isset($this->arrayElementTaskRelation[$elementUid])) { if (isset($this->arrayElementTaskRelation[$elementUid])) {
$taskUid = $this->arrayElementTaskRelation[$elementUid]; $taskUid = $this->arrayElementTaskRelation[$elementUid];
/*----------------------------------********---------------------------------*/
$dataTask = ["TAS_TITLE" => $taskTitle];
$this->wp->updateTask($taskUid, $dataTask);
/*----------------------------------********---------------------------------*/
} else { } else {
$taskPosX = 0; $taskPosX = 0;
$taskPosY = 0; $taskPosY = 0;
$flow = \BpmnFlow::findOneBy(array( $flow = BpmnFlow::findOneBy(array(
\BpmnFlowPeer::FLO_ELEMENT_ORIGIN => $elementUid, BpmnFlowPeer::FLO_ELEMENT_ORIGIN => $elementUid,
\BpmnFlowPeer::FLO_ELEMENT_ORIGIN_TYPE => $elementType BpmnFlowPeer::FLO_ELEMENT_ORIGIN_TYPE => $elementType
)); ));
if (!is_null($flow)) { if (!is_null($flow)) {
@@ -818,9 +823,9 @@ class BpmnWorkflow extends Project\Bpmn
$taskPosX = (int)($arrayFlowData["FLO_X1"]); $taskPosX = (int)($arrayFlowData["FLO_X1"]);
$taskPosY = (int)($arrayFlowData["FLO_Y1"]); $taskPosY = (int)($arrayFlowData["FLO_Y1"]);
} else { } else {
$flow = \BpmnFlow::findOneBy(array( $flow = BpmnFlow::findOneBy(array(
\BpmnFlowPeer::FLO_ELEMENT_DEST => $elementUid, BpmnFlowPeer::FLO_ELEMENT_DEST => $elementUid,
\BpmnFlowPeer::FLO_ELEMENT_DEST_TYPE => $elementType BpmnFlowPeer::FLO_ELEMENT_DEST_TYPE => $elementType
)); ));
if (!is_null($flow)) { if (!is_null($flow)) {
@@ -832,18 +837,16 @@ class BpmnWorkflow extends Project\Bpmn
} }
$prefix = $this->arrayTaskAttribute[$key]["prefix"]; $prefix = $this->arrayTaskAttribute[$key]["prefix"];
$taskType = $this->arrayTaskAttribute[$key]["type"]; $taskUid = $this->wp->addTask([
"TAS_UID" => $prefix . substr(Common::generateUID(), (32 - strlen($prefix)) * -1),
$taskUid = $this->wp->addTask(array(
"TAS_UID" => $prefix . substr(Util\Common::generateUID(), (32 - strlen($prefix)) * -1),
"TAS_TYPE" => $taskType, "TAS_TYPE" => $taskType,
"TAS_TITLE" => $taskType, "TAS_TITLE" => $taskTitle,
"TAS_POSX" => $taskPosX, "TAS_POSX" => $taskPosX,
"TAS_POSY" => $taskPosY "TAS_POSY" => $taskPosY
)); ]);
//Element-Task-Relation - Create //Element-Task-Relation - Create
$elementTaskRelation = new \ProcessMaker\BusinessModel\ElementTaskRelation(); $elementTaskRelation = new ElementTaskRelation();
$arrayResult = $elementTaskRelation->create( $arrayResult = $elementTaskRelation->create(
$this->wp->getUid(), $this->wp->getUid(),
@@ -860,7 +863,7 @@ class BpmnWorkflow extends Project\Bpmn
//Return //Return
return $taskUid; return $taskUid;
} catch (\Exception $e) { } catch (Exception $e) {
throw $e; throw $e;
} }
} }
@@ -1026,7 +1029,8 @@ class BpmnWorkflow extends Project\Bpmn
$taskUid = $this->__createTaskByElement( $taskUid = $this->__createTaskByElement(
$eventUid, $eventUid,
"bpmnEvent", "bpmnEvent",
$arrayKey[$arrayEventData["EVN_MARKER"]] $arrayKey[$arrayEventData["EVN_MARKER"]],
isset($arrayEventData["EVN_NAME"]) ? $arrayEventData["EVN_NAME"] : ''
); );
$result = $this->wp->addRoute($activityUid, $taskUid, $routeType, $routeCondition, $routeDefault); $result = $this->wp->addRoute($activityUid, $taskUid, $routeType, $routeCondition, $routeDefault);