Merged in cochalo/processmaker (pull request #81)
Adicion la funcionalidad POST y PUT en PROCESS PERMISSIONS
This commit is contained in:
@@ -166,6 +166,70 @@ class ProcessPermissions
|
|||||||
return $aObjectsPermissions;
|
return $aObjectsPermissions;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Save Process Permission
|
||||||
|
*
|
||||||
|
* @var array $data. Data for Process Permission
|
||||||
|
* @var string $sPermissionUid. Uid for Process Permission
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
* @author Brayan Pereyra (Cochalo) <brayan@colosa.com>
|
||||||
|
* @copyright Colosa - Bolivia
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function saveProcessPermission($data, $sPermissionUid = '')
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$data = array_change_key_case($data, CASE_UPPER);
|
||||||
|
|
||||||
|
list ($iRelation, $sUserGroup) = explode( '|', $data['GROUP_USER'] );
|
||||||
|
$sObjectUID = '';
|
||||||
|
switch ($data['OP_OBJ_TYPE']) {
|
||||||
|
case 'ANY':
|
||||||
|
//case 'ANY_DYNAFORM':CASES_NOTES
|
||||||
|
//case 'ANY_INPUT':
|
||||||
|
//case 'ANY_OUTPUT':
|
||||||
|
$sObjectUID = '';
|
||||||
|
break;
|
||||||
|
case 'DYNAFORM':
|
||||||
|
$sObjectUID = $data['DYNAFORMS'];
|
||||||
|
break;
|
||||||
|
case 'INPUT':
|
||||||
|
$sObjectUID = $data['INPUTS'];
|
||||||
|
break;
|
||||||
|
case 'OUTPUT':
|
||||||
|
$sObjectUID = $data['OUTPUTS'];
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
$oOP = new \ObjectPermission();
|
||||||
|
$permissionUid = ($sPermissionUid != '') ? $sPermissionUid : G::generateUniqueID();
|
||||||
|
$aData = array (
|
||||||
|
'OP_UID' => $permissionUid,
|
||||||
|
'PRO_UID' => $data['PRO_UID'],
|
||||||
|
'TAS_UID' => $data['TAS_UID'],
|
||||||
|
'USR_UID' => (string) $sUserGroup,
|
||||||
|
'OP_USER_RELATION' => $iRelation,
|
||||||
|
'OP_TASK_SOURCE' => $data['OP_TASK_SOURCE'],
|
||||||
|
'OP_PARTICIPATE' => $data['OP_PARTICIPATE'],
|
||||||
|
'OP_OBJ_TYPE' => $data['OP_OBJ_TYPE'],
|
||||||
|
'OP_OBJ_UID' => $sObjectUID,
|
||||||
|
'OP_ACTION' => $data['OP_ACTION'],
|
||||||
|
'OP_CASE_STATUS' => $data['OP_CASE_STATUS']
|
||||||
|
);
|
||||||
|
$oOP->fromArray( $aData, \BasePeer::TYPE_FIELDNAME );
|
||||||
|
if ($sPermissionUid == '') {
|
||||||
|
$oOP->save();
|
||||||
|
$daraRes = $oOP->load($newUid);
|
||||||
|
return $daraRes;
|
||||||
|
} else {
|
||||||
|
$oOP->update($aData);
|
||||||
|
}
|
||||||
|
} catch (Exception $e) {
|
||||||
|
throw $e;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Delete Process Permission
|
* Delete Process Permission
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -59,6 +59,77 @@ class ProcessPermissions extends Api
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $projectUid {@min 1} {@max 32}
|
||||||
|
* @param array $request_data
|
||||||
|
* @param string $op_obj_type {@from body} {@choice ANY,DYNAFORM,INPUT,OUTPUT,CASES_NOTES,MSGS_HISTORY}
|
||||||
|
* @param string $op_participate {@from body} {@choice 0,1}
|
||||||
|
* @param string $op_action {@from body} {@choice VIEW,BLOCK,DELETE}
|
||||||
|
* @param string $op_case_status {@from body} {@choice ALL,DRAFT,TO_DO,PAUSED,COMPLETED}
|
||||||
|
* @param string $tas_uid {@from body}
|
||||||
|
* @param string $group_user {@from body}
|
||||||
|
* @param string $dynaforms {@from body}
|
||||||
|
* @param string $inputs {@from body}
|
||||||
|
* @param string $outputs {@from body}
|
||||||
|
* @param string $op_task_source {@from body}
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
* @author Brayan Pereyra (Cochalo) <brayan@colosa.com>
|
||||||
|
* @copyright Colosa - Bolivia
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*
|
||||||
|
* @url POST /:projectUid/process-permission/
|
||||||
|
*/
|
||||||
|
public function doPostProcessPermission($projectUid, $request_data, $op_obj_type, $op_participate, $op_action,
|
||||||
|
$op_case_status, $tas_uid = '', $group_user = '', $dynaforms = '', $inputs = '', $outputs = '', $op_task_source = '')
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$request_data['pro_uid'] = $projectUid;
|
||||||
|
$processPermissions = new \BusinessModel\ProcessPermissions();
|
||||||
|
$response = $processPermissions->saveProcessPermission($request_data);
|
||||||
|
return $response;
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $projectUid {@min 1} {@max 32}
|
||||||
|
* @param string $objectPermissionUid {@min 1} {@max 32}
|
||||||
|
* @param array $request_data
|
||||||
|
* @param string $op_obj_type {@from body} {@choice ANY,DYNAFORM,INPUT,OUTPUT,CASES_NOTES,MSGS_HISTORY}
|
||||||
|
* @param string $op_participate {@from body} {@choice 0,1}
|
||||||
|
* @param string $op_action {@from body} {@choice VIEW,BLOCK,DELETE}
|
||||||
|
* @param string $op_case_status {@from body} {@choice ALL,DRAFT,TO_DO,PAUSED,COMPLETED}
|
||||||
|
* @param string $tas_uid {@from body}
|
||||||
|
* @param string $group_user {@from body}
|
||||||
|
* @param string $dynaforms {@from body}
|
||||||
|
* @param string $inputs {@from body}
|
||||||
|
* @param string $outputs {@from body}
|
||||||
|
* @param string $op_task_source {@from body}
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
* @author Brayan Pereyra (Cochalo) <brayan@colosa.com>
|
||||||
|
* @copyright Colosa - Bolivia
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*
|
||||||
|
* @url PUT /:projectUid/process-permission/:objectPermissionUid
|
||||||
|
*/
|
||||||
|
public function doPutProcessPermission($projectUid, $objectPermissionUid, $request_data, $op_obj_type,
|
||||||
|
$op_participate, $op_action, $op_case_status, $tas_uid = '', $group_user = '', $dynaforms = '', $inputs = '',
|
||||||
|
$outputs = '', $op_task_source = '')
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$request_data['pro_uid'] = $projectUid;
|
||||||
|
$processPermissions = new \BusinessModel\ProcessPermissions();
|
||||||
|
$response = $processPermissions->saveProcessPermission($request_data, $objectPermissionUid);
|
||||||
|
return $response;
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string $projectUid {@min 1} {@max 32}
|
* @param string $projectUid {@min 1} {@max 32}
|
||||||
|
|||||||
Reference in New Issue
Block a user