Merged in victorsl/processmaker (pull request #174)
ProcessMaker-MA "Group (endpoints)"
This commit is contained in:
@@ -120,7 +120,6 @@ class DynaForm
|
||||
$criteria->add("CT.CON_VALUE", $dynaFormTitle, \Criteria::EQUAL);
|
||||
|
||||
$rsCriteria = \DynaformPeer::doSelectRS($criteria);
|
||||
$rsCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
|
||||
|
||||
if ($rsCriteria->next()) {
|
||||
return true;
|
||||
@@ -710,7 +709,7 @@ class DynaForm
|
||||
*
|
||||
* return array Return data of the new DynaForm created
|
||||
*/
|
||||
public function defineCreate($processUid, $arrayData)
|
||||
public function executeCreate($processUid, $arrayData)
|
||||
{
|
||||
try {
|
||||
$arrayData = array_change_key_case($arrayData, CASE_UPPER);
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -140,7 +140,6 @@ class Process
|
||||
$criteria->add("CT.CON_VALUE", $processTitle, \Criteria::EQUAL);
|
||||
|
||||
$rsCriteria = \ProcessPeer::doSelectRS($criteria);
|
||||
$rsCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
|
||||
|
||||
if ($rsCriteria->next()) {
|
||||
return true;
|
||||
@@ -227,6 +226,29 @@ class Process
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate pager data
|
||||
*
|
||||
* @param array $arrayData Data
|
||||
* @param array $arrayFieldNameForException Fields for exception messages
|
||||
*
|
||||
* return void Throw exception if pager data has an invalid value
|
||||
*/
|
||||
public function throwExceptionIfDataNotMetPagerVarDefinition($arrayData, $arrayFieldNameForException)
|
||||
{
|
||||
try {
|
||||
foreach ($arrayData as $key => $value) {
|
||||
$nameForException = (isset($arrayFieldNameForException[$key]))? $arrayFieldNameForException[$key] : "";
|
||||
|
||||
if (!is_null($value) && ($value . "" == "" || !preg_match("/^(?:\+|\-)?(?:0|[1-9]\d*)$/", $value . "") || (int)($value) < 0)) {
|
||||
throw (new \Exception(str_replace(array("{0}"), array($nameForException), "Invalid value specified for \"{0}\". Expecting positive integer value")));
|
||||
}
|
||||
}
|
||||
} catch (\Exception $e) {
|
||||
throw $e;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify if doesn't exist the Process in table PROCESS
|
||||
*
|
||||
|
||||
@@ -50,17 +50,12 @@ class Group extends Api
|
||||
/**
|
||||
* @url POST
|
||||
*
|
||||
* @param array $request_data
|
||||
* @param string $grp_title {@from body}{@required true}
|
||||
* @param string $grp_status {@from body}{@choice ACTIVE,INACTIVE}{@required true}
|
||||
* @param array $request_data
|
||||
*
|
||||
* @status 201
|
||||
*/
|
||||
public function doPost(
|
||||
$request_data,
|
||||
$grp_title = "",
|
||||
$grp_status = "ACTIVE"
|
||||
) {
|
||||
public function doPost($request_data)
|
||||
{
|
||||
try {
|
||||
$group = new \BusinessModel\Group();
|
||||
$group->setFormatFieldNameInUppercase(false);
|
||||
@@ -80,15 +75,9 @@ class Group extends Api
|
||||
*
|
||||
* @param string $grp_uid {@min 32}{@max 32}
|
||||
* @param array $request_data
|
||||
* @param string $grp_title {@from body}
|
||||
* @param string $grp_status {@from body}{@choice ACTIVE,INACTIVE}
|
||||
*/
|
||||
public function doPut(
|
||||
$grp_uid,
|
||||
$request_data,
|
||||
$grp_title = "",
|
||||
$grp_status = "ACTIVE"
|
||||
) {
|
||||
public function doPut($grp_uid, $request_data)
|
||||
{
|
||||
try {
|
||||
$group = new \BusinessModel\Group();
|
||||
$group->setFormatFieldNameInUppercase(false);
|
||||
@@ -115,5 +104,43 @@ class Group extends Api
|
||||
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @url GET /:grp_uid/users
|
||||
*
|
||||
* @param string $grp_uid {@min 32}{@max 32}
|
||||
*/
|
||||
public function doGetUsers($grp_uid, $filter = null, $start = null, $limit = null)
|
||||
{
|
||||
try {
|
||||
$group = new \BusinessModel\Group();
|
||||
$group->setFormatFieldNameInUppercase(false);
|
||||
|
||||
$response = $group->getUsers("USERS", $grp_uid, array("filter" => $filter), null, null, $start, $limit);
|
||||
|
||||
return $response;
|
||||
} catch (\Exception $e) {
|
||||
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @url GET /:grp_uid/available-users
|
||||
*
|
||||
* @param string $grp_uid {@min 32}{@max 32}
|
||||
*/
|
||||
public function doGetAvailableUsers($grp_uid, $filter = null, $start = null, $limit = null)
|
||||
{
|
||||
try {
|
||||
$group = new \BusinessModel\Group();
|
||||
$group->setFormatFieldNameInUppercase(false);
|
||||
|
||||
$response = $group->getUsers("AVAILABLE-USERS", $grp_uid, array("filter" => $filter), null, null, $start, $limit);
|
||||
|
||||
return $response;
|
||||
} catch (\Exception $e) {
|
||||
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@ class DynaForm extends Api
|
||||
$dynaForm->setFormatFieldNameInUppercase(false);
|
||||
$dynaForm->setArrayFieldNameForException(array("processUid" => "prj_uid"));
|
||||
|
||||
$arrayData = $dynaForm->defineCreate($prj_uid, $request_data);
|
||||
$arrayData = $dynaForm->executeCreate($prj_uid, $request_data);
|
||||
|
||||
$response = $arrayData;
|
||||
|
||||
|
||||
@@ -39,6 +39,7 @@ debug = 1
|
||||
|
||||
[alias: group]
|
||||
group = "Services\Api\ProcessMaker\Group"
|
||||
user = "Services\Api\ProcessMaker\Group\User"
|
||||
|
||||
[alias: groups]
|
||||
group = "Services\Api\ProcessMaker\Group"
|
||||
@@ -48,3 +49,4 @@ debug = 1
|
||||
|
||||
[alias: users]
|
||||
user = "Services\Api\ProcessMaker\User"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user