diff --git a/workflow/engine/classes/class.case.php b/workflow/engine/classes/class.case.php index e779d85f6..e1d4d50b0 100755 --- a/workflow/engine/classes/class.case.php +++ b/workflow/engine/classes/class.case.php @@ -1973,6 +1973,7 @@ class Cases public function CloseCurrentDelegation($sAppUid, $iDelIndex) { try { + $oApplication = ApplicationPeer::retrieveByPk($sAppUid); $c = new Criteria(); $c->add(AppDelegationPeer::APP_UID, $sAppUid); $c->add(AppDelegationPeer::DEL_INDEX, $iDelIndex); @@ -1991,6 +1992,18 @@ class Cases } throw (new PropelException('The row cannot be created!', new PropelException($msg))); } + $taskNext = TaskPeer::retrieveByPK($appDel->getTasUid()); + if($taskNext->getTasType() == 'NORMAL'){ + if($oApplication->getAppStatus() == "DRAFT"){ + $sUserUid = $appDel->getUsrUid(); + $users = new Users(); + $users->refreshTotal($sUserUid, "remove", "draft"); + }else{ + $sUserUid = $appDel->getUsrUid(); + $users = new Users(); + $users->refreshTotal($sUserUid, "remove", "inbox"); + } + } } /*----------------------------------********---------------------------------*/ $inbox = new ListInbox(); diff --git a/workflow/engine/classes/class.derivation.php b/workflow/engine/classes/class.derivation.php index 7f7adcba9..0b911f184 100755 --- a/workflow/engine/classes/class.derivation.php +++ b/workflow/engine/classes/class.derivation.php @@ -653,9 +653,9 @@ class Derivation $application = ApplicationPeer::retrieveByPK($arrayApplicationData["APP_UID"]); if ($application->getAppStatus() == "DRAFT") { - $user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "draft"); + //$user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "draft"); } else { - $user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "inbox"); + //$user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "inbox"); } } else { if ($arrayNextDelegationData["TAS_UID"] != "-1") { @@ -683,9 +683,9 @@ class Derivation $application = ApplicationPeer::retrieveByPK($arrayApplicationData["APP_UID"]); if ($application->getAppStatus() == "DRAFT") { - $user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "draft"); + //$user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "draft"); } else { - $user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "inbox"); + //$user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "inbox"); } } } @@ -694,9 +694,9 @@ class Derivation $application = ApplicationPeer::retrieveByPK($arrayApplicationData["APP_UID"]); if ($application->getAppStatus() == "DRAFT") { - $user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "draft"); + //$user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "draft"); } else { - $user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "inbox"); + //$user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "inbox"); } } } diff --git a/workflow/engine/classes/model/ListCompleted.php b/workflow/engine/classes/model/ListCompleted.php index 84c5b8b55..6ae2d1177 100644 --- a/workflow/engine/classes/model/ListCompleted.php +++ b/workflow/engine/classes/model/ListCompleted.php @@ -116,7 +116,7 @@ class ListCompleted extends BaseListCompleted $dataset->next(); $aRow = $dataset->getRow(); if ($aRow['TAS_TYPE'] != 'SUBPROCESS') { - $users->refreshTotal($data['USR_UID'], 'remove', 'inbox'); + //$users->refreshTotal($data['USR_UID'], 'remove', 'inbox'); } } else { $criteria = new Criteria(); @@ -125,9 +125,9 @@ class ListCompleted extends BaseListCompleted $dataset = SubApplicationPeer::doSelectRS($criteria); $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); if ($dataset->next()) { - $users->refreshTotal($data['USR_UID'], 'remove', 'inbox'); + //$users->refreshTotal($data['USR_UID'], 'remove', 'inbox'); } else { - $users->refreshTotal($data['USR_UID'], 'remove', 'draft'); + //$users->refreshTotal($data['USR_UID'], 'remove', 'draft'); } } diff --git a/workflow/engine/classes/model/ListInbox.php b/workflow/engine/classes/model/ListInbox.php index 6fbf71cdd..0b784e9ec 100644 --- a/workflow/engine/classes/model/ListInbox.php +++ b/workflow/engine/classes/model/ListInbox.php @@ -324,12 +324,12 @@ class ListInbox extends BaseListInbox $criteria->add( SubApplicationPeer::APP_UID, $data['APP_UID'], Criteria::EQUAL ); $dataset = SubApplicationPeer::doSelectRS($criteria); if ($dataset->next()) { - $users->refreshTotal($delPreviusUsrUid, 'remove', 'inbox'); + //$users->refreshTotal($delPreviusUsrUid, 'remove', 'inbox'); } else { - $users->refreshTotal($delPreviusUsrUid, 'remove', 'draft'); + //$users->refreshTotal($delPreviusUsrUid, 'remove', 'draft'); } } else { - $users->refreshTotal($delPreviusUsrUid, 'remove', 'inbox'); + //$users->refreshTotal($delPreviusUsrUid, 'remove', 'inbox'); } } if (!$isSelfService) { @@ -341,9 +341,9 @@ class ListInbox extends BaseListInbox $users->refreshTotal($data['USR_UID'], 'add', 'inbox'); } if ($dataPreviusApplication['APP_STATUS'] == 'DRAFT') { - $users->refreshTotal($dataPreviusApplication['CURRENT_USER_UID'], 'remove', 'draft'); + //$users->refreshTotal($dataPreviusApplication['CURRENT_USER_UID'], 'remove', 'draft'); } else { - $users->refreshTotal($dataPreviusApplication['CURRENT_USER_UID'], 'remove', 'inbox'); + //$users->refreshTotal($dataPreviusApplication['CURRENT_USER_UID'], 'remove', 'inbox'); } } self::create($data, $isSelfService);