Se modifica end point de validacion de usuario mediante WS, no es necesario enviar act_uid en PROJECT USERS
This commit is contained in:
@@ -202,13 +202,14 @@ class ProjectUser
|
||||
* Return the user that can start a task
|
||||
*
|
||||
* @param string $sProcessUID {@min 32} {@max 32}
|
||||
* @param string $sActivityUID {@min 32} {@max 32}
|
||||
* @param array $oData
|
||||
*
|
||||
* return array
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
public function postProjectWsUserCanStartTask($sProcessUID, $oData)
|
||||
public function postProjectWsUserCanStartTask($sProcessUID, $sActivityUID, $oData)
|
||||
{
|
||||
try {
|
||||
$oProcess = \ProcessPeer::retrieveByPK( $sProcessUID );
|
||||
@@ -220,8 +221,7 @@ class ProjectUser
|
||||
* validates if the username and password are valid data and if the user assigned
|
||||
* to the webentry has the rights and persmissions required
|
||||
*/
|
||||
$sPRO_UID = $sProcessUID;
|
||||
$sTASKS = $oData['act_uid'];
|
||||
$sTASKS = $sActivityUID;
|
||||
$sWS_USER = trim( $oData['username'] );
|
||||
$sWS_PASS = trim( $oData['password'] );
|
||||
if (\G::is_https()) {
|
||||
@@ -265,9 +265,14 @@ class ProjectUser
|
||||
$oCriteria->addSelectColumn( \UsersPeer::USR_USERNAME );
|
||||
$oCriteria->addSelectColumn( \UsersPeer::USR_FIRSTNAME );
|
||||
$oCriteria->addSelectColumn( \UsersPeer::USR_LASTNAME );
|
||||
$oCriteria->addSelectColumn( \TaskPeer::PRO_UID );
|
||||
$oCriteria->addJoin( \TaskUserPeer::USR_UID, \UsersPeer::USR_UID, \Criteria::LEFT_JOIN );
|
||||
$oCriteria->add( \TaskUserPeer::TAS_UID, $sTASKS );
|
||||
$oCriteria->addJoin( \TaskUserPeer::TAS_UID, \TaskPeer::TAS_UID, \Criteria::LEFT_JOIN );
|
||||
if ($sTASKS) {
|
||||
$oCriteria->add( \TaskUserPeer::TAS_UID, $sTASKS );
|
||||
}
|
||||
$oCriteria->add( \UsersPeer::USR_USERNAME, $sWS_USER );
|
||||
$oCriteria->add( \TaskPeer::PRO_UID, $sProcessUID );
|
||||
$userIsAssigned = \TaskUserPeer::doCount( $oCriteria );
|
||||
// if the user is not assigned directly, maybe a have the task a group with the user
|
||||
if ($userIsAssigned < 1) {
|
||||
@@ -278,11 +283,19 @@ class ProjectUser
|
||||
$oCriteria->addSelectColumn( \UsersPeer::USR_LASTNAME );
|
||||
$oCriteria->addJoin( \UsersPeer::USR_UID, \GroupUserPeer::USR_UID, \Criteria::LEFT_JOIN );
|
||||
$oCriteria->addJoin( \GroupUserPeer::GRP_UID, \TaskUserPeer::USR_UID, \Criteria::LEFT_JOIN );
|
||||
$oCriteria->add( \TaskUserPeer::TAS_UID, $sTASKS );
|
||||
$oCriteria->addJoin( \TaskUserPeer::TAS_UID, \TaskPeer::TAS_UID, \Criteria::LEFT_JOIN );
|
||||
if ($sTASKS) {
|
||||
$oCriteria->add( \TaskUserPeer::TAS_UID, $sTASKS );
|
||||
}
|
||||
$oCriteria->add( \UsersPeer::USR_USERNAME, $sWS_USER );
|
||||
$oCriteria->add( \TaskPeer::PRO_UID, $sProcessUID );
|
||||
$userIsAssigned = \GroupUserPeer::doCount( $oCriteria );
|
||||
if (! ($userIsAssigned >= 1)) {
|
||||
throw (new \Exception( "The `usr_uid` `" . $sWS_USER . "` doesn't have the activity `act_uid` `" . $sTASKS . "` assigned"));
|
||||
if ($sTASKS) {
|
||||
throw (new \Exception( "The `usr_uid` `" . $sWS_USER . "` doesn't have the activity `act_uid` `" . $sTASKS . "` assigned"));
|
||||
} else {
|
||||
throw (new \Exception( "The `usr_uid` `" . $sWS_USER . "` doesn't have an activity assigned"));
|
||||
}
|
||||
}
|
||||
}
|
||||
$oDataset = \TaskUserPeer::doSelectRS($oCriteria);
|
||||
|
||||
@@ -71,16 +71,17 @@ class ProjectUsers extends Api
|
||||
|
||||
/**
|
||||
* @param string $prj_uid {@min 32} {@max 32}
|
||||
* @param string $act_uid {@min 32} {@max 32}
|
||||
* @param wsUserCanStartTaskStructure $request_data
|
||||
*
|
||||
* @url POST /:prj_uid/ws/user/can-start-task
|
||||
*/
|
||||
public function doPostProjectWsUserCanStartTask($prj_uid, wsUserCanStartTaskStructure $request_data = null)
|
||||
public function doPostProjectWsUserCanStartTask($prj_uid, $act_uid = null, wsUserCanStartTaskStructure $request_data = null)
|
||||
{
|
||||
try {
|
||||
$request_data = (array)($request_data);
|
||||
$user = new \BusinessModel\ProjectUser();
|
||||
$objectData = $user->postProjectWsUserCanStartTask($prj_uid, $request_data);
|
||||
$objectData = $user->postProjectWsUserCanStartTask($prj_uid, $act_uid, $request_data);
|
||||
//Response
|
||||
$response = $objectData;
|
||||
} catch (\Exception $e) {
|
||||
@@ -93,10 +94,6 @@ class ProjectUsers extends Api
|
||||
|
||||
class wsUserCanStartTaskStructure
|
||||
{
|
||||
/**
|
||||
* @var string {@from body} {@min 32} {@max 32}
|
||||
*/
|
||||
public $act_uid;
|
||||
/**
|
||||
* @var string {@from body}
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user