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
*
* @name getTransferHistoryCriteria
* @param string $sAppUid
* @return array
* @param integer $appNumber
*
* @return object
*/
public function getTransferHistoryCriteria($sAppUid)
public function getTransferHistoryCriteria($appNumber)
{
$c = new Criteria('workflow');
$c->addSelectColumn(UsersPeer::USR_FIRSTNAME);
@@ -2587,41 +2588,52 @@ class Cases
$c->addSelectColumn(AppDelegationPeer::TAS_UID);
$c->addSelectColumn(AppDelegationPeer::APP_UID);
$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(AppDelayPeer::APP_ENABLE_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
//$c->addJoin(AppDelegationPeer::DEL_INDEX, AppDelayPeer::APP_DEL_INDEX, Criteria::LEFT_JOIN);
//$c->addJoin(AppDelegationPeer::APP_UID, AppDelayPeer::APP_UID, Criteria::LEFT_JOIN);
//We added this custom query for the case tracker
$c->addAsColumn(
'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();
$app = array();
$app[] = array(AppDelegationPeer::DEL_INDEX, AppDelayPeer::APP_DEL_INDEX);
$app[] = array(AppDelegationPeer::APP_UID, AppDelayPeer::APP_UID);
$app = [];
$app[] = [AppDelegationPeer::DEL_INDEX, AppDelayPeer::APP_DEL_INDEX];
$app[] = [AppDelegationPeer::APP_NUMBER, AppDelayPeer::APP_NUMBER];
$c->addJoinMC($app, Criteria::LEFT_JOIN);
//LEFT JOIN TASK TAS_TITLE
$c->addJoin(AppDelegationPeer::TAS_UID, TaskPeer::TAS_UID, Criteria::LEFT_JOIN);
//Define the where
$c->add(AppDelegationPeer::APP_NUMBER, $appNumber);
//WHERE
$c->add(AppDelegationPeer::APP_UID, $sAppUid);
//ORDER BY
//Order by
$c->clearOrderByColumns();
$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");
$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");
$con->begin();
$stmt = $con->createStatement();
@@ -3948,7 +3948,7 @@ class WorkspaceTools
WHERE AM.PRO_ID = 0 AND AM.APP_NUMBER != 0");
$con->commit();
// Populating APP_MESSAGE.PRO_ID
// Populating APP_MESSAGE.APP_MSG_STATUS_ID
CLI::logging("-> Populating APP_MESSAGE.APP_MSG_STATUS_ID \n");
$con->begin();
$rs = $stmt->executeQuery("UPDATE APP_MESSAGE
@@ -3961,8 +3961,8 @@ class WorkspaceTools
APP_MSG_STATUS_ID = 0");
$con->commit();
// Populating APP_MESSAGE.PRO_ID
CLI::logging("-> Populating APP_MESSAGE.APP_MSG_STATUS_ID \n");
// Populating APP_MESSAGE.APP_MSG_TYPE_ID
CLI::logging("-> Populating APP_MESSAGE.APP_MSG_TYPE_ID \n");
$con->begin();
$rs = $stmt->executeQuery("UPDATE APP_MESSAGE
SET APP_MSG_TYPE_ID = (case
@@ -3975,6 +3975,28 @@ class WorkspaceTools
APP_MSG_TYPE_ID = 0");
$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");
// Populating PRO_ID, USR_ID

View File

@@ -16,12 +16,19 @@
*/
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
* @var string
*/
protected $tas_title_content = '';
/**
* Get the tas_title column value.
* @return string