Merged in dheeyi/processmaker/PM-1583A (pull request #1484)

PM-1583A Audit Log para Routing Rules, Start Event, End Event.
This commit is contained in:
Julio Cesar Laura Avendaño
2015-02-20 10:56:30 -04:00
3 changed files with 192 additions and 27 deletions

View File

@@ -34,31 +34,35 @@ $oTasks = new Tasks();
$rou_id = 0;
switch ($aData['action']) {
case 'savePattern':
//if ($aData['ROU_TYPE'] != $aData['ROU_TYPE_OLD'])
//{
//if ($aData['ROU_TYPE'] != $aData['ROU_TYPE_OLD'])
//{
$oTasks->deleteAllRoutesOfTask( $aData['PROCESS'], $aData['TASK'] );
//}
//}
require_once 'classes/model/Route.php';
$oRoute = new Route();
switch ($aData['ROU_TYPE']) {
case 'SEQUENTIAL':
case 'SEC-JOIN':
/*if ($aData['ROU_UID'] != '')
{
$aFields['ROU_UID'] = $aData['ROU_UID'];
}*/
case 'SEC-JOIN':
/*if ($aData['ROU_UID'] != '')
{
$aFields['ROU_UID'] = $aData['ROU_UID'];
}*/
$aFields['PRO_UID'] = $aData['PROCESS'];
$aFields['TAS_UID'] = $aData['TASK'];
$aFields['ROU_NEXT_TASK'] = $aData['ROU_NEXT_TASK'];
$aFields['ROU_TYPE'] = $aData['ROU_TYPE'];
//$aFields['ROU_TO_LAST_USER'] = $aData['ROU_TO_LAST_USER'];
//$aFields['ROU_TO_LAST_USER'] = $aData['ROU_TO_LAST_USER'];
$rou_id = $oRoute->create( $aFields );
break;
case 'SELECT':
$tasksAffected='';
$oTaskSavePattern = new Task();
$taskInfo=$oTaskSavePattern->load($aData['TASK']);
$titleTask=$taskInfo['TAS_TITLE'];
foreach ($aData['GRID_SELECT_TYPE'] as $iKey => $aRow) {
/*if ($aRow['ROU_UID'] != '')
{
$aFields['ROU_UID'] = $aRow['ROU_UID'];
/*if ($aRow['ROU_UID'] != '')
{
$aFields['ROU_UID'] = $aRow['ROU_UID'];
}*/
$aFields['PRO_UID'] = $aData['PROCESS'];
$aFields['TAS_UID'] = $aData['TASK'];
@@ -66,16 +70,40 @@ switch ($aData['action']) {
$aFields['ROU_CASE'] = $iKey;
$aFields['ROU_TYPE'] = $aData['ROU_TYPE'];
$aFields['ROU_CONDITION'] = $aRow['ROU_CONDITION'];
//$aFields['ROU_TO_LAST_USER'] = $aRow['ROU_TO_LAST_USER'];
//$aFields['ROU_TO_LAST_USER'] = $aRow['ROU_TO_LAST_USER'];
$rou_id = $oRoute->create( $aFields );
if ($aRow['ROU_NEXT_TASK']=='-1') {
if ($aRow['ROU_CONDITION']=='') {
$tasksAffected.='From -> '.$titleTask.' : '.$aData['TASK'].' To End Of Process Condition -> Empty; ';
}else{
$tasksAffected.='From -> '.$titleTask.' : '.$aData['TASK'].' To End Of Process Condition -> '.$aFields['ROU_CONDITION'].' ; ';
}
}else{
$oTaskSaveNextPattern = new Task();
$taskNextInfo=$oTaskSaveNextPattern->load($aRow['ROU_NEXT_TASK']);
$titleNextTask=$taskNextInfo['TAS_TITLE'];
if ($aRow['ROU_CONDITION']=='') {
$tasksAffected.='From -> '.$titleTask.' : '.$aData['TASK'].' To -> '.$titleNextTask.' : '.$aRow['ROU_NEXT_TASK'].' Condition -> Empty ; ';
}else{
$tasksAffected.='From -> '.$titleTask.' : '.$aData['TASK'].' To -> '.$titleNextTask.' : '.$aRow['ROU_NEXT_TASK'].' Condition -> '.$aFields['ROU_CONDITION'].' ; ';
}
}
unset( $aFields );
}
$oProcessNewPattern = new Process();
$processInfo = $oProcessNewPattern->load($aData['PROCESS']);
$titleProcess = $processInfo['PRO_TITLE'];
G::auditLog("DerivationRule",'PROCESS NAME : '.$titleProcess.' : '.$aData['PROCESS'].' Change Routing Rule From : '.$aData['ROU_TYPE'].' Details : ROU_TYPE_OLD -> '.$aData['ROU_TYPE_OLD']. ' ROU_TYPE ->'.$aData['ROU_TYPE']. ' '.$tasksAffected);
break;
case 'EVALUATE':
$tasksAffected='';
$oTaskSavePattern = new Task();
$taskInfo=$oTaskSavePattern->load($aData['TASK']);
$titleTask=$taskInfo['TAS_TITLE'];
foreach ($aData['GRID_EVALUATE_TYPE'] as $iKey => $aRow) {
/*if ($aRow['ROU_UID'] != '')
{
$aFields['ROU_UID'] = $aRow['ROU_UID'];
/*if ($aRow['ROU_UID'] != '')
{
$aFields['ROU_UID'] = $aRow['ROU_UID'];
}*/
$aFields['PRO_UID'] = $aData['PROCESS'];
$aFields['TAS_UID'] = $aData['TASK'];
@@ -83,16 +111,40 @@ switch ($aData['action']) {
$aFields['ROU_CASE'] = $iKey;
$aFields['ROU_TYPE'] = $aData['ROU_TYPE'];
$aFields['ROU_CONDITION'] = $aRow['ROU_CONDITION'];
//$aFields['ROU_TO_LAST_USER'] = $aRow['ROU_TO_LAST_USER'];
//$aFields['ROU_TO_LAST_USER'] = $aRow['ROU_TO_LAST_USER'];
$rou_id = $oRoute->create( $aFields );
if ($aRow['ROU_NEXT_TASK']=='-1') {
if ($aRow['ROU_CONDITION']=='') {
$tasksAffected.='From -> '.$titleTask.' : '.$aData['TASK'].' To End Of Process Condition -> Empty; ';
}else{
$tasksAffected.='From -> '.$titleTask.' : '.$aData['TASK'].' To End Of Process Condition -> '.$aFields['ROU_CONDITION'].' ; ';
}
}else{
$oTaskSaveNextPattern = new Task();
$taskNextInfo=$oTaskSaveNextPattern->load($aRow['ROU_NEXT_TASK']);
$titleNextTask=$taskNextInfo['TAS_TITLE'];
if ($aRow['ROU_CONDITION']=='') {
$tasksAffected.='From -> '.$titleTask.' : '.$aData['TASK'].' To -> '.$titleNextTask.' : '.$aRow['ROU_NEXT_TASK'].' Condition -> Empty ; ';
}else{
$tasksAffected.='From -> '.$titleTask.' : '.$aData['TASK'].' To -> '.$titleNextTask.' : '.$aRow['ROU_NEXT_TASK'].' Condition -> '.$aFields['ROU_CONDITION'].' ; ';
}
}
unset( $aFields );
}
$oProcessNewPattern = new Process();
$processInfo = $oProcessNewPattern->load($aData['PROCESS']);
$titleProcess = $processInfo['PRO_TITLE'];
G::auditLog("DerivationRule",'PROCESS NAME : '.$titleProcess.' : '.$aData['PROCESS'].' Change Routing Rule From : '.$aData['ROU_TYPE'].' Details : ROU_TYPE_OLD -> '.$aData['ROU_TYPE_OLD']. ' ROU_TYPE ->'.$aData['ROU_TYPE']. ' '.$tasksAffected);
break;
case 'PARALLEL':
$tasksAffected='';
$oTaskSavePattern = new Task();
$taskInfo=$oTaskSavePattern->load($aData['TASK']);
$titleTask=$taskInfo['TAS_TITLE'];
foreach ($aData['GRID_PARALLEL_TYPE'] as $iKey => $aRow) {
/*if ($aRow['ROU_UID'] != '')
{
$aFields['ROU_UID'] = $aRow['ROU_UID'];
/*if ($aRow['ROU_UID'] != '')
{
$aFields['ROU_UID'] = $aRow['ROU_UID'];
}*/
$aFields['PRO_UID'] = $aData['PROCESS'];
$aFields['TAS_UID'] = $aData['TASK'];
@@ -100,14 +152,26 @@ switch ($aData['action']) {
$aFields['ROU_CASE'] = $iKey;
$aFields['ROU_TYPE'] = $aData['ROU_TYPE'];
$rou_id = $oRoute->create( $aFields );
$oTaskSaveNextPattern = new Task();
$taskNextInfo=$oTaskSaveNextPattern->load($aRow['ROU_NEXT_TASK']);
$titleNextTask=$taskNextInfo['TAS_TITLE'];
$tasksAffected.='From -> '.$titleTask.' : '.$aData['TASK'].' To -> '.$titleNextTask.' : '.$aRow['ROU_NEXT_TASK'].' ; ';
unset( $aFields );
}
$oProcessNewPattern = new Process();
$processInfo = $oProcessNewPattern->load($aData['PROCESS']);
$titleProcess = $processInfo['PRO_TITLE'];
G::auditLog("DerivationRule",'PROCESS NAME : '.$titleProcess.' : '.$aData['PROCESS'].' Change Routing Rule From : '.$aData['ROU_TYPE'].' Details : ROU_TYPE_OLD -> '.$aData['ROU_TYPE_OLD']. ' ROU_TYPE ->'.$aData['ROU_TYPE']. ' '.$tasksAffected);
break;
case 'PARALLEL-BY-EVALUATION':
$tasksAffected='';
$oTaskSavePattern = new Task();
$taskInfo=$oTaskSavePattern->load($aData['TASK']);
$titleTask=$taskInfo['TAS_TITLE'];
foreach ($aData['GRID_PARALLEL_EVALUATION_TYPE'] as $iKey => $aRow) {
/*if ($aRow['ROU_UID'] != '')
{
$aFields['ROU_UID'] = $aRow['ROU_UID'];
/*if ($aRow['ROU_UID'] != '')
{
$aFields['ROU_UID'] = $aRow['ROU_UID'];
}*/
$aFields['PRO_UID'] = $aData['PROCESS'];
@@ -119,10 +183,30 @@ switch ($aData['action']) {
if (isset( $aRow['ROU_OPTIONAL'] ) && trim( $aRow['ROU_OPTIONAL'] ) != '' && ($aRow['ROU_OPTIONAL'] === 'TRUE' || $aRow['ROU_OPTIONAL'] === 'FALSE'))
$aFields['ROU_OPTIONAL'] = $aRow['ROU_OPTIONAL'];
$rou_id = $oRoute->create( $aFields );
if ($aRow['ROU_NEXT_TASK']=='-1') {
if ($aRow['ROU_CONDITION']=='') {
$tasksAffected.='From -> '.$titleTask.' : '.$aData['TASK'].' To End Of Process Condition -> Empty; ';
}else{
$tasksAffected.='From -> '.$titleTask.' : '.$aData['TASK'].' To End Of Process Condition -> '.$aFields['ROU_CONDITION'].' ; ';
}
}else{
$oTaskSaveNextPattern = new Task();
$taskNextInfo=$oTaskSaveNextPattern->load($aRow['ROU_NEXT_TASK']);
$titleNextTask=$taskNextInfo['TAS_TITLE'];
if ($aRow['ROU_CONDITION']=='') {
$tasksAffected.='From -> '.$titleTask.' : '.$aData['TASK'].' To -> '.$titleNextTask.' : '.$aRow['ROU_NEXT_TASK'].' Condition -> Empty ; ';
}else{
$tasksAffected.='From -> '.$titleTask.' : '.$aData['TASK'].' To -> '.$titleNextTask.' : '.$aRow['ROU_NEXT_TASK'].' Condition -> '.$aFields['ROU_CONDITION'].' ; ';
}
}
unset( $aFields );
}
$oProcessNewPattern = new Process();
$processInfo = $oProcessNewPattern->load($aData['PROCESS']);
$titleProcess = $processInfo['PRO_TITLE'];
G::auditLog("DerivationRule",'PROCESS NAME : '.$titleProcess.' : '.$aData['PROCESS'].' Change Routing Rule From : '.$aData['ROU_TYPE'].' Details : ROU_TYPE_OLD -> '.$aData['ROU_TYPE_OLD']. ' ROU_TYPE ->'.$aData['ROU_TYPE']. ' '.$tasksAffected);
break;
case 'DISCRIMINATOR': //Girish ->Added to save changes, while editing the route
case 'DISCRIMINATOR': //Girish ->Added to save changes, while editing the route
foreach ($aData['GRID_DISCRIMINATOR_TYPE'] as $iKey => $aRow) {
$aFields['PRO_UID'] = $aData['PROCESS'];
$aFields['TAS_UID'] = $aData['TASK'];

View File

@@ -341,7 +341,7 @@ try {
} else {
switch ($oData->type) {
case 0:
$oData->type = 'SEQUENTIAL';
$oData->type = 'SEQUENTIAL';
break;
case 1:
$oData->type = 'SELECT';
@@ -359,7 +359,7 @@ try {
$oData->type = 'SEC-JOIN';
break;
case 8:
$oData->type = 'DISCRIMINATOR';
$oData->type = 'DISCRIMINATOR';
break;
}
$oProcessMap->newPattern($oData->pro_uid, $oData->tas_uid, $oData->next_task, $oData->type);
@@ -369,24 +369,96 @@ try {
switch ($oData->type) {
case 0:
$sType = 'SEQUENTIAL';
$oProcessNewPattern = new Process();
$taskProcess=$oProcessNewPattern->load($oData->pro_uid);
$titleProcess=$taskProcess['PRO_TITLE'];
$oTaskNewPattern = new Task();
$taskInfo=$oTaskNewPattern->load($oData->tas_uid);
$titleTask=$taskInfo['TAS_TITLE'];
$oTaskNextNewPattern = new Task();
$taskNextInfo=$oTaskNextNewPattern->load($oData->next_task);
$titleNextTask=$$taskNextInfo['TAS_TITLE'];
if ($titleNextTask=='') {
G::auditLog("DerivationRule",'PROCESS NAME : '.$titleProcess.' : '.$oData->pro_uid.' Routing rule : END OF PROCESS Task Name -> '.$titleTask.' : '.$oData->tas_uid);
}else{
G::auditLog("DerivationRule",'PROCESS NAME : '.$titleProcess.' : '.$oData->pro_uid.' Routing rule : '.$sType.' from -> '.$titleTask.' : '.$oData->tas_uid.' To -> '.$titleNextTask.' : '.$oData->next_task);
}
break;
case 1:
$sType = 'SELECT';
$oProcessNewPattern = new Process();
$taskProcess=$oProcessNewPattern->load($oData->pro_uid);
$titleProcess=$taskProcess['PRO_TITLE'];
$oTaskNewPattern = new Task();
$taskInfo=$oTaskNewPattern->load($oData->tas_uid);
$titleTask=$taskInfo['TAS_TITLE'];
$oTaskNextNewPattern = new Task();
$taskNextInfo=$oTaskNextNewPattern->load($oData->next_task);
$titleNextTask=$$taskNextInfo['TAS_TITLE'];
G::auditLog("DerivationRule",'PROCESS NAME : '.$titleProcess.' : '.$oData->pro_uid.' Routing rule : '.$sType.' from -> '.$titleTask.' : '.$oData->tas_uid.' To -> '.$titleNextTask.' : '.$oData->next_task);
break;
case 2:
$sType = 'EVALUATE';
$oProcessNewPattern = new Process();
$taskProcess=$oProcessNewPattern->load($oData->pro_uid);
$titleProcess=$taskProcess['PRO_TITLE'];
$oTaskNewPattern = new Task();
$taskInfo=$oTaskNewPattern->load($oData->tas_uid);
$titleTask=$taskInfo['TAS_TITLE'];
$oTaskNextNewPattern = new Task();
$taskNextInfo=$oTaskNextNewPattern->load($oData->next_task);
$titleNextTask=$$taskNextInfo['TAS_TITLE'];
G::auditLog("DerivationRule",'PROCESS NAME : '.$titleProcess.' : '.$oData->pro_uid.' Routing rule : '.$sType.' from -> '.$titleTask.' : '.$oData->tas_uid.' To -> '.$titleNextTask.' : '.$oData->next_task);
break;
case 3:
$sType = 'PARALLEL';
$oProcessNewPattern = new Process();
$taskProcess=$oProcessNewPattern->load($oData->pro_uid);
$titleProcess=$taskProcess['PRO_TITLE'];
$oTaskNewPattern = new Task();
$taskInfo=$oTaskNewPattern->load($oData->tas_uid);
$titleTask=$taskInfo['TAS_TITLE'];
$oTaskNextNewPattern = new Task();
$taskNextInfo=$oTaskNextNewPattern->load($oData->next_task);
$titleNextTask=$$taskNextInfo['TAS_TITLE'];
G::auditLog("DerivationRule",'PROCESS NAME : '.$titleProcess.' : '.$oData->pro_uid.' Routing rule : '.$sType.' from -> '.$titleTask.' : '.$oData->tas_uid.' To -> '.$titleNextTask.' : '.$oData->next_task);
break;
case 4:
$sType = 'PARALLEL-BY-EVALUATION';
$oProcessNewPattern = new Process();
$taskProcess=$oProcessNewPattern->load($oData->pro_uid);
$titleProcess=$taskProcess['PRO_TITLE'];
$oTaskNewPattern = new Task();
$taskInfo=$oTaskNewPattern->load($oData->tas_uid);
$titleTask=$taskInfo['TAS_TITLE'];
$oTaskNextNewPattern = new Task();
$taskNextInfo=$oTaskNextNewPattern->load($oData->next_task);
$titleNextTask=$$taskNextInfo['TAS_TITLE'];
G::auditLog("DerivationRule",'PROCESS NAME : '.$titleProcess.' : '.$oData->pro_uid.' Routing rule : '.$sType.' from -> '.$titleTask.' : '.$oData->tas_uid.' To -> '.$titleNextTask.' : '.$oData->next_task);
break;
case 5:
$sType = 'SEC-JOIN';
$taskProcess=$oProcessNewPattern->load($oData->pro_uid);
$titleProcess=$taskProcess['PRO_TITLE'];
$oTaskNewPattern = new Task();
$taskInfo=$oTaskNewPattern->load($oData->tas_uid);
$titleTask=$taskInfo['TAS_TITLE'];
$oTaskNextNewPattern = new Task();
$taskNextInfo=$oTaskNextNewPattern->load($oData->next_task);
$titleNextTask=$$taskNextInfo['TAS_TITLE'];
G::auditLog("DerivationRule",'PROCESS NAME : '.$titleProcess.' : '.$oData->pro_uid.' Routing rule : '.$sType.' from -> '.$titleTask.' : '.$oData->tas_uid.' To -> '.$titleNextTask.' : '.$oData->next_task);
break;
case 8:
$sType = 'DISCRIMINATOR';
$taskProcess=$oProcessNewPattern->load($oData->pro_uid);
$titleProcess=$taskProcess['PRO_TITLE'];
$oTaskNewPattern = new Task();
$taskInfo=$oTaskNewPattern->load($oData->tas_uid);
$titleTask=$taskInfo['TAS_TITLE'];
$oTaskNextNewPattern = new Task();
$taskNextInfo=$oTaskNextNewPattern->load($oData->next_task);
$titleNextTask=$$taskNextInfo['TAS_TITLE'];
G::auditLog("DerivationRule",'PROCESS NAME : '.$titleProcess.' : '.$oData->pro_uid.' Routing rule : '.$sType.' from -> '.$titleTask.' : '.$oData->tas_uid.' To -> '.$titleNextTask.' : '.$oData->next_task);
break;
}
if (($oData->type != 0) && ($oData->type != 5) && ($oData->type != 8)) {

View File

@@ -117,7 +117,16 @@ try {
}
$result = $oTask->update( $aData );
$oTaskNewPattern = new Task();
$taskInfo=$oTaskNewPattern->load($aData['TAS_UID']);
$titleTask=$taskInfo['TAS_TITLE'];
$values='';
foreach ($aData as $key => $value){
if ($value!='') {
$values.=$key.' -> '.$value.' ';
}
}
G::auditLog("OptionsMenuTask","Update Task DETAILS : ".$values);
$response["status"] = "OK";
if ($result == 3) {