Merged in victorsl/processmaker/3.0.1-GA (pull request #2626)

PM-3286 "Unassigned: Al finalizar un caso a partir del listado de..." SOLVED
This commit is contained in:
Julio Cesar Laura Avendaño
2015-08-18 12:34:31 -04:00

View File

@@ -151,22 +151,42 @@ class ListParticipatedLast extends BaseListParticipatedLast
*/
public function remove ($app_uid, $usr_uid, $del_index)
{
$existField = ListParticipatedLastPeer::retrieveByPK($app_uid, $usr_uid, $del_index);
if (! is_null( $existField )) {
$users = new Users();
$users->refreshTotal($usr_uid, 'removed', 'participated');
}
$con = Propel::getConnection( ListParticipatedLastPeer::DATABASE_NAME );
try {
$this->setAppUid($app_uid);
$this->setUsrUid($usr_uid);
$flagDelete = false;
$con->begin();
$this->delete();
$con->commit();
if (!is_null(ListParticipatedLastPeer::retrieveByPK($app_uid, $usr_uid, $del_index))) {
$criteria = new Criteria("workflow");
$criteria->add(ListParticipatedLastPeer::APP_UID, $app_uid);
$criteria->add(ListParticipatedLastPeer::USR_UID, $usr_uid);
$criteria->add(ListParticipatedLastPeer::DEL_INDEX, $del_index);
$result = ListParticipatedLastPeer::doDelete($criteria);
$flagDelete = true;
} else {
$criteria = new Criteria("workflow");
$criteria->add(ListParticipatedLastPeer::APP_UID, $app_uid);
$criteria->add(ListParticipatedLastPeer::USR_UID, $usr_uid);
$rsCriteria = ListParticipatedLastPeer::doSelectRS($criteria);
if ($rsCriteria->next()) {
$criteria2 = clone $criteria;
$result = ListParticipatedLastPeer::doDelete($criteria2);
$flagDelete = true;
}
}
if ($flagDelete) {
$user = new Users();
$user->refreshTotal($usr_uid, "removed", "participated");
}
} catch (Exception $e) {
$con->rollback();
throw ($e);
throw $e;
}
}