Completed saving and loading Gateway...
This commit is contained in:
@@ -1462,7 +1462,7 @@ class processMap {
|
||||
try {
|
||||
$oGateway = new Gateway ( );
|
||||
$aData = array();
|
||||
$aData['PRO_UID'] = $oData->pro_uid;
|
||||
$aData['PRO_UID'] = $oData->pro_uid;
|
||||
$aData['GAT_X'] = $oData->position->x;
|
||||
$aData['GAT_Y'] = $oData->position->y;
|
||||
$aData['GAT_TYPE'] = $oData->gat_type;
|
||||
@@ -1472,6 +1472,8 @@ class processMap {
|
||||
$sGat_uid = $oGateway->create($aData);
|
||||
}else{
|
||||
$aData['GAT_UID'] = $sGat_uid;
|
||||
$aData['TAS_UID'] = $oData->tas_from;
|
||||
$aData['GAT_NEXT_TASK'] = $oData->tas_to;
|
||||
$oGateway->update($aData);
|
||||
}
|
||||
$oEncode->uid = $sGat_uid;
|
||||
|
||||
@@ -44,7 +44,6 @@ if($aData['ROU_TYPE'] != 'SEQUENTIAL')
|
||||
$aGatewayFields['GAT_NEXT_TASK'] = $aData['ROU_NEXT_TASK'][0];
|
||||
$aGatewayFields['GAT_TYPE'] = $aData['GAT_TYPE'];
|
||||
$oGateway->update($aGatewayFields);
|
||||
die;
|
||||
//$sGatewayUID = $oProcessMap->saveNewGateway($aData['PROCESS'], $aData['TASK'][0], $aData['ROU_NEXT_TASK'][0]);
|
||||
//echo $sGatewayUID.'|';
|
||||
}
|
||||
@@ -54,6 +53,7 @@ else
|
||||
G::LoadClass('tasks');
|
||||
$oTasks = new Tasks();
|
||||
$rou_id = 0;
|
||||
$aFields['GAT_UID'] = $aData['GAT_UID'];
|
||||
switch ($aData['action']) {
|
||||
case 'savePattern':
|
||||
//if ($aData['ROU_TYPE'] != $aData['ROU_TYPE_OLD'])
|
||||
|
||||
@@ -1174,8 +1174,7 @@ MyWorkflow.prototype.saveShape= function(oNewShape)
|
||||
case 'addGateway':
|
||||
var gat_uid = oNewShape.id
|
||||
var gat_type = oNewShape.type;
|
||||
var mode = oNewShape.mode;
|
||||
urlparams = '?action='+actiontype+'&data={"pro_uid":"'+ pro_uid +'","gat_uid":"'+gat_uid +'","gat_type":"'+gat_type+'","position":'+pos+',"mode":"'+mode+'"}';
|
||||
urlparams = '?action='+actiontype+'&data={"pro_uid":"'+ pro_uid +'","gat_uid":"'+gat_uid +'","gat_type":"'+gat_type+'","position":'+pos+'}';
|
||||
break;
|
||||
}
|
||||
//var urlparams = '?action='+actiontype+'&data={"uid":"'+ pro_uid +'","position":'+pos+'}';
|
||||
@@ -1217,6 +1216,9 @@ MyWorkflow.prototype.saveShape= function(oNewShape)
|
||||
else if(oNewShape.type.match(/Start/) && oNewShape.type.match(/Event/)){
|
||||
workflow.saveEvents(oNewShape);
|
||||
}
|
||||
else if(oNewShape.type.match(/Gateway/)){
|
||||
workflow.saveGateways(oNewShape);
|
||||
}
|
||||
}
|
||||
},
|
||||
failure: function(){
|
||||
@@ -1450,6 +1452,77 @@ MyWorkflow.prototype.getStartEventConn = function(oShape,sPort,sPortType)
|
||||
return aStartTask;
|
||||
}
|
||||
|
||||
/**
|
||||
* save Gateway depending on the Shape Type
|
||||
* @Param oGateway Object
|
||||
* @Param sTaskUID string
|
||||
* @Author Safan Maredia
|
||||
*/
|
||||
MyWorkflow.prototype.saveGateways = function(oGateway){
|
||||
var task_uid = new Array();
|
||||
var next_task_uid = new Array();
|
||||
var urlparams = '';
|
||||
var xpos = oGateway.x;
|
||||
var ypos = oGateway.y;
|
||||
var pos = '{"x":'+xpos+',"y":'+ypos+'}';
|
||||
|
||||
var ports = oGateway.getPorts();
|
||||
var len =ports.data.length;
|
||||
//Get all the connection of the shape
|
||||
var conn = new Array();
|
||||
var count1 = 0;
|
||||
var count2 = 0;
|
||||
for(var i=0; i<=len; i++){
|
||||
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 != oGateway.type){
|
||||
// task_uid[count1] = new Array();
|
||||
task_uid = conn[i].data[j].sourcePort.parentNode.id;
|
||||
count1++;
|
||||
}
|
||||
if(conn[i].data[j].targetPort.parentNode.type != oGateway.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=addGateway&data={"pro_uid":"'+ pro_uid +'","tas_from":"'+task_uid+'","tas_to":"'+next_task_uid+'","gat_type":"'+oGateway.type+'","gat_uid":"'+oGateway.id+'","position":'+pos+'}';
|
||||
if(urlparams != ''){
|
||||
Ext.Ajax.request({
|
||||
url: "processes_Ajax.php"+ urlparams,
|
||||
success: function(response) {
|
||||
if(response.responseText != '')
|
||||
{
|
||||
// workflow.currentSelection.id = response.responseText;
|
||||
/*if(workflow.currentSelection.type.match(/Inter/) && workflow.currentSelection.type.match(/Event/)){
|
||||
workflow.currentSelection.id = response.responseText;
|
||||
var newObj = workflow.currentSelection;
|
||||
var preObj = new Array();
|
||||
preObj.type = 'bpmnTask';
|
||||
preObj.id = task_uid[0];
|
||||
newObj.evn_uid = workflow.currentSelection.id;
|
||||
newObj.task_to = next_task_uid[0];
|
||||
this.workflow.saveRoute(preObj,newObj);
|
||||
}*/
|
||||
}
|
||||
},
|
||||
failure: function(){
|
||||
Ext.Msg.alert ('Failure');
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* save Event depending on the Shape Type
|
||||
* @Param oShape Object
|
||||
@@ -1644,8 +1717,8 @@ MyWorkflow.prototype.saveRoute = function(preObj,newObj)
|
||||
var staskUid = Ext.util.JSON.encode(task_uid);
|
||||
var sNextTaskUid = Ext.util.JSON.encode(next_task_uid);
|
||||
var sGatUid = preObj.id;
|
||||
var sGatType = preObj.type;
|
||||
if(staskUid != '')
|
||||
var sGatType = preObj.type;
|
||||
if(task_uid.length > 0 && next_task_uid.length > 0)
|
||||
{
|
||||
Ext.Ajax.request({
|
||||
url: "patterns_Ajax.php",
|
||||
@@ -1684,6 +1757,8 @@ MyWorkflow.prototype.saveRoute = function(preObj,newObj)
|
||||
}
|
||||
});
|
||||
}
|
||||
else
|
||||
workflow.saveGateways(preObj);
|
||||
}
|
||||
|
||||
MyWorkflow.prototype.deleteRoute = function(oConn,iVal){
|
||||
|
||||
@@ -323,6 +323,12 @@ InputPort.prototype.onDrop = function (port) {
|
||||
newObj = port.parentNode;
|
||||
workflow.saveRoute(newObj,shape);
|
||||
}
|
||||
//Routing from gateway to task
|
||||
else if(bpmnType.match(/Gateway/) && port.parentNode.type.match(/Task/)){
|
||||
preObj = this.workflow.currentSelection;
|
||||
newObj = port.parentNode;
|
||||
this.workflow.saveRoute(preObj,newObj);
|
||||
}
|
||||
//Routing from task to Intermediate event
|
||||
else if(port.parentNode.type.match(/Inter/) && port.parentNode.type.match(/Event/) && bpmnType.match(/Task/)){
|
||||
workflow.saveEvents(port.parentNode);
|
||||
@@ -396,6 +402,11 @@ OutputPort.prototype.onDrop = function (port) {
|
||||
preObj = this.workflow.currentSelection;
|
||||
this.workflow.saveRoute(preObj,shape);
|
||||
}
|
||||
else if(bpmnType.match(/Task/) && port.parentNode.type.match(/Gateway/)){ //Routing from task to gateway
|
||||
newObj = port.parentNode;
|
||||
preObj = this.workflow.currentSelection;
|
||||
this.workflow.saveRoute(newObj,preObj);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -749,8 +760,8 @@ bpmnTask.prototype.addShapes = function (oStore) {
|
||||
conn.setTarget(newShape.getPort("input2"));
|
||||
conn.setSource(workflow.currentSelection.getPort("output1"));
|
||||
workflow.addFigure(conn);
|
||||
//newShape.actiontype = 'addGateway';
|
||||
//workflow.saveShape(newShape);
|
||||
newShape.actiontype = 'addGateway';
|
||||
workflow.saveShape(newShape);
|
||||
}
|
||||
else if (newShape.type.match(/Start/)) {
|
||||
conn.setTarget(newShape.getPort("output1"));
|
||||
|
||||
Reference in New Issue
Block a user