diff --git a/workflow/engine/classes/model/AppDelegation.php b/workflow/engine/classes/model/AppDelegation.php index c28d594a6..06cc09dde 100755 --- a/workflow/engine/classes/model/AppDelegation.php +++ b/workflow/engine/classes/model/AppDelegation.php @@ -576,5 +576,30 @@ class AppDelegation extends BaseAppDelegation $data = $oRuleSet->getRow(); return $data['TAS_UID']; } + + /** + * Verify if the current case is already routed. + * + * @param string $AppUid the uid of the application + * @return array $Fields the fields + */ + + public function alreadyRouted ($appUid, $sDelIndex) + { + $c = new Criteria("workflow"); + $c->clearSelectColumns(); + $c->addSelectColumn(AppDelegationPeer::APP_UID); + $c->add(AppDelegationPeer::APP_UID, $appUid); + $c->add(AppDelegationPeer::DEL_INDEX, $sDelIndex); + $c->add(AppDelegationPeer::DEL_FINISH_DATE, null, Criteria::ISNOTNULL); + $result = AppDelegationPeer::doSelectRS($c); + $result->setFetchmode(ResultSet::FETCHMODE_ASSOC); + if($result->next()) { + return true; + } else { + return false; + } + } + } diff --git a/workflow/engine/methods/cases/cases_Step.php b/workflow/engine/methods/cases/cases_Step.php index 0ff76c553..872daac9e 100755 --- a/workflow/engine/methods/cases/cases_Step.php +++ b/workflow/engine/methods/cases/cases_Step.php @@ -1,4 +1,11 @@ alreadyRouted($_SESSION['APPLICATION'],$_SESSION['INDEX']) ) { + G::header('location: ../cases/casesListExtJs'); + die(); +} + if (!isset($_SESSION['USER_LOGGED'])) { G::SendTemporalMessage( 'ID_LOGIN_AGAIN', 'warning', 'labels' ); die( '