From 06f549299e95e3cc6a5693afb6defcc2fd6569f0 Mon Sep 17 00:00:00 2001 From: Paula Quispe Date: Fri, 13 Jan 2017 19:11:14 -0400 Subject: [PATCH] bugfixes --- workflow/engine/classes/class.applications.php | 15 +++++++++++++-- workflow/engine/classes/class.case.php | 2 +- workflow/engine/classes/class.processes.php | 4 +++- workflow/engine/classes/class.tasks.php | 4 +++- workflow/engine/methods/cases/casesList_Ajax.php | 10 +++++++++- workflow/engine/methods/cases/proxyCasesList.php | 4 +++- 6 files changed, 32 insertions(+), 7 deletions(-) diff --git a/workflow/engine/classes/class.applications.php b/workflow/engine/classes/class.applications.php index c22439d70..d27c348d2 100644 --- a/workflow/engine/classes/class.applications.php +++ b/workflow/engine/classes/class.applications.php @@ -10,7 +10,9 @@ class Applications $status = null, $dir = null, $sort = null, - $category = null + $category = null, + $dateFrom = null, + $dateTo =null ) { //Task Dummies $arrayTaskTypeToExclude = array("WEBENTRYEVENT", "END-MESSAGE-EVENT", "START-MESSAGE-EVENT", "INTERMEDIATE-THROW-MESSAGE-EVENT", "INTERMEDIATE-CATCH-MESSAGE-EVENT"); @@ -73,7 +75,9 @@ class Applications case "PAUSED": //This status is not considered in the search, maybe we can add in the new versions $newCriteria->add(ApplicationPeer::APP_STATUS, 'TO_DO'); break; - default: + default: //All status + $newCriteria->addOr(AppDelegationPeer::DEL_THREAD_STATUS, 'CLOSED'); + $newCriteria->add(AppDelegationPeer::DEL_LAST_INDEX, '1'); break; } if (!empty($userUid)) { @@ -91,6 +95,13 @@ class Applications ->addOr( $newCriteria->getNewCriterion( TaskPeer::TAS_TITLE, '%' . $search . '%', Criteria::LIKE ) ->addOr( $newCriteria->getNewCriterion( ApplicationPeer::APP_NUMBER, '%' . $search . '%', Criteria::LIKE ) ) ) ); } + if (!empty($dateFrom)){ + $newCriteria->add(AppDelegationPeer::DEL_DELEGATE_DATE, $dateFrom, Criteria::GREATER_EQUAL) ; + } + if (!empty($dateTo)){ + $dateTo = $dateTo . " 23:59:59"; + $newCriteria->addAnd(AppDelegationPeer::DEL_DELEGATE_DATE, $dateTo, Criteria::LESS_EQUAL) ; + } $newCriteria->add(TaskPeer::TAS_TYPE, $arrayTaskTypeToExclude, Criteria::NOT_IN); $totalCount = ApplicationPeer::doCount($newCriteria, false); diff --git a/workflow/engine/classes/class.case.php b/workflow/engine/classes/class.case.php index 471353499..8f51e82d5 100644 --- a/workflow/engine/classes/class.case.php +++ b/workflow/engine/classes/class.case.php @@ -1685,7 +1685,7 @@ class Cases $delPrevious, $appNumber, $tasId, - $user->getUsrId(), + (empty($user)) ? 0 : $user->getUsrId(), $proId ); //update searchindex diff --git a/workflow/engine/classes/class.processes.php b/workflow/engine/classes/class.processes.php index d52232315..6645fdfdd 100644 --- a/workflow/engine/classes/class.processes.php +++ b/workflow/engine/classes/class.processes.php @@ -1160,7 +1160,9 @@ class Processes public function getProcessRow($sProUid, $getAllLang = false) { $oProcess = new Process(); - return $oProcess->Load($sProUid, $getAllLang); + $pProcess = $oProcess->Load( $sProUid, $getAllLang ); + unset($pProcess['PRO_ID']); + return $pProcess; } /** diff --git a/workflow/engine/classes/class.tasks.php b/workflow/engine/classes/class.tasks.php index 48ff85128..e5427cd43 100644 --- a/workflow/engine/classes/class.tasks.php +++ b/workflow/engine/classes/class.tasks.php @@ -96,7 +96,9 @@ class Tasks $oDataset->next(); while ($aRow = $oDataset->getRow()) { $oTask = new Task(); - $aTasks[] = $oTask->load($aRow['TAS_UID']); + $pTask = $oTask->load($aRow['TAS_UID']); + unset($pTask['TAS_ID']); + $aTasks[] = $pTask; $oDataset->next(); } return $aTasks; diff --git a/workflow/engine/methods/cases/casesList_Ajax.php b/workflow/engine/methods/cases/casesList_Ajax.php index 6d4f47cb5..5f4fc39c4 100644 --- a/workflow/engine/methods/cases/casesList_Ajax.php +++ b/workflow/engine/methods/cases/casesList_Ajax.php @@ -114,7 +114,12 @@ if ($actionAjax == "processListExtJs") { $cProcess = new Criteria('workflow'); //get the processes for this user in this action $cProcess->clearSelectColumns(); - $cProcess->addSelectColumn(ProcessPeer::PRO_ID); + if($action == 'search'){ + $cProcess->addSelectColumn(ProcessPeer::PRO_ID); + } else { + $cProcess->addSelectColumn(ProcessPeer::PRO_UID); + } + $cProcess->addSelectColumn(ProcessPeer::PRO_TITLE); if ($categoryUid) { $cProcess->add(ProcessPeer::PRO_CATEGORY, $categoryUid); @@ -150,6 +155,9 @@ if ($actionAjax == "processListExtJs") { while ($oDataset->next()) { $aRow = $oDataset->getRow(); + if(!isset($aRow['PRO_UID'])){ + $aRow['PRO_UID'] = $aRow['PRO_ID']; + } $processes[] = $aRow; } return print G::json_encode($processes); diff --git a/workflow/engine/methods/cases/proxyCasesList.php b/workflow/engine/methods/cases/proxyCasesList.php index 79d477c6d..193cac94c 100644 --- a/workflow/engine/methods/cases/proxyCasesList.php +++ b/workflow/engine/methods/cases/proxyCasesList.php @@ -124,7 +124,9 @@ try { $filterStatus, $dir, (strpos($sort, ".") !== false)? $sort : "APPLICATION." . $sort, - $category + $category, + $dateFrom, + $dateTo ); $data['data'] = \ProcessMaker\Util\DateTime::convertUtcToTimeZone($data['data']);