HOR-2814: Observations related to search with APP_UID

This commit is contained in:
Paula Quispe
2017-05-31 10:53:22 -04:00
parent e815883262
commit 61a3b373f4
4 changed files with 155 additions and 192 deletions

View File

@@ -394,17 +394,18 @@ class ListInbox extends BaseListInbox
*/ */
public function loadFilters(&$criteria, $filters, $additionalColumns = array()) public function loadFilters(&$criteria, $filters, $additionalColumns = array())
{ {
$action = isset($filters['action']) ? $filters['action'] : ""; $action = isset($filters['action']) ? $filters['action'] : '';
$usrUid = isset($filters['usr_uid']) ? $filters['usr_uid'] : ""; $usrUid = isset($filters['usr_uid']) ? $filters['usr_uid'] : '';
$filter = isset($filters['filter']) ? $filters['filter'] : ""; $filter = isset($filters['filter']) ? $filters['filter'] : '';
$search = isset($filters['search']) ? $filters['search'] : ""; $search = isset($filters['search']) ? $filters['search'] : '';
$process = isset($filters['process']) ? $filters['process'] : ""; $caseLink = isset($filters['caseLink']) ? $filters['caseLink'] : '';
$category = isset($filters['category']) ? $filters['category'] : ""; $process = isset($filters['process']) ? $filters['process'] : '';
$dateFrom = isset($filters['dateFrom']) ? $filters['dateFrom'] : ""; $category = isset($filters['category']) ? $filters['category'] : '';
$dateTo = isset($filters['dateTo']) ? $filters['dateTo'] : ""; $dateFrom = isset($filters['dateFrom']) ? $filters['dateFrom'] : '';
$filterStatus = isset($filters['filterStatus']) ? $filters['filterStatus'] : ""; $dateTo = isset($filters['dateTo']) ? $filters['dateTo'] : '';
$newestthan = isset($filters['newestthan']) ? $filters['newestthan'] : ''; $filterStatus = isset($filters['filterStatus']) ? $filters['filterStatus'] : '';
$oldestthan = isset($filters['oldestthan']) ? $filters['oldestthan'] : ''; $newestthan = isset($filters['newestthan']) ? $filters['newestthan'] : '';
$oldestthan = isset($filters['oldestthan']) ? $filters['oldestthan'] : '';
//Check the inbox to call //Check the inbox to call
switch ($action) { switch ($action) {
@@ -471,54 +472,40 @@ class ListInbox extends BaseListInbox
//Filter Search //Filter Search
if ($search != '') { if ($search != '') {
$oTmpCriteria = ''; //Check if we need to search to the APP_UID
//If we have additional tables configured in the custom cases list, prepare the variables for search if (!empty($caseLink)) {
if (count($additionalColumns) > 0) { $criteria->add(ListInboxPeer::APP_UID, $search, Criteria::EQUAL);
require_once(PATH_DATA_SITE . 'classes' . PATH_SEP . $this->additionalClassName . '.php');
$oNewCriteria = new Criteria("workflow");
$oTmpCriteria = $oNewCriteria->getNewCriterion(current($additionalColumns), "%" . $search . "%", Criteria::LIKE);
//We prepare the query related to the custom cases list
foreach (array_slice($additionalColumns, 1) as $value) {
$oTmpCriteria = $oNewCriteria->getNewCriterion($value, "%" . $search . "%", Criteria::LIKE)->addOr($oTmpCriteria);
}
}
if (!empty($oTmpCriteria)) {
$criteria->add(
$criteria->getNewCriterion(ListInboxPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE)
->addOr(
$criteria->getNewCriterion(ListInboxPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE)
->addOr(
$criteria->getNewCriterion(ListInboxPeer::APP_PRO_TITLE, '%' . $search . '%', Criteria::LIKE)
->addOr(
$criteria->getNewCriterion(ListInboxPeer::APP_UID, $search, Criteria::EQUAL)
->addOr(
$criteria->getNewCriterion(ListInboxPeer::APP_NUMBER, $search, Criteria::EQUAL)
->addOr(
$oTmpCriteria
)
)
)
)
)
);
} else { } else {
$criteria->add( $oTmpCriteria = '';
$criteria->getNewCriterion(ListInboxPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE) //If we have additional tables configured in the custom cases list, prepare the variables for search
->addOr( if (count($additionalColumns) > 0) {
$criteria->getNewCriterion(ListInboxPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE) require_once(PATH_DATA_SITE . 'classes' . PATH_SEP . $this->additionalClassName . '.php');
->addOr( $oNewCriteria = new Criteria("workflow");
$criteria->getNewCriterion(ListInboxPeer::APP_PRO_TITLE, '%' . $search . '%', Criteria::LIKE) $oTmpCriteria = $oNewCriteria->getNewCriterion(current($additionalColumns), "%" . $search . "%", Criteria::LIKE);
->addOr(
$criteria->getNewCriterion(ListInboxPeer::APP_UID, $search, Criteria::EQUAL) //We prepare the query related to the custom cases list
->addOr( foreach (array_slice($additionalColumns, 1) as $value) {
$criteria->getNewCriterion(ListInboxPeer::APP_NUMBER, $search, Criteria::EQUAL) $oTmpCriteria = $oNewCriteria->getNewCriterion($value, "%" . $search . "%", Criteria::LIKE)->addOr($oTmpCriteria);
) }
) }
)
) if (!empty($oTmpCriteria)) {
); $criteria->add(
$criteria->getNewCriterion(ListInboxPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListInboxPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListInboxPeer::APP_PRO_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListInboxPeer::APP_NUMBER, $search, Criteria::EQUAL)->addOr(
$oTmpCriteria
))))
);
} else {
$criteria->add(
$criteria->getNewCriterion(ListInboxPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListInboxPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListInboxPeer::APP_PRO_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListInboxPeer::APP_NUMBER, $search, Criteria::EQUAL))))
);
}
} }
} }

View File

@@ -246,6 +246,7 @@ class ListParticipatedLast extends BaseListParticipatedLast
{ {
$filter = isset($filters['filter']) ? $filters['filter'] : ''; $filter = isset($filters['filter']) ? $filters['filter'] : '';
$search = isset($filters['search']) ? $filters['search'] : ''; $search = isset($filters['search']) ? $filters['search'] : '';
$caseLink = isset($filters['caseLink']) ? $filters['caseLink'] : '';
$process = isset($filters['process']) ? $filters['process'] : ''; $process = isset($filters['process']) ? $filters['process'] : '';
$category = isset($filters['category']) ? $filters['category'] : ''; $category = isset($filters['category']) ? $filters['category'] : '';
$dateFrom = isset($filters['dateFrom']) ? $filters['dateFrom'] : ''; $dateFrom = isset($filters['dateFrom']) ? $filters['dateFrom'] : '';
@@ -281,48 +282,39 @@ class ListParticipatedLast extends BaseListParticipatedLast
//Filter Search //Filter Search
if ($search != '') { if ($search != '') {
//If we have additional tables configured in the custom cases list, prepare the variables for search //Check if we need to search to the APP_UID
if (count($additionalColumns) > 0) { if (!empty($caseLink)) {
require_once(PATH_DATA_SITE . 'classes' . PATH_SEP . $this->additionalClassName . '.php'); $criteria->add(ListParticipatedLastPeer::APP_UID, $search, Criteria::EQUAL);
$oNewCriteria = new Criteria("workflow");
$oTmpCriteria = $oNewCriteria->getNewCriterion(current($additionalColumns), "%" . $search . "%", Criteria::LIKE);
//We prepare the query related to the custom cases list
foreach (array_slice($additionalColumns, 1) as $value) {
$oTmpCriteria = $oNewCriteria->getNewCriterion($value, "%" . $search . "%", Criteria::LIKE)->addOr($oTmpCriteria);
}
}
if (!empty($oTmpCriteria)) {
$criteria->add(
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE)
->addOr(
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE)
->addOr(
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_UID, $search, Criteria::EQUAL)
->addOr(
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_NUMBER, $search, Criteria::EQUAL)
->addOr(
$oTmpCriteria
)
)
)
)
);
} else { } else {
$criteria->add( //If we have additional tables configured in the custom cases list, prepare the variables for search
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE) if (count($additionalColumns) > 0) {
->addOr( require_once(PATH_DATA_SITE . 'classes' . PATH_SEP . $this->additionalClassName . '.php');
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE) $oNewCriteria = new Criteria("workflow");
->addOr( $oTmpCriteria = $oNewCriteria->getNewCriterion(current($additionalColumns), "%" . $search . "%", Criteria::LIKE);
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_UID, $search, Criteria::EQUAL)
->addOr( //We prepare the query related to the custom cases list
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_NUMBER, $search, Criteria::EQUAL) foreach (array_slice($additionalColumns, 1) as $value) {
) $oTmpCriteria = $oNewCriteria->getNewCriterion($value, "%" . $search . "%", Criteria::LIKE)->addOr($oTmpCriteria);
) }
) }
);
if (!empty($oTmpCriteria)) {
$criteria->add(
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_PRO_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_NUMBER, $search, Criteria::EQUAL)->addOr(
$oTmpCriteria
))))
);
} else {
$criteria->add(
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_PRO_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListParticipatedLastPeer::APP_NUMBER, $search, Criteria::EQUAL))))
);
}
} }
} }

View File

@@ -222,11 +222,12 @@ class ListPaused extends BaseListPaused
*/ */
public function loadFilters(&$criteria, $filters, $additionalColumns = array()) public function loadFilters(&$criteria, $filters, $additionalColumns = array())
{ {
$filter = isset($filters['filter']) ? $filters['filter'] : ""; $filter = isset($filters['filter']) ? $filters['filter'] : '';
$search = isset($filters['search']) ? $filters['search'] : ""; $search = isset($filters['search']) ? $filters['search'] : '';
$process = isset($filters['process']) ? $filters['process'] : ""; $caseLink = isset($filters['caseLink']) ? $filters['caseLink'] : '';
$category = isset($filters['category']) ? $filters['category'] : ""; $process = isset($filters['process']) ? $filters['process'] : '';
$filterStatus = isset($filters['filterStatus']) ? $filters['filterStatus'] : ""; $category = isset($filters['category']) ? $filters['category'] : '';
$filterStatus = isset($filters['filterStatus']) ? $filters['filterStatus'] : '';
//Filter Read Unread All //Filter Read Unread All
switch ($filter) { switch ($filter) {
@@ -240,48 +241,39 @@ class ListPaused extends BaseListPaused
//Filter Search //Filter Search
if ($search != '') { if ($search != '') {
//If we have additional tables configured in the custom cases list, prepare the variables for search //Check if we need to search to the APP_UID
if (count($additionalColumns) > 0) { if (!empty($caseLink)) {
require_once(PATH_DATA_SITE . 'classes' . PATH_SEP . $this->additionalClassName . '.php'); $criteria->add(ListPausedPeer::APP_UID, $search, Criteria::EQUAL);
$oNewCriteria = new Criteria("workflow");
$oTmpCriteria = $oNewCriteria->getNewCriterion(current($additionalColumns), "%" . $search . "%", Criteria::LIKE);
//We prepare the query related to the custom cases list
foreach (array_slice($additionalColumns, 1) as $value) {
$oTmpCriteria = $oNewCriteria->getNewCriterion($value, "%" . $search . "%", Criteria::LIKE)->addOr($oTmpCriteria);
}
}
if (!empty($oTmpCriteria)) {
$criteria->add(
$criteria->getNewCriterion(ListPausedPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE)
->addOr(
$criteria->getNewCriterion(ListPausedPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE)
->addOr(
$criteria->getNewCriterion(ListPausedPeer::APP_UID, $search, Criteria::EQUAL)
->addOr(
$criteria->getNewCriterion(ListPausedPeer::APP_NUMBER, $search, Criteria::EQUAL)
->addOr(
$oTmpCriteria
)
)
)
)
);
} else { } else {
$criteria->add( //If we have additional tables configured in the custom cases list, prepare the variables for search
$criteria->getNewCriterion(ListPausedPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE) if (count($additionalColumns) > 0) {
->addOr( require_once(PATH_DATA_SITE . 'classes' . PATH_SEP . $this->additionalClassName . '.php');
$criteria->getNewCriterion(ListPausedPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE) $oNewCriteria = new Criteria("workflow");
->addOr( $oTmpCriteria = $oNewCriteria->getNewCriterion(current($additionalColumns), "%" . $search . "%", Criteria::LIKE);
$criteria->getNewCriterion(ListPausedPeer::APP_UID, $search, Criteria::EQUAL)
->addOr( //We prepare the query related to the custom cases list
$criteria->getNewCriterion(ListPausedPeer::APP_NUMBER, $search, Criteria::EQUAL) foreach (array_slice($additionalColumns, 1) as $value) {
) $oTmpCriteria = $oNewCriteria->getNewCriterion($value, "%" . $search . "%", Criteria::LIKE)->addOr($oTmpCriteria);
) }
) }
);
if (!empty($oTmpCriteria)) {
$criteria->add(
$criteria->getNewCriterion(ListPausedPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListPausedPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListPausedPeer::APP_PRO_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListPausedPeer::APP_NUMBER, $search, Criteria::EQUAL)->addOr(
$oTmpCriteria
))))
);
} else {
$criteria->add(
$criteria->getNewCriterion(ListPausedPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListPausedPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListPausedPeer::APP_PRO_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListPausedPeer::APP_NUMBER, $search, Criteria::EQUAL))))
);
}
} }
} }

View File

@@ -175,57 +175,49 @@ class ListUnassigned extends BaseListUnassigned
*/ */
public function loadFilters(&$criteria, $filters, $additionalColumns = array()) public function loadFilters(&$criteria, $filters, $additionalColumns = array())
{ {
$filter = isset($filters['filter']) ? $filters['filter'] : ""; $filter = isset($filters['filter']) ? $filters['filter'] : '';
$search = isset($filters['search']) ? $filters['search'] : ""; $search = isset($filters['search']) ? $filters['search'] : '';
$process = isset($filters['process']) ? $filters['process'] : ""; $caseLink = isset($filters['caseLink']) ? $filters['caseLink'] : '';
$category = isset($filters['category']) ? $filters['category'] : ""; $process = isset($filters['process']) ? $filters['process'] : '';
$dateFrom = isset($filters['dateFrom']) ? $filters['dateFrom'] : ""; $category = isset($filters['category']) ? $filters['category'] : '';
$dateTo = isset($filters['dateTo']) ? $filters['dateTo'] : ""; $dateFrom = isset($filters['dateFrom']) ? $filters['dateFrom'] : '';
$dateTo = isset($filters['dateTo']) ? $filters['dateTo'] : '';
//Filter Search //Filter Search
if ($search != '') { if ($search != '') {
//If we have additional tables configured in the custom cases list, prepare the variables for search //Check if we need to search to the APP_UID
if (count($additionalColumns) > 0) { if (!empty($caseLink)) {
require_once(PATH_DATA_SITE . 'classes' . PATH_SEP . $this->additionalClassName . '.php'); $criteria->add(ListUnassignedPeer::APP_UID, $search, Criteria::EQUAL);
$oNewCriteria = new Criteria("workflow");
$oTmpCriteria = $oNewCriteria->getNewCriterion(current($additionalColumns), "%" . $search . "%", Criteria::LIKE);
//We prepare the query related to the custom cases list
foreach (array_slice($additionalColumns, 1) as $value) {
$oTmpCriteria = $oNewCriteria->getNewCriterion($value, "%" . $search . "%", Criteria::LIKE)->addOr($oTmpCriteria);
}
}
if (!empty($oTmpCriteria)) {
$criteria->add(
$criteria->getNewCriterion(ListUnassignedPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE)
->addOr(
$criteria->getNewCriterion(ListUnassignedPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE)
->addOr(
$criteria->getNewCriterion(ListUnassignedPeer::APP_UID, $search, Criteria::EQUAL)
->addOr(
$criteria->getNewCriterion(ListUnassignedPeer::APP_NUMBER, $search, Criteria::EQUAL)
->addOr(
$oTmpCriteria
)
)
)
)
);
} else { } else {
$criteria->add( //If we have additional tables configured in the custom cases list, prepare the variables for search
$criteria->getNewCriterion(ListUnassignedPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE) if (count($additionalColumns) > 0) {
->addOr( require_once(PATH_DATA_SITE . 'classes' . PATH_SEP . $this->additionalClassName . '.php');
$criteria->getNewCriterion(ListUnassignedPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE) $oNewCriteria = new Criteria("workflow");
->addOr( $oTmpCriteria = $oNewCriteria->getNewCriterion(current($additionalColumns), "%" . $search . "%", Criteria::LIKE);
$criteria->getNewCriterion(ListUnassignedPeer::APP_UID, $search, Criteria::EQUAL)
->addOr( //We prepare the query related to the custom cases list
$criteria->getNewCriterion(ListUnassignedPeer::APP_NUMBER, $search, Criteria::EQUAL) foreach (array_slice($additionalColumns, 1) as $value) {
) $oTmpCriteria = $oNewCriteria->getNewCriterion($value, "%" . $search . "%", Criteria::LIKE)->addOr($oTmpCriteria);
) }
) }
);
if (!empty($oTmpCriteria)) {
$criteria->add(
$criteria->getNewCriterion(ListUnassignedPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListUnassignedPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListUnassignedPeer::APP_PRO_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListUnassignedPeer::APP_NUMBER, $search, Criteria::EQUAL)->addOr(
$oTmpCriteria
))))
);
} else {
$criteria->add(
$criteria->getNewCriterion(ListUnassignedPeer::APP_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListUnassignedPeer::APP_TAS_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListUnassignedPeer::APP_PRO_TITLE, '%' . $search . '%', Criteria::LIKE)->addOr(
$criteria->getNewCriterion(ListUnassignedPeer::APP_NUMBER, $search, Criteria::EQUAL))))
);
}
} }
} }