Merged in feature/HOR-2512 (pull request #5349)

HOR-2512
This commit is contained in:
Julio Cesar Laura Avendaño
2017-01-18 17:40:22 -04:00
3 changed files with 95 additions and 173 deletions

View File

@@ -1,43 +0,0 @@
<?php
class Library
{
public static function getCasesNumRec($userUid)
{
$cnn = Propel::getConnection("workflow");
$stmt = $cnn->createStatement();
//Number of records active
$criteria = new Criteria("workflow");
//SELECT
$criteria->addSelectColumn(CaseConsolidatedCorePeer::CON_STATUS);
//FROM
//WHERE
$criteria->add(CaseConsolidatedCorePeer::CON_STATUS, "ACTIVE");
$activeNumRec = CaseConsolidatedCorePeer::doCount($criteria);
//Number of records
$numRec = 0;
$sql = "SELECT COUNT(APP_CACHE_VIEW.TAS_UID) AS NUMREC
FROM CASE_CONSOLIDATED
LEFT JOIN APP_CACHE_VIEW ON (CASE_CONSOLIDATED.TAS_UID = APP_CACHE_VIEW.TAS_UID)
WHERE APP_CACHE_VIEW.USR_UID = '$userUid' AND
APP_CACHE_VIEW.DEL_THREAD_STATUS = 'OPEN' AND
APP_CACHE_VIEW.APP_STATUS = 'TO_DO'";
$rsSql = $stmt->executeQuery($sql, ResultSet::FETCHMODE_ASSOC);
while ($rsSql->next()) {
$row = $rsSql->getRow();
$numRec = $row["NUMREC"];
}
$numRec = ($activeNumRec > 0)? $numRec : 0;
return $numRec;
}
}

View File

@@ -1,111 +1,68 @@
<?php
$action = (isset($_REQUEST["action"])) ? $_REQUEST["action"] : "consolidated";
$arrayTabItem = array();
$oCriteria = new Criteria("workflow");
$oCriteria->addSelectColumn(CaseConsolidatedCorePeer::CON_STATUS);
$oCriteria->add(CaseConsolidatedCorePeer::CON_STATUS, "ACTIVE");
$oCriteria->add(CaseConsolidatedCorePeer::CON_STATUS, 'ACTIVE');
$activeNumRows = CaseConsolidatedCorePeer::doCount($oCriteria);
G::LoadClass ("BasePeer");
G::LoadClass ("configuration");
G::LoadClass("BasePeer");
G::LoadClass("configuration");
G::loadClass("pmFunctions");
$headPublisher = &headPublisher::getSingleton();
//cambiar esto por PROPEL //CASE_CONSOLIDATED TASK
$usrUid = $_SESSION["USER_LOGGED"];
$oCriteria = new Criteria("workflow");
$oCriteria->addSelectColumn("*");
$oCriteria->addSelectColumn(CaseConsolidatedCorePeer::TAS_UID);
$oCriteria->addSelectColumn(TaskPeer::TAS_TITLE);
$oCriteria->addJoin(CaseConsolidatedCorePeer::TAS_UID,TaskPeer::TAS_UID, Criteria::LEFT_JOIN);
$params = array(); //This will be filled with the parameters
$sql = BasePeer::createSelectSql($oCriteria, $params);
$oDataset = CaseConsolidatedCorePeer::doSelectRS($oCriteria);
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
//$oDataset->next();
while ($oDataset->next()) {
$aRow = $oDataset->getRow();
//$aTaskConsolidated [] = $aRow;
}
$query = "SELECT *
FROM CASE_CONSOLIDATED LEFT JOIN CONTENT ON
(CASE_CONSOLIDATED.TAS_UID = CONTENT.CON_ID) LEFT JOIN TASK ON (CASE_CONSOLIDATED.TAS_UID = TASK.TAS_UID)
WHERE CONTENT.CON_CATEGORY='TAS_TITLE' AND CONTENT.CON_LANG='en'";
$aTaskConsolidated = executeQuery($query);
$conf = new Configurations();
try {
$confCasesList = $conf->getConfiguration("casesList", $action);
$confCasesList = $conf->getConfiguration("casesList", $action);
$generalConfCasesList = $conf->getConfiguration("ENVIRONMENT_SETTINGS", "");
} catch (Exception $e) {
$confCasesList = array();
$generalConfCasesList = array();
}
$config = getAdditionalFields($action, $confCasesList);
if (isset($generalConfCasesList["casesListRowNumber"]) && !empty($generalConfCasesList["casesListRowNumber"])) {
$pageSize = intval($generalConfCasesList["casesListRowNumber"]);
} else {
$config = getAdditionalFields($action, $confCasesList);
$pageSize = intval($config["rowsperpage"]);
}
$arrayTabItem = array();
$aAllData = array();
//$aQTY = array();
$i = 0;
//SQL
$cnn = Propel::getConnection("workflow");
$stmt = $cnn->createStatement();
//foreach ($aTaskConsolidated as $value)
//{
$i++;
$sql = "SELECT COUNT(APP_CACHE_VIEW.TAS_UID) AS NUMREC,
APP_CACHE_VIEW.PRO_UID,
(SELECT CON.CON_VALUE
FROM CONTENT AS CON
WHERE CON.CON_ID = APP_CACHE_VIEW.PRO_UID AND CON.CON_CATEGORY = 'PRO_TITLE' AND CON.CON_LANG = '" . SYS_LANG . "'
) AS PROCESS_TITLE,
APP_CACHE_VIEW.TAS_UID,
CONTASK.CON_VALUE AS TASK_TITLE,
CASE_CONSOLIDATED.DYN_UID
FROM CASE_CONSOLIDATED
LEFT JOIN CONTENT AS CONTASK ON (CASE_CONSOLIDATED.TAS_UID = CONTASK.CON_ID AND CONTASK.CON_CATEGORY = 'TAS_TITLE' AND CONTASK.CON_LANG = '" . SYS_LANG . "')
LEFT JOIN APP_CACHE_VIEW ON (CASE_CONSOLIDATED.TAS_UID = APP_CACHE_VIEW.TAS_UID)
WHERE APP_CACHE_VIEW.USR_UID = '$usrUid' AND
APP_CACHE_VIEW.DEL_THREAD_STATUS = 'OPEN' AND
APP_CACHE_VIEW.APP_STATUS = 'TO_DO'
GROUP BY APP_CACHE_VIEW.TAS_UID";
$rsSql = $stmt->executeQuery($sql, ResultSet::FETCHMODE_ASSOC);
$criteria = new Criteria();
$criteria->addAsColumn('NUMREC', 'COUNT(' . ListInboxPeer::TAS_UID . ')');
$criteria->addSelectColumn(ListInboxPeer::PRO_UID);
$criteria->addSelectColumn(ProcessPeer::PRO_TITLE);
$criteria->addSelectColumn(ListInboxPeer::TAS_UID);
$criteria->addSelectColumn(TaskPeer::TAS_TITLE);
$criteria->addSelectColumn(CaseConsolidatedCorePeer::DYN_UID);
$criteria->addJoin(CaseConsolidatedCorePeer::TAS_UID, ListInboxPeer::TAS_UID, Criteria::LEFT_JOIN);
$criteria->addJoin(ListInboxPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN);
$criteria->addJoin(ListInboxPeer::TAS_UID, TaskPeer::TAS_UID, Criteria::LEFT_JOIN);
$criteria->add(ListInboxPeer::USR_UID, $usrUid, Criteria::EQUAL);
$criteria->add(ListInboxPeer::APP_STATUS, 'TO_DO', Criteria::EQUAL);
$criteria->addGroupByColumn(ListInboxPeer::TAS_UID);
$rsSql = CaseConsolidatedCorePeer::doSelectRS($criteria);
$rsSql->setFetchmode(ResultSet::FETCHMODE_ASSOC);
while ($rsSql->next()) {
$row = $rsSql->getRow();
$processUid = $row["PRO_UID"];
$proTitle = $row["PROCESS_TITLE"];
$taskUid = $row["TAS_UID"];
$taskTitle = $row["TASK_TITLE"];
$dynaformUid = $row["DYN_UID"];
$processUid = $row['PRO_UID'];
$proTitle = $row['PRO_TITLE'];
$taskUid = $row['TAS_UID'];
$taskTitle = $row['TAS_TITLE'];
$dynaformUid = $row['DYN_UID'];
$tabTitle = $taskTitle . " (" . (($activeNumRows > 0)? $row["NUMREC"] : 0) . ")";
$tabTitle = $taskTitle . " (" . (($activeNumRows > 0) ? $row["NUMREC"] : 0) . ")";
$grdTitle = htmlentities($proTitle . " / " . $tabTitle, ENT_QUOTES, "UTF-8");
$tabTitle = htmlentities(substr($proTitle, 0, 25) . ((strlen($proTitle) > 25)? "..." : null) . " / " . $tabTitle, ENT_QUOTES, "UTF-8");
$tabTitle = htmlentities(substr($proTitle, 0, 25) . ((strlen($proTitle) > 25) ? "..." : null) . " / " . $tabTitle, ENT_QUOTES, "UTF-8");
$oProcess = new Process();
$isBpmn = $oProcess->isBpmnProcess($processUid);
if($isBpmn){
$isBpmn = $oProcess->isBpmnProcess($processUid);
if ($isBpmn) {
$arrayTabItem[] = "
{
title: \"<span onmouseover=\\\"toolTipTab('$grdTitle', 1);\\\" onmouseout=\\\"toolTipTab('', 0);\\\">$tabTitle</span>\",
@@ -116,7 +73,7 @@ while ($rsSql->next()) {
}
}
}";
}else{
} else {
$arrayTabItem[] = "
{
title: \"<span onmouseover=\\\"toolTipTab('$grdTitle', 1);\\\" onmouseout=\\\"toolTipTab('', 0);\\\">$tabTitle</span>\",
@@ -188,30 +145,20 @@ if (count($arrayTabItem) > 0) {
echo "<span style=\"font: 0.75em normal arial, verdana, helvetica, sans-serif;\">" . G::LoadTranslation("ID_NO_RECORDS_FOUND") . "</span>";
}
function getProcessArray($action, $userUid)
{
$processes = array();
$processes[] = array("", G::LoadTranslation("ID_ALL_PROCESS"));
$cProcess = new Criteria("workflow");
switch ($action) {
case "simple_search":
case "search":
//In search action, the query to obtain all process is too slow, so we need to query directly to
//process and content tables, and for that reason we need the current language in AppCacheView.
G::loadClass("configuration");
$oConf = new Configurations;
$oConf->loadConfig($x, "APP_CACHE_VIEW_ENGINE", "", "", "", "");
$appCacheViewEngine = $oConf->aConfig;
$lang = isset($appCacheViewEngine["LANG"])? $appCacheViewEngine["LANG"] : "en";
$cProcess = new Criteria("workflow");
$cProcess->clearSelectColumns();
$cProcess->addSelectColumn(ProcessPeer::PRO_UID);
$cProcess->addSelectColumn(ProcessPeer::PRO_TITLE);
$del = DBAdapter::getStringDelimiter();
$cProcess->add(ProcessPeer::PRO_STATUS, "ACTIVE");
$oDataset = ProcessPeer::doSelectRS($cProcess);
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
@@ -226,21 +173,19 @@ function getProcessArray($action, $userUid)
break;
case "consolidated":
default:
$oAppCache = new AppCacheView();
$cProcess = $oAppCache->getToDoListCriteria($userUid); //fast enough
break;
}
$cProcess->clearSelectColumns();
$cProcess->setDistinct();
$cProcess->addSelectColumn(AppCacheViewPeer::PRO_UID);
$cProcess->addSelectColumn(AppCacheViewPeer::APP_PRO_TITLE);
$oDataset = AppCacheViewPeer::doSelectRS($cProcess);
$cProcess->addSelectColumn(ProcessPeer::PRO_UID);
$cProcess->addSelectColumn(ProcessPeer::PRO_TITLE);
$oDataset = ProcessPeer::doSelectRS($cProcess);
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$oDataset->next();
while ($aRow = $oDataset->getRow()) {
$processes[] = array($aRow["PRO_UID"], $aRow["APP_PRO_TITLE"]);
$processes[] = array($aRow["PRO_UID"], $aRow["PRO_TITLE"]);
$oDataset->next();
}

View File

@@ -6,7 +6,6 @@ use \Smarty;
use \Criteria;
use \ReportTablePeer;
use \ResultSet;
use \AppCacheViewPeer;
use \CaseConsolidatedCorePeer;
use \ContentPeer;
@@ -31,15 +30,11 @@ class Consolidated
$criteria = new Criteria();
$criteria->addSelectColumn(CaseConsolidatedCorePeer::DYN_UID);
$criteria->addSelectColumn(\ReportTablePeer::REP_TAB_NAME);
$criteria->addAsColumn('CON_VALUE', \ReportTablePeer::REP_TAB_TITLE);
$criteria->addSelectColumn(\ReportTablePeer::REP_TAB_UID);
$criteria->addSelectColumn(ContentPeer::CON_VALUE);
$criteria->addSelectColumn(CaseConsolidatedCorePeer::CON_STATUS);
$criteria->addJoin( CaseConsolidatedCorePeer::REP_TAB_UID, ReportTablePeer::REP_TAB_UID, Criteria::LEFT_JOIN );
$criteria->addJoin( CaseConsolidatedCorePeer::REP_TAB_UID, ContentPeer::CON_ID, Criteria::LEFT_JOIN );
$criteria->add( ContentPeer::CON_CATEGORY, "REP_TAB_TITLE");
$criteria->add( ContentPeer::CON_LANG, SYS_LANG);
$criteria->add( CaseConsolidatedCorePeer::TAS_UID, $tas_uid, Criteria::EQUAL );
$criteria->add( CaseConsolidatedCorePeer::CON_STATUS, 'ACTIVE', Criteria::EQUAL );
@@ -74,7 +69,6 @@ class Consolidated
*/
public function postDerivate ($app_uid, $app_number, $del_index, $usr_uid, $fieldName='', $fieldValue='')
{
G::LoadClass("library");
G::LoadClass("wsBase");
G::LoadClass("case");
$ws = new \wsBase();
@@ -118,7 +112,7 @@ class Consolidated
$response = array();
$response["casesNumRec"] = \Library::getCasesNumRec($usr_uid);
$response["casesNumRec"] = self::getCasesNumRec($usr_uid);
if (is_array($res)) {
$response ["message"] = "<b>" . G::LoadTranslation("ID_CASE") . " " . $app_number . "</b> " .
@@ -130,6 +124,35 @@ class Consolidated
return $response;
}
/**
* @param $userUid
* @return int
*/
public static function getCasesNumRec($userUid)
{
$criteria = new Criteria("workflow");
$criteria->addSelectColumn(CaseConsolidatedCorePeer::CON_STATUS);
$criteria->add(CaseConsolidatedCorePeer::CON_STATUS, "ACTIVE");
$activeNumRec = CaseConsolidatedCorePeer::doCount($criteria);
$numRec = 0;
$criteria->clearSelectColumns();
$criteria->addAsColumn('NUMREC', 'COUNT(' . \ListInboxPeer::TAS_UID . ')');
$criteria->addJoin(CaseConsolidatedCorePeer::TAS_UID, \ListInboxPeer::TAS_UID, \Criteria::LEFT_JOIN);
$criteria->add(\ListInboxPeer::USR_UID, $userUid, Criteria::EQUAL);
$criteria->add(\ListInboxPeer::APP_STATUS, 'TO_DO', Criteria::EQUAL);
$rsSql = CaseConsolidatedCorePeer::doSelectRS($criteria);
$rsSql->setFetchmode(ResultSet::FETCHMODE_ASSOC);
while ($rsSql->next()) {
$row = $rsSql->getRow();
$numRec = $row["NUMREC"];
}
$numRec = ($activeNumRec > 0) ? $numRec : 0;
return $numRec;
}
/**
* Put Data Generate
@@ -235,11 +258,12 @@ class Consolidated
$response = array();
$searchFields = array();
//
$query = "SELECT REP_TAB_UID
FROM CASE_CONSOLIDATED
WHERE TAS_UID = '" . $tas_uid . "'";
$caseConsolidated = executeQuery($query);
$criteria = new Criteria();
$criteria->addSelectColumn(CaseConsolidatedCorePeer::REP_TAB_UID);
$criteria->add(CaseConsolidatedCorePeer::TAS_UID, $tas_uid, Criteria::EQUAL);
$caseConsolidated = CaseConsolidatedCorePeer::doSelectRS($criteria);
$caseConsolidated->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$tableUid = null;
$tableName = null;
@@ -273,12 +297,11 @@ class Consolidated
$oCriteria->addSelectColumn("*");
$oCriteria->addSelectColumn($tableName . ".APP_UID");
$oCriteria->addJoin($tableName . ".APP_UID", AppCacheViewPeer::APP_UID, Criteria::LEFT_JOIN);
$oCriteria->addJoin($tableName . ".APP_UID", \ListInboxPeer::APP_UID, \Criteria::LEFT_JOIN);
$oCriteria->add(AppCacheViewPeer::DEL_THREAD_STATUS, "OPEN");
$oCriteria->add(AppCacheViewPeer::TAS_UID, $tas_uid);
$oCriteria->add(AppCacheViewPeer::USR_UID, $usr_uid);
$oCriteria->add(AppCacheViewPeer::APP_STATUS, "TO_DO");
$oCriteria->add(\ListInboxPeer::TAS_UID, $tas_uid);
$oCriteria->add(\ListInboxPeer::USR_UID, $usr_uid);
$oCriteria->add(\ListInboxPeer::APP_STATUS, "TO_DO");
if ($search != "") {
$filename = $pro_uid . PATH_SEP . $dyn_uid . ".xml";
@@ -333,10 +356,10 @@ class Consolidated
if ($oTmpCriteria != null) {
$oCriteria->add(
$oCriteria->getNewCriterion(AppCacheViewPeer::APP_NUMBER, $search, Criteria::LIKE)->addOr($oTmpCriteria)
$oCriteria->getNewCriterion(\ListInboxPeer::APP_NUMBER, $search, Criteria::LIKE)->addOr($oTmpCriteria)
);
} else {
$oCriteria->add($oCriteria->getNewCriterion(AppCacheViewPeer::APP_NUMBER, $search, Criteria::LIKE));
$oCriteria->add($oCriteria->getNewCriterion(\ListInboxPeer::APP_NUMBER, $search, Criteria::LIKE));
}
}
@@ -344,7 +367,7 @@ class Consolidated
$filter = new \InputFilter();
if ($sort != "") {
$reportTable = new ReportTables();
$reportTable = new \ReportTables();
$arrayReportTableVar = $reportTable->getTableVars($tableUid);
$tableName = $filter->validateInput($tableName);
$sort = $filter->validateInput($sort);
@@ -352,7 +375,7 @@ class Consolidated
$sort = strtoupper($sort);
eval('$field = ' . $tableName . 'Peer::' . $sort . ';');
} else {
eval('$field = AppCacheViewPeer::' . $sort . ';');
eval('$field = \ListInboxPeer::' . $sort . ';');
}
if ($dir == "ASC") {
@@ -361,7 +384,7 @@ class Consolidated
$oCriteria->addDescendingOrderByColumn($field);
}
} else {
$oCriteria->addDescendingOrderByColumn(AppCacheViewPeer::APP_NUMBER);
$oCriteria->addDescendingOrderByColumn(\ListInboxPeer::APP_NUMBER);
}
//pagination pagination attributes
@@ -369,7 +392,7 @@ class Consolidated
$oCriteria->setOffset($start);
//end of pagination attributes
$oDataset = AppCacheViewPeer::doSelectRS($oCriteria);
$oDataset = \ListInboxPeer::doSelectRS($oCriteria);
//eval('$oDataset = '.$className.'Peer::doSelectRS($oCriteria);');
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
@@ -404,17 +427,15 @@ class Consolidated
$response["data"][] = $val;
}
$query = "SELECT COUNT(APP_CACHE_VIEW.TAS_UID) AS QTY
FROM CASE_CONSOLIDATED
LEFT JOIN CONTENT ON (CASE_CONSOLIDATED.TAS_UID = CONTENT.CON_ID)
LEFT JOIN APP_CACHE_VIEW ON (CASE_CONSOLIDATED.TAS_UID = APP_CACHE_VIEW.TAS_UID)
LEFT JOIN TASK ON (CASE_CONSOLIDATED.TAS_UID = TASK.TAS_UID)
WHERE CONTENT.CON_CATEGORY = 'TAS_TITLE' AND
CONTENT.CON_LANG = 'en' AND
APP_CACHE_VIEW.DEL_THREAD_STATUS = 'OPEN' AND
USR_UID = '" . $usr_uid . "' AND
APP_CACHE_VIEW.TAS_UID = '" . $tas_uid . "'";
$count = executeQuery($query);
$criteria = new Criteria();
$criteria->addAsColumn('QTY', 'COUNT(' . \ListInboxPeer::TAS_UID . ')');
$criteria->addJoin(\CaseConsolidatedCorePeer::TAS_UID, \TaskPeer::TAS_UID, \Criteria::LEFT_JOIN);
$criteria->addJoin(\CaseConsolidatedCorePeer::TAS_UID, \ListInboxPeer::TAS_UID, \Criteria::LEFT_JOIN);
$criteria->add(\ListInboxPeer::USR_UID, $usr_uid, \Criteria::EQUAL);
$criteria->add(\ListInboxPeer::TAS_UID, $tas_uid, \Criteria::EQUAL);
$criteria->add(\ListInboxPeer::APP_STATUS, 'TO_DO', \Criteria::EQUAL);
$count = CaseConsolidatedCorePeer::doSelectRS($criteria);
$count->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$totalCount = 0;
foreach ($count as $item) {
@@ -1115,10 +1136,9 @@ class Consolidated
{
$criteria = new Criteria();
$criteria->add(\CaseConsolidatedCorePeer::CON_STATUS, 'ACTIVE');
$criteria->addJoin(\CaseConsolidatedCorePeer::TAS_UID, \AppCacheViewPeer::TAS_UID, Criteria::LEFT_JOIN);
$criteria->add(\AppCacheViewPeer::USR_UID, $usrUid);
$criteria->add(\AppCacheViewPeer::DEL_THREAD_STATUS, 'OPEN');
$criteria->add(\AppCacheViewPeer::APP_STATUS, 'TO_DO');
$criteria->addJoin(\CaseConsolidatedCorePeer::TAS_UID, \ListInboxPeer::TAS_UID, Criteria::LEFT_JOIN);
$criteria->add(\ListInboxPeer::USR_UID, $usrUid, Criteria::EQUAL);
$criteria->add(\ListInboxPeer::APP_STATUS, 'TO_DO',Criteria::EQUAL);
$total = \CaseConsolidatedCorePeer::doCount($criteria);
return (int)$total;
}