Saving Intermediate event
This commit is contained in:
@@ -6457,7 +6457,7 @@ function saveExtddEvents($oData)
|
||||
if(preg_match("/Inter/", $aData['EVN_TYPE'])){
|
||||
$aData['EVN_RELATED_TO'] = 'MULTIPLE';
|
||||
}
|
||||
if(preg_match("/Start/", $aData['EVN_TYPE']) || preg_match("/Inter/", $aData['EVN_TYPE'])){
|
||||
if(preg_match("/Start/", $aData['EVN_TYPE'])){
|
||||
$aData['EVN_RELATED_TO'] = 'SINGLE';
|
||||
}
|
||||
if($mode == 'ddEvent'){
|
||||
@@ -6482,7 +6482,14 @@ function saveExtEvents($oData)
|
||||
$oEvent = new Event();
|
||||
$sEvn_uid = '';
|
||||
$sEvn_type = $oData->evn_type;
|
||||
$aData = array();
|
||||
$output = 0;
|
||||
$aDataEvent = array();
|
||||
$aDataTask = array();
|
||||
$aDataEvent['EVN_UID'] = $oData->evn_uid;
|
||||
$aDataEvent['EVN_RELATED_TO'] = 'MULTIPLE';
|
||||
$aDataEvent['EVN_TYPE'] = $oData->evn_type;
|
||||
|
||||
|
||||
if(preg_match("/Start/", $sEvn_type)){
|
||||
$aDataTask['TAS_UID'] = $oData->tas_uid;
|
||||
$aDataTask['TAS_START'] = $oData->tas_start;
|
||||
@@ -6490,13 +6497,15 @@ function saveExtEvents($oData)
|
||||
$aDataTask['TAS_EVN_UID'] = $oData->evn_uid;
|
||||
$oTask->update($aDataTask);
|
||||
|
||||
$aDataEvent['EVN_UID'] = $oData->evn_uid;
|
||||
$aDataEvent['EVN_TAS_UID_TO'] = $oData->tas_uid;
|
||||
$aDataEvent['EVN_TYPE'] = $oData->evn_type;
|
||||
$aDataEvent['EVN_RELATED_TO'] = 'MULTIPLE';
|
||||
$output = $oEvent->update($aDataEvent);
|
||||
return $output;
|
||||
}
|
||||
else if(preg_match("/Inter/", $sEvn_type)){
|
||||
$aDataEvent['EVN_TAS_UID_FROM'] = $oData->tas_from;
|
||||
$aDataEvent['EVN_TAS_UID_TO'] = $oData->tas_to;
|
||||
$output = $oEvent->update($aDataEvent);
|
||||
}
|
||||
return $output;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -88,20 +88,41 @@
|
||||
$countTasks = $countTasks + 1;
|
||||
}
|
||||
}
|
||||
//for Events
|
||||
$lanes = $oProcess->createLanesNewPM($oData->lanes);
|
||||
$fields = $oProcess->createTransitionsPM($oData->tasks,$oData->routes,$arrayEvents,$count,$arrayRoutes,$countRoutes);
|
||||
|
||||
//Get Standalone Events and routes
|
||||
$countEvent = count($fields['EVENTS']);
|
||||
$countRoutes = count($fields['TRANSITION']);
|
||||
foreach($oData->event as $id => $value)
|
||||
{
|
||||
if($value['TAS_UID'] == '' && $value['EVN_TAS_UID_FROM'] == '' && $value['EVN_TAS_UID_TO'] == ''){
|
||||
$arrayEvents[$count]['0'] = $value['EVN_UID'];
|
||||
$arrayEvents[$count]['1'] = $value['EVN_TYPE'];
|
||||
$arrayEvents[$count]['2'] = $value['EVN_POSX'];
|
||||
$arrayEvents[$count]['3'] = $value['EVN_POSY'];
|
||||
$arrayEvents[$count]['4'] = $value['TAS_UID'];
|
||||
$count = $count+ 1;
|
||||
$fields['EVENTS'][$countEvent]['0'] = $value['EVN_UID'];
|
||||
$fields['EVENTS'][$countEvent]['1'] = $value['EVN_TYPE'];
|
||||
$fields['EVENTS'][$countEvent]['2'] = $value['EVN_POSX'];
|
||||
$fields['EVENTS'][$countEvent]['3'] = $value['EVN_POSY'];
|
||||
$fields['EVENTS'][$countEvent]['4'] = $value['TAS_UID'];
|
||||
$countEvent = $countEvent + 1;
|
||||
}
|
||||
else if($value['TAS_UID'] == '' && $value['EVN_TAS_UID_TO'] != ''){ //Check for Intermediate Events
|
||||
$evn_uid = $value['EVN_UID'];
|
||||
$idTask = $value['EVN_TAS_UID_TO'];
|
||||
|
||||
$fields['EVENTS'][$countEvent]['0'] = $value['EVN_UID'];
|
||||
$fields['EVENTS'][$countEvent]['1'] = $value['EVN_TYPE'];
|
||||
$fields['EVENTS'][$countEvent]['2'] = $value['EVN_POSX'];
|
||||
$fields['EVENTS'][$countEvent]['3'] = $value['EVN_POSY'];
|
||||
$fields['EVENTS'][$countEvent]['4'] = $value['TAS_UID'];
|
||||
$countEvent = $countEvent + 1;
|
||||
|
||||
$fields['TRANSITION'][$countRoutes]['0']= G::generateUniqueID();
|
||||
$fields['TRANSITION'][$countRoutes]['1']= $evn_uid;
|
||||
$fields['TRANSITION'][$countRoutes]['2']= $idTask;
|
||||
$fields['TRANSITION'][$countRoutes]['3']= '2';
|
||||
$fields['TRANSITION'][$countRoutes]['4']= '1';
|
||||
$countRoutes = $countRoutes + 1;
|
||||
}
|
||||
}
|
||||
$lanes = $oProcess->createLanesNewPM($oData->lanes);
|
||||
$fields = $oProcess->createTransitionsPM($oData->tasks,$oData->routes,$arrayEvents,$count,$arrayRoutes,$countRoutes);
|
||||
|
||||
//Get all the standalone Gateway
|
||||
$countGateway = count($fields['GATEWAYS']);
|
||||
@@ -112,7 +133,7 @@
|
||||
$fields['GATEWAYS'][$countGateway]['1'] = $value['GAT_TYPE'];
|
||||
$fields['GATEWAYS'][$countGateway]['2'] = $value['GAT_X'];
|
||||
$fields['GATEWAYS'][$countGateway]['3'] = $value['GAT_Y'];
|
||||
$countGateway+=1;
|
||||
$countGateway += 1;
|
||||
}
|
||||
}
|
||||
//$subProcess = $oProcess->createSubProcessesPM($oData->subProcess);
|
||||
|
||||
@@ -1069,7 +1069,7 @@ MyWorkflow.prototype.savePosition= function(oShape)
|
||||
var width = oShape.width;
|
||||
var height = oShape.height;
|
||||
var cordinates = '{"x":'+width+',"y":'+height+'}';
|
||||
var urlparams;
|
||||
var urlparams = '';
|
||||
switch(actiontype)
|
||||
{
|
||||
case 'saveTaskPosition':
|
||||
@@ -1091,15 +1091,17 @@ MyWorkflow.prototype.savePosition= function(oShape)
|
||||
urlparams = '?action='+actiontype+'&data={"uid":"'+ shapeId +'","position":'+cordinates+'}';
|
||||
break;
|
||||
}
|
||||
Ext.Ajax.request({
|
||||
url: "processes_Ajax.php"+ urlparams,
|
||||
success: function(response) {
|
||||
//Ext.Msg.alert (response.responseText);
|
||||
},
|
||||
failure: function(){
|
||||
//Ext.Msg.alert ('Failure');
|
||||
}
|
||||
});
|
||||
if(urlparams != ''){
|
||||
Ext.Ajax.request({
|
||||
url: "processes_Ajax.php"+ urlparams,
|
||||
success: function(response) {
|
||||
//Ext.Msg.alert (response.responseText);
|
||||
},
|
||||
failure: function(){
|
||||
//Ext.Msg.alert ('Failure');
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Saving Shape Asychronously
|
||||
@@ -1197,7 +1199,7 @@ MyWorkflow.prototype.saveShape= function(oNewShape)
|
||||
{
|
||||
var preSelectedFigure = this.workflow.preSelectedObj;
|
||||
if(preSelectedFigure.type.match(/Start/) && preSelectedFigure.type.match(/Event/))
|
||||
this.workflow.saveEvents(preSelectedFigure,oNewShape);
|
||||
this.workflow.saveEvents(preSelectedFigure,oNewShape.id);
|
||||
|
||||
if(preSelectedFigure.type.match(/Task/))
|
||||
this.workflow.saveRoute(preSelectedFigure,oNewShape);
|
||||
@@ -1459,20 +1461,16 @@ MyWorkflow.prototype.saveEvents = function(oEvent,sTaskUID)
|
||||
{
|
||||
var task_uid = new Array();
|
||||
var next_task_uid = new Array();
|
||||
var urlparams = '';
|
||||
if(oEvent.type.match(/Start/))
|
||||
{
|
||||
var tas_start = 'TRUE';
|
||||
var urlparams = '?action=saveEvents&data={"tas_uid":"'+sTaskUID+'","tas_start":"'+tas_start+'","evn_type":"'+oEvent.type+'","evn_uid":"'+oEvent.id+'"}';
|
||||
urlparams = '?action=saveEvents&data={"tas_uid":"'+sTaskUID+'","tas_start":"'+tas_start+'","evn_type":"'+oEvent.type+'","evn_uid":"'+oEvent.id+'"}';
|
||||
}
|
||||
/*else if(oEvent.type.match(/Start/) && (oEvent.type.match(/Message/) || oEvent.type.match(/Timer/)) )
|
||||
{
|
||||
urlparams = '?action=saveEvents&data={"uid":"'+ pro_uid +'","tas_uid":"'+sTaskUID+'","tas_type":"'+oEvent.type+'"}';
|
||||
}*/
|
||||
else if(oEvent.type.match(/Inter/))
|
||||
{
|
||||
var ports = oEvent.getPorts();
|
||||
var len =ports.data.length;
|
||||
|
||||
//Get all the connection of the shape
|
||||
var conn = new Array();
|
||||
var count1 = 0;
|
||||
@@ -1481,33 +1479,27 @@ MyWorkflow.prototype.saveEvents = function(oEvent,sTaskUID)
|
||||
if(typeof ports.data[i] === 'object')
|
||||
conn[i] = ports.data[i].getConnections();
|
||||
}
|
||||
|
||||
//Get ALL the connections for the specified PORT
|
||||
for(i = 0; i< conn.length ; i++)
|
||||
{
|
||||
if(typeof conn[i] != 'undefined')
|
||||
for(var j = 0; j < conn[i].data.length ; j++)
|
||||
{
|
||||
if(typeof conn[i].data[j] != 'undefined')
|
||||
{
|
||||
if(conn[i].data[j].sourcePort.parentNode.type != oEvent.type){
|
||||
// task_uid[count1] = new Array();
|
||||
task_uid[count1] = conn[i].data[j].sourcePort.parentNode.id;
|
||||
count1++;
|
||||
}
|
||||
if(conn[i].data[j].targetPort.parentNode.type != oEvent.type){
|
||||
// task_uid[count2] = new Array();
|
||||
next_task_uid[count2] = conn[i].data[j].targetPort.parentNode.id;
|
||||
count2++;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var staskUid = Ext.util.JSON.encode(task_uid);
|
||||
var sNextTaskUid = Ext.util.JSON.encode(next_task_uid);
|
||||
urlparams = '?action=addEvent&data={"uid":"'+ pro_uid +'","tas_from":"'+staskUid+'","tas_to":"'+sNextTaskUid+'","tas_type":"'+oEvent.type+'"}';
|
||||
for(i = 0; i< conn.length ; i++){
|
||||
if(typeof conn[i] != 'undefined')
|
||||
for(var j = 0; j < conn[i].data.length ; j++){
|
||||
if(typeof conn[i].data[j] != 'undefined'){
|
||||
if(conn[i].data[j].sourcePort.parentNode.type != oEvent.type){
|
||||
// task_uid[count1] = new Array();
|
||||
task_uid = conn[i].data[j].sourcePort.parentNode.id;
|
||||
count1++;
|
||||
}
|
||||
if(conn[i].data[j].targetPort.parentNode.type != oEvent.type){
|
||||
// task_uid[count2] = new Array();
|
||||
next_task_uid = conn[i].data[j].targetPort.parentNode.id;
|
||||
//count2++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// var staskUid = Ext.util.JSON.encode(task_uid);
|
||||
// var sNextTaskUid = Ext.util.JSON.encode(next_task_uid);
|
||||
urlparams = '?action=saveEvents&data={"tas_from":"'+task_uid+'","tas_to":"'+next_task_uid+'","evn_type":"'+oEvent.type+'","evn_uid":"'+oEvent.id+'"}';
|
||||
}
|
||||
|
||||
if(urlparams != ''){
|
||||
|
||||
Reference in New Issue
Block a user