2014-01-14 17:10:47 -04:00
|
|
|
<?php
|
2014-04-02 17:02:02 -04:00
|
|
|
namespace ProcessMaker\Services\Api\Project;
|
2014-01-14 17:10:47 -04:00
|
|
|
|
|
|
|
|
use \ProcessMaker\Services\Api;
|
|
|
|
|
use \Luracast\Restler\RestException;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Project\CaseTrackerObject Api Controller
|
|
|
|
|
*
|
|
|
|
|
* @protected
|
|
|
|
|
*/
|
|
|
|
|
class CaseTrackerObject extends Api
|
|
|
|
|
{
|
|
|
|
|
/**
|
2014-01-28 12:30:09 -04:00
|
|
|
* @url GET /:prj_uid/case-tracker/object/:cto_uid
|
2014-01-15 17:09:37 -04:00
|
|
|
*
|
2014-01-28 12:30:09 -04:00
|
|
|
* @param string $cto_uid {@min 32}{@max 32}
|
|
|
|
|
* @param string $prj_uid {@min 32}{@max 32}
|
2014-01-14 17:10:47 -04:00
|
|
|
*/
|
2014-01-28 12:30:09 -04:00
|
|
|
public function doGetCaseTrackerObject($cto_uid, $prj_uid)
|
2014-01-14 17:10:47 -04:00
|
|
|
{
|
|
|
|
|
try {
|
2014-04-02 17:02:02 -04:00
|
|
|
$caseTrackerObject = new \ProcessMaker\BusinessModel\CaseTrackerObject();
|
2014-01-14 17:10:47 -04:00
|
|
|
|
2014-01-28 12:30:09 -04:00
|
|
|
$response = $caseTrackerObject->getCaseTrackerObject($cto_uid);
|
2014-01-14 17:10:47 -04:00
|
|
|
|
|
|
|
|
return $response;
|
|
|
|
|
} catch (\Exception $e) {
|
|
|
|
|
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
2017-10-18 10:47:40 -04:00
|
|
|
* Assigns an object (Dynaform, Input Document, Output Document) to a case tracker.
|
|
|
|
|
*
|
2014-01-28 12:30:09 -04:00
|
|
|
* @url POST /:prj_uid/case-tracker/object
|
2017-10-18 10:47:40 -04:00
|
|
|
* @status 201
|
|
|
|
|
*
|
2014-01-28 12:30:09 -04:00
|
|
|
* @param string $prj_uid {@min 32}{@max 32}
|
2014-01-15 17:09:37 -04:00
|
|
|
* @param array $request_data
|
|
|
|
|
* @param string $cto_type_obj {@from body}{@choice DYNAFORM,INPUT_DOCUMENT,OUTPUT_DOCUMENT}{@required true}
|
|
|
|
|
* @param string $cto_uid_obj {@from body}{@min 32}{@max 32}{@required true}
|
2014-01-28 12:30:09 -04:00
|
|
|
* @param string $cto_condition {@from body}
|
2014-01-15 17:09:37 -04:00
|
|
|
* @param int $cto_position {@from body}{@min 1}
|
2017-10-18 10:47:40 -04:00
|
|
|
*
|
2017-10-18 14:53:15 -04:00
|
|
|
* @return array
|
|
|
|
|
* @throws RestException
|
|
|
|
|
*
|
2017-10-18 10:47:40 -04:00
|
|
|
* @access protected
|
|
|
|
|
* @class AccessControl {@permission PM_FACTORY}
|
2014-01-14 17:10:47 -04:00
|
|
|
*/
|
2014-01-15 17:09:37 -04:00
|
|
|
public function doPostCaseTrackerObject(
|
2014-01-28 12:30:09 -04:00
|
|
|
$prj_uid,
|
2014-01-15 17:09:37 -04:00
|
|
|
$request_data,
|
|
|
|
|
$cto_type_obj = "DYNAFORM",
|
|
|
|
|
$cto_uid_obj = "00000000000000000000000000000000",
|
|
|
|
|
$cto_condition = "",
|
|
|
|
|
$cto_position = 1
|
|
|
|
|
) {
|
2014-01-14 17:10:47 -04:00
|
|
|
try {
|
2014-04-02 17:02:02 -04:00
|
|
|
$caseTrackerObject = new \ProcessMaker\BusinessModel\CaseTrackerObject();
|
2014-01-14 17:10:47 -04:00
|
|
|
|
2014-01-28 12:30:09 -04:00
|
|
|
$arrayData = $caseTrackerObject->create($prj_uid, $request_data);
|
2014-01-14 17:10:47 -04:00
|
|
|
|
|
|
|
|
$response = $arrayData;
|
|
|
|
|
|
|
|
|
|
return $response;
|
|
|
|
|
} catch (\Exception $e) {
|
|
|
|
|
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
2014-01-28 12:30:09 -04:00
|
|
|
* @url PUT /:prj_uid/case-tracker/object/:cto_uid
|
2014-01-14 17:10:47 -04:00
|
|
|
*
|
2014-01-28 12:30:09 -04:00
|
|
|
* @param string $cto_uid {@min 32}{@max 32}
|
|
|
|
|
* @param string $prj_uid {@min 32}{@max 32}
|
2014-01-15 17:09:37 -04:00
|
|
|
* @param array $request_data
|
|
|
|
|
* @param string $cto_type_obj {@from body}{@choice DYNAFORM,INPUT_DOCUMENT,OUTPUT_DOCUMENT}
|
|
|
|
|
* @param string $cto_uid_obj {@from body}{@min 32}{@max 32}
|
2014-01-28 12:30:09 -04:00
|
|
|
* @param string $cto_condition {@from body}
|
2014-01-15 17:09:37 -04:00
|
|
|
* @param int $cto_position {@from body}{@min 1}
|
2014-01-14 17:10:47 -04:00
|
|
|
*/
|
2014-01-15 17:09:37 -04:00
|
|
|
public function doPutCaseTrackerObject(
|
2014-01-28 12:30:09 -04:00
|
|
|
$cto_uid,
|
|
|
|
|
$prj_uid,
|
2014-01-15 17:09:37 -04:00
|
|
|
$request_data,
|
|
|
|
|
$cto_type_obj = "DYNAFORM",
|
|
|
|
|
$cto_uid_obj = "00000000000000000000000000000000",
|
|
|
|
|
$cto_condition = "",
|
|
|
|
|
$cto_position = 1
|
|
|
|
|
) {
|
2014-01-14 17:10:47 -04:00
|
|
|
try {
|
2014-04-02 17:02:02 -04:00
|
|
|
$caseTrackerObject = new \ProcessMaker\BusinessModel\CaseTrackerObject();
|
2014-01-14 17:10:47 -04:00
|
|
|
|
2014-01-28 12:30:09 -04:00
|
|
|
$arrayData = $caseTrackerObject->update($cto_uid, $request_data);
|
2014-01-14 17:10:47 -04:00
|
|
|
} catch (\Exception $e) {
|
|
|
|
|
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
2014-01-28 12:30:09 -04:00
|
|
|
* @url DELETE /:prj_uid/case-tracker/object/:cto_uid
|
2014-01-15 17:09:37 -04:00
|
|
|
*
|
2014-01-28 12:30:09 -04:00
|
|
|
* @param string $cto_uid {@min 32}{@max 32}
|
|
|
|
|
* @param string $prj_uid {@min 32}{@max 32}
|
2014-01-14 17:10:47 -04:00
|
|
|
*/
|
2014-01-28 12:30:09 -04:00
|
|
|
public function doDeleteCaseTrackerObject($cto_uid, $prj_uid)
|
2014-01-14 17:10:47 -04:00
|
|
|
{
|
|
|
|
|
try {
|
2014-04-02 17:02:02 -04:00
|
|
|
$caseTrackerObject = new \ProcessMaker\BusinessModel\CaseTrackerObject();
|
2014-01-14 17:10:47 -04:00
|
|
|
|
2014-01-28 12:30:09 -04:00
|
|
|
$caseTrackerObject->delete($cto_uid);
|
2014-01-14 17:10:47 -04:00
|
|
|
} catch (\Exception $e) {
|
|
|
|
|
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|