Updating GET /projects data return, now it is returning all projects bpmn and classic projects

Them can be classified by prj_type: [bpmn|classic]
This commit is contained in:
Erik Amaru Ortiz
2014-02-26 12:53:17 -04:00
parent 896f9963c7
commit 56be79f2ae
4 changed files with 41 additions and 12 deletions

View File

@@ -613,6 +613,7 @@ class Process extends BaseProcess
$oCriteria->addSelectColumn( ProcessPeer::PRO_PARENT ); $oCriteria->addSelectColumn( ProcessPeer::PRO_PARENT );
$oCriteria->addSelectColumn( ProcessPeer::PRO_STATUS ); $oCriteria->addSelectColumn( ProcessPeer::PRO_STATUS );
$oCriteria->addSelectColumn( ProcessPeer::PRO_CATEGORY ); $oCriteria->addSelectColumn( ProcessPeer::PRO_CATEGORY );
$oCriteria->addSelectColumn( ProcessPeer::PRO_UPDATE_DATE );
$oCriteria->addSelectColumn( ProcessPeer::PRO_CREATE_DATE ); $oCriteria->addSelectColumn( ProcessPeer::PRO_CREATE_DATE );
$oCriteria->addSelectColumn( ProcessPeer::PRO_CREATE_USER ); $oCriteria->addSelectColumn( ProcessPeer::PRO_CREATE_USER );
$oCriteria->addSelectColumn( ProcessPeer::PRO_DEBUG ); $oCriteria->addSelectColumn( ProcessPeer::PRO_DEBUG );

View File

@@ -80,22 +80,39 @@ class BpmnWorkflow extends Project\Bpmn
public static function getList($start = null, $limit = null, $filter = "", $changeCaseTo = CASE_UPPER) public static function getList($start = null, $limit = null, $filter = "", $changeCaseTo = CASE_UPPER)
{ {
$bpmnProjects = parent::getList($start, $limit, $filter, $changeCaseTo); $bpmnProjects = parent::getList($start, $limit, $filter);
$workflowProjects = Project\Workflow::getList($start, $limit, "", ""); $workflowProjects = Project\Workflow::getList($start, $limit, $filter);
$bpmnProjectsUid = array();
$workflowProjectsUids = array(); $bpmnProjectsList = array();
foreach ($workflowProjects as $workflowProject) {
$workflowProjectsUids[] = $workflowProject["PRO_UID"];
}
$prjUidKey = $changeCaseTo == CASE_UPPER ? "PRJ_UID" : "prj_uid";
$list = array(); $list = array();
foreach ($bpmnProjects as $bpmnProject) { foreach ($bpmnProjects as $bpmnProject) {
if (in_array($bpmnProject[$prjUidKey], $workflowProjectsUids)) { $bpmnProjectsList[$bpmnProject["PRJ_UID"]] = $bpmnProject;
$list[] = $bpmnProject; }
$bpmnProjectsUid = array_keys($bpmnProjectsList);
foreach ($workflowProjects as $workflowProject) {
$data["PRJ_UID"] = $workflowProject["PRO_UID"];
$data["PRJ_NAME"] = $workflowProject["PRO_TITLE"];
$data["PRJ_DESCRIPTION"] = $workflowProject["PRO_DESCRIPTION"];
$data["PRJ_CATEGORY"] = $workflowProject["PRO_CATEGORY"];
if (in_array($workflowProject["PRO_UID"], $bpmnProjectsUid)) {
$data["PRJ_TYPE"] = "bpmn";
$data["PRJ_CREATE_DATE"] = $bpmnProjectsList[$workflowProject["PRO_UID"]]["PRJ_CREATE_DATE"];
$data["PRJ_UPDATE_DATE"] = $bpmnProjectsList[$workflowProject["PRO_UID"]]["PRJ_UPDATE_DATE"];
} else {
$data["PRJ_TYPE"] = "classic";
$data["PRJ_CREATE_DATE"] = $workflowProject["PRO_CREATE_DATE"];
$data["PRJ_UPDATE_DATE"] = $workflowProject["PRO_UPDATE_DATE"];
} }
if ($changeCaseTo != CASE_UPPER) {
$data = array_change_key_case($data, $changeCaseTo);
}
$list[] = $data;
} }
return $list; return $list;

View File

@@ -76,6 +76,11 @@ class WorkflowBpmn extends Project\Workflow
} }
} }
public static function getList($start = null, $limit = null, $filter = "", $changeCaseTo = CASE_UPPER)
{
return parent::getList($start, $limit, $filter, $changeCaseTo);
}
public function remove() public function remove()
{ {
parent::remove(); parent::remove();

View File

@@ -129,6 +129,12 @@ class Workflow extends Handler
$processes = $process->getAllProcesses( $start, $limit, "", ""); $processes = $process->getAllProcesses( $start, $limit, "", "");
//$processes = $process->getAll(); //$processes = $process->getAll();
if ($changeCaseTo != CASE_UPPER) {
foreach ($processes as $i => $processRow) {
$processes[$i] = array_change_key_case($processRow, $changeCaseTo);
}
}
return $processes; return $processes;
} }