PM-3286 "Unassigned: Al finalizar un caso a partir del listado de..." SOLVED
Issue:
Unassigned: Al finalizar un caso a partir del listado de Unassigned se puede verificar que el caso es duplicado en la lista de Participated
Cause:
No se elimina correctamente el caso de "participated list"; cuando se reclama el caso
Solution:
Se elimina el caso en "participated list"; cuando se reclama el caso
This commit is contained in:
@@ -151,22 +151,42 @@ class ListParticipatedLast extends BaseListParticipatedLast
|
|||||||
*/
|
*/
|
||||||
public function remove ($app_uid, $usr_uid, $del_index)
|
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 {
|
try {
|
||||||
$this->setAppUid($app_uid);
|
$flagDelete = false;
|
||||||
$this->setUsrUid($usr_uid);
|
|
||||||
|
|
||||||
$con->begin();
|
if (!is_null(ListParticipatedLastPeer::retrieveByPK($app_uid, $usr_uid, $del_index))) {
|
||||||
$this->delete();
|
$criteria = new Criteria("workflow");
|
||||||
$con->commit();
|
|
||||||
|
$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) {
|
} catch (Exception $e) {
|
||||||
$con->rollback();
|
throw $e;
|
||||||
throw ($e);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user