PMC-705
This commit is contained in:
@@ -468,44 +468,44 @@ class Cases
|
|||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
$oApp = new Application;
|
$oApp = new Application;
|
||||||
$aFields = $oApp->Load($sAppUid);
|
$fields = $oApp->Load($sAppUid);
|
||||||
|
|
||||||
$appData = self::unserializeData($aFields['APP_DATA']);
|
$appData = self::unserializeData($fields['APP_DATA']);
|
||||||
|
|
||||||
$aFields['APP_DATA'] = G::array_merges(G::getSystemConstants(), $appData);
|
$fields['APP_DATA'] = G::array_merges(G::getSystemConstants(), $appData);
|
||||||
|
|
||||||
switch ($oApp->getAppStatus()) {
|
switch ($oApp->getAppStatus()) {
|
||||||
case 'COMPLETED':
|
case 'COMPLETED':
|
||||||
$aFields['STATUS'] = G::LoadTranslation('ID_COMPLETED');
|
$fields['STATUS'] = G::LoadTranslation('ID_COMPLETED');
|
||||||
break;
|
break;
|
||||||
case 'CANCELLED':
|
case 'CANCELLED':
|
||||||
$aFields['STATUS'] = G::LoadTranslation('ID_CANCELLED');
|
$fields['STATUS'] = G::LoadTranslation('ID_CANCELLED');
|
||||||
break;
|
break;
|
||||||
case 'PAUSED':
|
case 'PAUSED':
|
||||||
$aFields['STATUS'] = G::LoadTranslation('ID_PAUSED');
|
$fields['STATUS'] = G::LoadTranslation('ID_PAUSED');
|
||||||
break;
|
break;
|
||||||
case 'DRAFT':
|
case 'DRAFT':
|
||||||
$aFields['STATUS'] = G::LoadTranslation('ID_DRAFT');
|
$fields['STATUS'] = G::LoadTranslation('ID_DRAFT');
|
||||||
break;
|
break;
|
||||||
case 'TO_DO':
|
case 'TO_DO':
|
||||||
$aFields['STATUS'] = G::LoadTranslation('ID_TO_DO');
|
$fields['STATUS'] = G::LoadTranslation('ID_TO_DO');
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
$oUser = new Users();
|
$oUser = new Users();
|
||||||
try {
|
try {
|
||||||
$oUser->load($oApp->getAppInitUser());
|
$oUser->load($oApp->getAppInitUser());
|
||||||
$uFields = $oUser->toArray(BasePeer::TYPE_FIELDNAME);
|
$uFields = $oUser->toArray(BasePeer::TYPE_FIELDNAME);
|
||||||
$aFields['TITLE'] = $aFields['APP_TITLE'];
|
$fields['TITLE'] = $fields['APP_TITLE'];
|
||||||
$aFields['DESCRIPTION'] = $aFields['APP_DESCRIPTION'];
|
$fields['DESCRIPTION'] = $fields['APP_DESCRIPTION'];
|
||||||
$aFields['CREATOR'] = $oUser->getUsrFirstname() . ' ' . $oUser->getUsrLastname();
|
$fields['CREATOR'] = $oUser->getUsrFirstname() . ' ' . $oUser->getUsrLastname();
|
||||||
$aFields['CREATE_DATE'] = $oApp->getAppCreateDate();
|
$fields['CREATE_DATE'] = $oApp->getAppCreateDate();
|
||||||
$aFields['UPDATE_DATE'] = $oApp->getAppUpdateDate();
|
$fields['UPDATE_DATE'] = $oApp->getAppUpdateDate();
|
||||||
} catch (Exception $oError) {
|
} catch (Exception $oError) {
|
||||||
$aFields['TITLE'] = $oApp->getAppTitle();
|
$fields['TITLE'] = $oApp->getAppTitle();
|
||||||
$aFields['DESCRIPTION'] = '';
|
$fields['DESCRIPTION'] = '';
|
||||||
$aFields['CREATOR'] = '(USER_DELETED)';
|
$fields['CREATOR'] = '(USER_DELETED)';
|
||||||
$aFields['CREATE_DATE'] = $oApp->getAppCreateDate();
|
$fields['CREATE_DATE'] = $oApp->getAppCreateDate();
|
||||||
$aFields['UPDATE_DATE'] = $oApp->getAppUpdateDate();
|
$fields['UPDATE_DATE'] = $oApp->getAppUpdateDate();
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($iDelIndex > 0) {
|
if ($iDelIndex > 0) {
|
||||||
@@ -513,50 +513,52 @@ class Cases
|
|||||||
$oAppDel = new AppDelegation();
|
$oAppDel = new AppDelegation();
|
||||||
$oAppDel->Load($sAppUid, $iDelIndex);
|
$oAppDel->Load($sAppUid, $iDelIndex);
|
||||||
$aAppDel = $oAppDel->toArray(BasePeer::TYPE_FIELDNAME);
|
$aAppDel = $oAppDel->toArray(BasePeer::TYPE_FIELDNAME);
|
||||||
$aFields['TAS_UID'] = $aAppDel['TAS_UID'];
|
$fields['TAS_UID'] = $aAppDel['TAS_UID'];
|
||||||
$aFields['DEL_INDEX'] = $aAppDel['DEL_INDEX'];
|
$fields['DEL_INDEX'] = $aAppDel['DEL_INDEX'];
|
||||||
$aFields['DEL_PREVIOUS'] = $aAppDel['DEL_PREVIOUS'];
|
$fields['DEL_PREVIOUS'] = $aAppDel['DEL_PREVIOUS'];
|
||||||
$aFields['DEL_TYPE'] = $aAppDel['DEL_TYPE'];
|
$fields['DEL_TYPE'] = $aAppDel['DEL_TYPE'];
|
||||||
$aFields['DEL_PRIORITY'] = $aAppDel['DEL_PRIORITY'];
|
$fields['DEL_PRIORITY'] = $aAppDel['DEL_PRIORITY'];
|
||||||
$aFields['DEL_THREAD_STATUS'] = $aAppDel['DEL_THREAD_STATUS'];
|
$fields['DEL_THREAD_STATUS'] = $aAppDel['DEL_THREAD_STATUS'];
|
||||||
$aFields['DEL_THREAD'] = $aAppDel['DEL_THREAD'];
|
$fields['DEL_THREAD'] = $aAppDel['DEL_THREAD'];
|
||||||
$aFields['DEL_DELEGATE_DATE'] = $aAppDel['DEL_DELEGATE_DATE'];
|
$fields['DEL_DELEGATE_DATE'] = $aAppDel['DEL_DELEGATE_DATE'];
|
||||||
$aFields['DEL_INIT_DATE'] = $aAppDel['DEL_INIT_DATE'];
|
$fields['DEL_INIT_DATE'] = $aAppDel['DEL_INIT_DATE'];
|
||||||
$aFields['DEL_TASK_DUE_DATE'] = $aAppDel['DEL_TASK_DUE_DATE'];
|
$fields['DEL_TASK_DUE_DATE'] = $aAppDel['DEL_TASK_DUE_DATE'];
|
||||||
$aFields['DEL_FINISH_DATE'] = $aAppDel['DEL_FINISH_DATE'];
|
$fields['DEL_FINISH_DATE'] = $aAppDel['DEL_FINISH_DATE'];
|
||||||
$aFields['CURRENT_USER_UID'] = $aAppDel['USR_UID'];
|
$fields['CURRENT_USER_UID'] = $aAppDel['USR_UID'];
|
||||||
|
|
||||||
//Update the global variables
|
//Update the global variables
|
||||||
$aFields['TASK'] = $aAppDel['TAS_UID'];
|
$fields['TASK'] = $aAppDel['TAS_UID'];
|
||||||
$aFields['INDEX'] = $aAppDel['DEL_INDEX'];
|
$fields['INDEX'] = $aAppDel['DEL_INDEX'];
|
||||||
$aFields['TAS_ID'] = $aAppDel['TAS_ID'];
|
$fields['TAS_ID'] = $aAppDel['TAS_ID'];
|
||||||
$aFields['PRO_ID'] = $aAppDel['PRO_ID'];
|
$fields['PRO_ID'] = $aAppDel['PRO_ID'];
|
||||||
try {
|
try {
|
||||||
$oCurUser = new Users();
|
$oCurUser = new Users();
|
||||||
if ($jump != '') {
|
if ($jump != '') {
|
||||||
$aCases = $oAppDel->LoadParallel($sAppUid);
|
$cases = $oAppDel->LoadParallel($sAppUid);
|
||||||
$aFields['TAS_UID'] = '';
|
if (!empty($cases)) {
|
||||||
$aFields['CURRENT_USER'] = array();
|
$fields['TAS_UID'] = '';
|
||||||
foreach ($aCases as $key => $value) {
|
|
||||||
$oCurUser->load($value['USR_UID']);
|
|
||||||
$aFields['CURRENT_USER'][] = $oCurUser->getUsrFirstname() . ' ' . $oCurUser->getUsrLastname();
|
|
||||||
$aFields['TAS_UID'] .= (($aFields['TAS_UID'] != '') ? '|' : '') . $value['TAS_UID'];
|
|
||||||
}
|
}
|
||||||
$aFields['CURRENT_USER'] = implode(" - ", array_values($aFields['CURRENT_USER']));
|
$fields['CURRENT_USER'] = array();
|
||||||
$tasksArray = array_filter(explode('|', $aFields['TAS_UID']));
|
foreach ($cases as $key => $value) {
|
||||||
|
$oCurUser->load($value['USR_UID']);
|
||||||
|
$fields['CURRENT_USER'][] = $oCurUser->getUsrFirstname() . ' ' . $oCurUser->getUsrLastname();
|
||||||
|
$fields['TAS_UID'] .= (($fields['TAS_UID'] != '') ? '|' : '') . $value['TAS_UID'];
|
||||||
|
}
|
||||||
|
$fields['CURRENT_USER'] = implode(" - ", array_values($fields['CURRENT_USER']));
|
||||||
|
$tasksArray = array_filter(explode('|', $fields['TAS_UID']));
|
||||||
|
|
||||||
if (count($tasksArray) == 1) {
|
if (count($tasksArray) == 1) {
|
||||||
$aFields['TAS_UID'] = $tasksArray[0];
|
$fields['TAS_UID'] = $tasksArray[0];
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$oCurUser->load($aAppDel['USR_UID']);
|
$oCurUser->load($aAppDel['USR_UID']);
|
||||||
$aFields['CURRENT_USER'] = $oCurUser->getUsrFirstname() . ' ' . $oCurUser->getUsrLastname();
|
$fields['CURRENT_USER'] = $oCurUser->getUsrFirstname() . ' ' . $oCurUser->getUsrLastname();
|
||||||
}
|
}
|
||||||
} catch (Exception $oError) {
|
} catch (Exception $oError) {
|
||||||
$aFields['CURRENT_USER'] = '';
|
$fields['CURRENT_USER'] = '';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $aFields;
|
return $fields;
|
||||||
} catch (exception $e) {
|
} catch (exception $e) {
|
||||||
throw ($e);
|
throw ($e);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -394,6 +394,12 @@ class Ajax
|
|||||||
print(G::json_encode($processData));
|
print(G::json_encode($processData));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the task information of the current task
|
||||||
|
*
|
||||||
|
* @see workflow/engine/templates/cases/open->taskInformation()
|
||||||
|
* @link https://wiki.processmaker.com/3.3/Cases/Information#Task_Information
|
||||||
|
*/
|
||||||
public function getTaskInformation()
|
public function getTaskInformation()
|
||||||
{
|
{
|
||||||
if (!isset($_SESSION['USER_LOGGED'])) {
|
if (!isset($_SESSION['USER_LOGGED'])) {
|
||||||
@@ -408,7 +414,15 @@ class Ajax
|
|||||||
if ($_SESSION['TASK'] == '-1') {
|
if ($_SESSION['TASK'] == '-1') {
|
||||||
$_SESSION['TASK'] = $_SESSION['CURRENT_TASK'];
|
$_SESSION['TASK'] = $_SESSION['CURRENT_TASK'];
|
||||||
}
|
}
|
||||||
$taskData = $task->getDelegatedTaskData($_SESSION['TASK'], $_SESSION['APPLICATION'], $_SESSION['INDEX']);
|
|
||||||
|
$arrayTaskUid = explode('|', $_SESSION['TASK']);
|
||||||
|
|
||||||
|
if (count($arrayTaskUid) > 1) {
|
||||||
|
$arrayTaskUid = array_unique($arrayTaskUid);
|
||||||
|
}
|
||||||
|
$taskUid = $arrayTaskUid[0];
|
||||||
|
|
||||||
|
$taskData = $task->getDelegatedTaskData($taskUid, $_SESSION['APPLICATION'], $_SESSION['INDEX']);
|
||||||
|
|
||||||
$taskData = \ProcessMaker\Util\DateTime::convertUtcToTimeZone($taskData);
|
$taskData = \ProcessMaker\Util\DateTime::convertUtcToTimeZone($taskData);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user