* * @protected */ class Project extends Api { function index() { try { $projects = BpmnModel::loadProjects(); return $projects; } catch (\Exception $e) { throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()); } } /** * @status 201 */ function post($request_data) { try { $bpmnModel = new BpmnModel(); $uids = $bpmnModel->createProject($request_data); $wfProcess = \ProcessMaker\Adapter\Workflow::loadFromBpmnProject($uids[0]['new_uid']); $process = new \BusinessModel\Process(); $userUid = $this->getUserId(); $data = array('process' => $wfProcess); $process->createProcess($userUid, $data); return $uids; } catch (\Exception $e) { throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()); } } function get($prjUid) { try { $project = BpmnModel::loadProject($prjUid); //$WorkflowProces = \ProcessMaker\Adapter\Workflow::loadFromBpmnProject($prjUid); //return $WorkflowProces; return $project; } catch (\Exception $e) { throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()); } } /** * @url GET /:projectUid/dynaforms */ public function doGetDynaForms($projectUid) { try { $process = new \BusinessModel\Process(); $response = $process->getDynaForms($projectUid); return $response; } catch (\Exception $e) { throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage())); } } /** * @url GET /:projectUid/input-documents */ public function doGetInputDocuments($projectUid) { try { $process = new \BusinessModel\Process(); $response = $process->getInputDocuments($projectUid); return $response; } catch (\Exception $e) { throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage())); } } }