ProcessMaker-MA "Case Tracker (endpoints)"
- Se han implementado los siguientes Endpoints:
GET /api/1.0/{workspace}/project/{prj_uid}/case-tracker/property
PUT /api/1.0/{workspace}/project/{prj_uid}/case-tracker/property
GET /api/1.0/{workspace}/project/{prj_uid}/case-tracker/objects
GET /api/1.0/{workspace}/project/{prj_uid}/case-tracker/available-objects
GET /api/1.0/{workspace}/project/{prj_uid}/case-tracker/object/{obj_uid}
POST /api/1.0/{workspace}/project/{prj_uid}/case-tracker/object
This commit is contained in:
@@ -0,0 +1,99 @@
|
||||
<?php
|
||||
namespace Services\Api\ProcessMaker\Project;
|
||||
|
||||
use \ProcessMaker\Services\Api;
|
||||
use \Luracast\Restler\RestException;
|
||||
|
||||
/**
|
||||
* Project\CaseTracker Api Controller
|
||||
*
|
||||
* @protected
|
||||
*/
|
||||
class CaseTracker extends Api
|
||||
{
|
||||
/**
|
||||
* @url GET /:projectUid/case-tracker/property
|
||||
*/
|
||||
public function doGetCaseTrackerProperty($projectUid)
|
||||
{
|
||||
try {
|
||||
$caseTracker = new \BusinessModel\CaseTracker();
|
||||
|
||||
$response = $caseTracker->getCaseTracker($projectUid);
|
||||
|
||||
return $response;
|
||||
} catch (\Exception $e) {
|
||||
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @url PUT /:projectUid/case-tracker/property
|
||||
*
|
||||
* @param string $projectUid
|
||||
* @param CaseTrackerPutStructure $request_data
|
||||
*/
|
||||
public function doPutCaseTracker($projectUid, CaseTrackerPutStructure $request_data = null)
|
||||
{
|
||||
try {
|
||||
$caseTracker = new \BusinessModel\CaseTracker();
|
||||
|
||||
$arrayData = $caseTracker->getArrayDataFromRequestData($request_data);
|
||||
|
||||
$arrayData = $caseTracker->update($projectUid, $arrayData);
|
||||
} catch (\Exception $e) {
|
||||
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @url GET /:projectUid/case-tracker/objects
|
||||
*/
|
||||
public function doGetCaseTrackerObjects($projectUid)
|
||||
{
|
||||
try {
|
||||
$caseTracker = new \BusinessModel\CaseTracker();
|
||||
|
||||
$response = $caseTracker->getCaseTrackerObjects($projectUid);
|
||||
|
||||
return $response;
|
||||
} catch (\Exception $e) {
|
||||
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @url GET /:projectUid/case-tracker/available-objects
|
||||
*/
|
||||
public function doGetCaseTrackerAvailableObjects($projectUid)
|
||||
{
|
||||
try {
|
||||
$caseTracker = new \BusinessModel\CaseTracker();
|
||||
|
||||
$response = $caseTracker->getAvailableCaseTrackerObjects($projectUid);
|
||||
|
||||
return $response;
|
||||
} catch (\Exception $e) {
|
||||
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class CaseTrackerPutStructure
|
||||
{
|
||||
/**
|
||||
* @var string {@from body}{@choice NONE,PROCESSMAP,STAGES}
|
||||
*/
|
||||
public $map_type;
|
||||
|
||||
/**
|
||||
* @var bool {@from body}
|
||||
*/
|
||||
public $routing_history;
|
||||
|
||||
/**
|
||||
* @var bool {@from body}
|
||||
*/
|
||||
public $message_history;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,135 @@
|
||||
<?php
|
||||
namespace Services\Api\ProcessMaker\Project;
|
||||
|
||||
use \ProcessMaker\Services\Api;
|
||||
use \Luracast\Restler\RestException;
|
||||
|
||||
/**
|
||||
* Project\CaseTrackerObject Api Controller
|
||||
*
|
||||
* @protected
|
||||
*/
|
||||
class CaseTrackerObject extends Api
|
||||
{
|
||||
/**
|
||||
* @url GET /:projectUid/case-tracker/object/:caseTrackerObjectUid
|
||||
*/
|
||||
public function doGetCaseTrackerObject($caseTrackerObjectUid, $projectUid)
|
||||
{
|
||||
try {
|
||||
$caseTrackerObject = new \BusinessModel\CaseTrackerObject();
|
||||
|
||||
$response = $caseTrackerObject->getCaseTrackerObject($caseTrackerObjectUid);
|
||||
|
||||
return $response;
|
||||
} catch (\Exception $e) {
|
||||
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @url POST /:projectUid/case-tracker/object
|
||||
*
|
||||
* @param string $projectUid
|
||||
* @param CaseTrackerObjectPostStructure $request_data
|
||||
*
|
||||
* @status 201
|
||||
*/
|
||||
public function doPostCaseTrackerObject($projectUid, CaseTrackerObjectPostStructure $request_data = null)
|
||||
{
|
||||
try {
|
||||
$caseTrackerObject = new \BusinessModel\CaseTrackerObject();
|
||||
|
||||
$arrayData = $caseTrackerObject->getArrayDataFromRequestData($request_data);
|
||||
|
||||
$arrayData = $caseTrackerObject->create($projectUid, $arrayData);
|
||||
|
||||
$response = $arrayData;
|
||||
|
||||
return $response;
|
||||
} catch (\Exception $e) {
|
||||
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @url PUT /:projectUid/case-tracker/object/:caseTrackerObjectUid
|
||||
*
|
||||
* @param string $caseTrackerObjectUid
|
||||
* @param string $projectUid
|
||||
* @param CaseTrackerObjectPutStructure $request_data
|
||||
*/
|
||||
public function doPutCaseTrackerObject($caseTrackerObjectUid, $projectUid, CaseTrackerObjectPutStructure $request_data = null)
|
||||
{
|
||||
try {
|
||||
$caseTrackerObject = new \BusinessModel\CaseTrackerObject();
|
||||
|
||||
$arrayData = $caseTrackerObject->getArrayDataFromRequestData($request_data);
|
||||
|
||||
$arrayData = $caseTrackerObject->update($caseTrackerObjectUid, $arrayData);
|
||||
} catch (\Exception $e) {
|
||||
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @url DELETE /:projectUid/case-tracker/object/:caseTrackerObjectUid
|
||||
*/
|
||||
public function doDeleteCaseTrackerObject($caseTrackerObjectUid, $projectUid)
|
||||
{
|
||||
try {
|
||||
$caseTrackerObject = new \BusinessModel\CaseTrackerObject();
|
||||
|
||||
$caseTrackerObject->delete($caseTrackerObjectUid);
|
||||
} catch (\Exception $e) {
|
||||
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class CaseTrackerObjectPostStructure
|
||||
{
|
||||
/**
|
||||
* @var string {@from body}{@choice DYNAFORM,INPUT_DOCUMENT,OUTPUT_DOCUMENT}{@required true}
|
||||
*/
|
||||
public $cto_type_obj;
|
||||
|
||||
/**
|
||||
* @var string {@from body}{@min 32}{@max 32}{@required true}
|
||||
*/
|
||||
public $cto_uid_obj;
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
public $cto_condition;
|
||||
|
||||
/**
|
||||
* @var int {@from body}{@min 1}
|
||||
*/
|
||||
public $cto_position;
|
||||
}
|
||||
|
||||
class CaseTrackerObjectPutStructure
|
||||
{
|
||||
/**
|
||||
* @var string {@from body}{@choice DYNAFORM,INPUT_DOCUMENT,OUTPUT_DOCUMENT}
|
||||
*/
|
||||
public $cto_type_obj;
|
||||
|
||||
/**
|
||||
* @var string {@from body}{@min 32}{@max 32}
|
||||
*/
|
||||
public $cto_uid_obj;
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
public $cto_condition;
|
||||
|
||||
/**
|
||||
* @var int {@from body}{@min 1}
|
||||
*/
|
||||
public $cto_position;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user