Observations in the PR

This commit is contained in:
Paula Quispe
2017-06-02 12:26:03 -04:00
parent c07b0fd2e9
commit 55400368dc
5 changed files with 54 additions and 113 deletions

View File

@@ -476,36 +476,9 @@ class ListInbox extends BaseListInbox
if (!empty($caseLink)) { if (!empty($caseLink)) {
$criteria->add(ListInboxPeer::APP_UID, $search, Criteria::EQUAL); $criteria->add(ListInboxPeer::APP_UID, $search, Criteria::EQUAL);
} else { } else {
$oTmpCriteria = '';
//If we have additional tables configured in the custom cases list, prepare the variables for search //If we have additional tables configured in the custom cases list, prepare the variables for search
if (count($additionalColumns) > 0) { $casesList = new \ProcessMaker\BusinessModel\Cases();
require_once(PATH_DATA_SITE . 'classes' . PATH_SEP . $this->additionalClassName . '.php'); $casesList->getSearchCriteriaListCases($criteria, 'ListInboxPeer', $search, $this->additionalClassName, $additionalColumns);
$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_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

@@ -287,34 +287,8 @@ class ListParticipatedLast extends BaseListParticipatedLast
$criteria->add(ListParticipatedLastPeer::APP_UID, $search, Criteria::EQUAL); $criteria->add(ListParticipatedLastPeer::APP_UID, $search, Criteria::EQUAL);
} else { } else {
//If we have additional tables configured in the custom cases list, prepare the variables for search //If we have additional tables configured in the custom cases list, prepare the variables for search
if (count($additionalColumns) > 0) { $casesList = new \ProcessMaker\BusinessModel\Cases();
require_once(PATH_DATA_SITE . 'classes' . PATH_SEP . $this->additionalClassName . '.php'); $casesList->getSearchCriteriaListCases($criteria, 'ListParticipatedLastPeer', $search, $this->additionalClassName, $additionalColumns);
$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_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

@@ -246,34 +246,8 @@ class ListPaused extends BaseListPaused
$criteria->add(ListPausedPeer::APP_UID, $search, Criteria::EQUAL); $criteria->add(ListPausedPeer::APP_UID, $search, Criteria::EQUAL);
} else { } else {
//If we have additional tables configured in the custom cases list, prepare the variables for search //If we have additional tables configured in the custom cases list, prepare the variables for search
if (count($additionalColumns) > 0) { $casesList = new \ProcessMaker\BusinessModel\Cases();
require_once(PATH_DATA_SITE . 'classes' . PATH_SEP . $this->additionalClassName . '.php'); $casesList->getSearchCriteriaListCases($criteria, 'ListPausedPeer', $search, $this->additionalClassName, $additionalColumns);
$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_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

@@ -190,34 +190,8 @@ class ListUnassigned extends BaseListUnassigned
$criteria->add(ListUnassignedPeer::APP_UID, $search, Criteria::EQUAL); $criteria->add(ListUnassignedPeer::APP_UID, $search, Criteria::EQUAL);
} else { } else {
//If we have additional tables configured in the custom cases list, prepare the variables for search //If we have additional tables configured in the custom cases list, prepare the variables for search
if (count($additionalColumns) > 0) { $casesList = new \ProcessMaker\BusinessModel\Cases();
require_once(PATH_DATA_SITE . 'classes' . PATH_SEP . $this->additionalClassName . '.php'); $casesList->getSearchCriteriaListCases($criteria, 'ListUnassignedPeer', $search, $this->additionalClassName, $additionalColumns);
$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_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))))
);
}
} }
} }

View File

@@ -3283,4 +3283,50 @@ class Cases
} }
return $delIndex; return $delIndex;
} }
/**
* This function will be return the criteria for the search filter
*
* We considered in the search criteria the custom cases list,
* the titles related to: caseTitle taskTitle processTitle and
* the case number
* @param Criteria $criteria, must be contain the initial criteria for search
* @param string $listPeer, name of the list class
* @param string $search, the parameter for search in the table
* @param string $additionalClassName, name of the className of pmtable
* @param array $additionalColumns, columns related to the custom cases list
* @throws PropelException
*/
public function getSearchCriteriaListCases(&$criteria, $listPeer ,$search, $additionalClassName = '', $additionalColumns = array() )
{
$oTmpCriteria = '';
//If we have additional tables configured in the custom cases list, prepare the variables for search
if (count($additionalColumns) > 0) {
require_once(PATH_DATA_SITE . 'classes' . PATH_SEP . $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($listPeer::APP_TITLE, '%' . $search . '%', \Criteria::LIKE)->addOr(
$criteria->getNewCriterion($listPeer::APP_TAS_TITLE, '%' . $search . '%', \Criteria::LIKE)->addOr(
$criteria->getNewCriterion($listPeer::APP_PRO_TITLE, '%' . $search . '%', \Criteria::LIKE)->addOr(
$criteria->getNewCriterion($listPeer::APP_NUMBER, $search, \Criteria::EQUAL)->addOr(
$oTmpCriteria
))))
);
} else {
$criteria->add(
$criteria->getNewCriterion($listPeer::APP_TITLE, '%' . $search . '%', \Criteria::LIKE)->addOr(
$criteria->getNewCriterion($listPeer::APP_TAS_TITLE, '%' . $search . '%', \Criteria::LIKE)->addOr(
$criteria->getNewCriterion($listPeer::APP_PRO_TITLE, '%' . $search . '%', \Criteria::LIKE)->addOr(
$criteria->getNewCriterion($listPeer::APP_NUMBER, $search, \Criteria::EQUAL))))
);
}
}
} }