PM-3324 "REST endpoint PUT /cases/{app_uid}/reassign-case" SOLVED
> Code Isuue:
0017925: REST endpoint PUT /cases/{app_uid}/reassign-case can not reassign cases to ad hoc users
> Solution:
Se agrega validacion en el siguiente Endpoint cuando se utiliza el servicio REST, el mismo se puede reasingar un caso
a un usuario de tipo Ad Hoc.
PUT /cases/{app_uid}/reassign-case
This commit is contained in:
@@ -328,9 +328,10 @@ class Derivation
|
||||
/* get all users, from any task, if the task have Groups, the function expand the group
|
||||
*
|
||||
* @param string $sTasUid the task uidUser
|
||||
* @param bool $flagIncludeAdHocUsers
|
||||
* @return Array $users an array with userID order by USR_UID
|
||||
*/
|
||||
function getAllUsersFromAnyTask ($sTasUid)
|
||||
function getAllUsersFromAnyTask($sTasUid, $flagIncludeAdHocUsers = false)
|
||||
{
|
||||
$users = array ();
|
||||
$c = new Criteria( 'workflow' );
|
||||
@@ -338,7 +339,16 @@ class Derivation
|
||||
$c->addSelectColumn( TaskUserPeer::USR_UID );
|
||||
$c->addSelectColumn( TaskUserPeer::TU_RELATION );
|
||||
$c->add( TaskUserPeer::TAS_UID, $sTasUid );
|
||||
$c->add( TaskUserPeer::TU_TYPE, 1 );
|
||||
|
||||
if ($flagIncludeAdHocUsers) {
|
||||
$c->add(
|
||||
$c->getNewCriterion(TaskUserPeer::TU_TYPE, 1, Criteria::EQUAL)->addOr(
|
||||
$c->getNewCriterion(TaskUserPeer::TU_TYPE, 2, Criteria::EQUAL))
|
||||
);
|
||||
} else {
|
||||
$c->add(TaskUserPeer::TU_TYPE, 1);
|
||||
}
|
||||
|
||||
$rs = TaskUserPeer::DoSelectRs( $c );
|
||||
$rs->setFetchmode( ResultSet::FETCHMODE_ASSOC );
|
||||
$rs->next();
|
||||
@@ -1245,4 +1255,3 @@ class Derivation
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2891,7 +2891,7 @@ class wsBase
|
||||
|
||||
$tasUid = $aRow['TAS_UID'];
|
||||
$derivation = new Derivation();
|
||||
$userList = $derivation->getAllUsersFromAnyTask( $tasUid );
|
||||
$userList = $derivation->getAllUsersFromAnyTask($tasUid, true);
|
||||
|
||||
if (! in_array( $userIdTarget, $userList )) {
|
||||
$result = new wsResponse( 34, G::loadTranslation( 'ID_TARGET_USER_DOES_NOT_HAVE_RIGHTS' ) );
|
||||
@@ -3370,4 +3370,3 @@ class wsBase
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user