865 lines
23 KiB
JavaScript
865 lines
23 KiB
JavaScript
var plParentid = 0;
|
|
var processLevel = 0;
|
|
var isLeaf = true;
|
|
var parentNodeId;
|
|
var orderIndexs = new Array();
|
|
var repositoryTree;
|
|
var copeFileNode = "";
|
|
var drpParentId;
|
|
var drpSourceParentId;
|
|
var isOpenMainIfranme = false;
|
|
var repositoryTree;
|
|
$(document).ready(function() {
|
|
initTree();
|
|
repositoryTree.expandNode($("a[tbindex=process]"), true);
|
|
});
|
|
|
|
// 新建层次 打开对话框v2
|
|
function createProcessLevelv2(wd, wsid, parentid, plLevel, div_class) {
|
|
var title = "新建文件";
|
|
var url = "./w?sid=" + encodeURIComponent($('#sid').val())
|
|
+ "&cmd=com.actionsoft.apps.coe.pal_processlevel_create_v2&wsid=" + wsid + "&id="
|
|
+ parentid;
|
|
if (parentid == 0) {
|
|
window.top.$.simpleAlert(请先选择根下相应节点, "info", 2000);
|
|
} else {
|
|
if (parentid.length == 36) {
|
|
var buttons = [
|
|
{
|
|
text : '确定',
|
|
cls : "blue",
|
|
handler : function() {
|
|
var processType = FrmDialog.win().processType;
|
|
if (processType == "default") {
|
|
saveProcessLevel(window);
|
|
var node = repositoryTree.getSelectedNode();
|
|
setPlParentIDAndProcessLevel(node);
|
|
refresh();
|
|
} else {
|
|
$.ajax({
|
|
url : './jd?cmd=com.actionsoft.apps.coe.pal_processlevel_create_save&sid=' + encodeURIComponent($('#sid').val())
|
|
+ '&wsid=' + wsid
|
|
+ '&plLevel=' + (parseInt(plLevel) + 1)
|
|
+ '&plParentId=' + parentid
|
|
+ '&category=' + FrmDialog.win().selectCategoryValue
|
|
+ '&container=' + FrmDialog.win().selectContainer
|
|
+ '&t=' + Math.random(),
|
|
success : function(msg) {
|
|
if (typeof(msg) == "string") {
|
|
msg = eval('(' + msg + ')').msg;
|
|
} else {
|
|
msg = msg.msg;
|
|
}
|
|
var browserId = (Math.random() + new Date().getTime()).toString(16).replace(".", "");
|
|
var url = "./w?sid="
|
|
+ encodeURIComponent($('#sid').val())
|
|
+ "&cmd=com.actionsoft.apps.coe.pal_pl_repository_designer&uuid="
|
|
+ msg
|
|
+ "&openType=0&perms=w,d,v&filePerms=-&browserId=" + browserId;
|
|
$("#disignerIframe").attr("src", url).attr("uuid", msg);
|
|
FrmDialog.close();
|
|
setTimeout(
|
|
function() {
|
|
var node = repositoryTree.getSelectedNode();
|
|
setPlParentIDAndProcessLevel(node);
|
|
refresh();
|
|
}, 500);
|
|
|
|
}
|
|
})
|
|
}
|
|
}
|
|
}, {
|
|
text : '关闭',
|
|
handler : function() {
|
|
FrmDialog.close();
|
|
}
|
|
} ]
|
|
var dlg=FrmDialog.open({
|
|
title:title,
|
|
height:465,
|
|
url:url,
|
|
buttons: buttons
|
|
});
|
|
} else {
|
|
window.top.$.simpleAlert("该节点上不可以新建流程");
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* 功能:去除字符串中所有空格 传参:需要处理的字符串 返回值:去除空格后的字符串
|
|
*/
|
|
function trimSpaces(Str) {
|
|
var ResultStr = "";
|
|
Temp = Str.split(/\s/);
|
|
for (i = 0; i < Temp.length; i++) {
|
|
ResultStr += Temp[i];
|
|
}
|
|
return ResultStr;
|
|
}
|
|
// 流程规划
|
|
function saveProcessLevel(wd) {
|
|
var returnProcessJson = eval("("
|
|
+ window.top.getAwsDialogWindow().returnProcessJson() + ")");
|
|
// alert(returnProcessJson);
|
|
var defaultMessageJson = window.top.getAwsDialogWindow().defaultMessageJson;
|
|
// alert(defaultMessageJson.plParentId);
|
|
var id = returnProcessJson.id;
|
|
var wsId = returnProcessJson.wsId;
|
|
var plNo = trimSpaces(returnProcessJson.plNo);
|
|
var plName = returnProcessJson.plName;
|
|
var plLevel = returnProcessJson.plLevel;
|
|
plLevel = parseInt(plLevel) + 1;
|
|
var plParentId = returnProcessJson.plParentId;
|
|
var plDesc = returnProcessJson.plDesc;
|
|
var plOrderIndex = returnProcessJson.plOrderIndex;
|
|
var plIsBottomLevel = returnProcessJson.plIsBottomLevel;
|
|
var plRDId = returnProcessJson.plRDId;
|
|
var plRP = returnProcessJson.plRP;
|
|
/*
|
|
* if (plRP == "") { window.top.$.simpleAlert("[责任人]不允许为空"); return; }
|
|
*/
|
|
var plM = returnProcessJson.plM;
|
|
var plExecType = returnProcessJson.plExecType;
|
|
var systemName = returnProcessJson.systemName;
|
|
var plAwsPid = returnProcessJson.plAwsPid;
|
|
var oldPlAwsPid = returnProcessJson.oldPlAwsPid;
|
|
var plDiagramUrl = returnProcessJson.plDiagramUrl;
|
|
var plColor = returnProcessJson.plColor;
|
|
var plSecurityR = returnProcessJson.plSecurityR;
|
|
var plSecurityW = returnProcessJson.plSecurityW;
|
|
var oldplSecurityW = returnProcessJson.oldplSecurityW;
|
|
var oldplSecurityR = returnProcessJson.oldplSecurityR;
|
|
var methodId = returnProcessJson.methodId;
|
|
var plDutyDept = returnProcessJson.plDutyDept;
|
|
var plDutyPerson = returnProcessJson.plDutyPerson;
|
|
|
|
if (plName == "") {
|
|
window.top.$.simpleAlert("[" + 名称 + "]" + 不允许为空);
|
|
return false;
|
|
}
|
|
if (plName.length > 120) {
|
|
window.top.$.simpleAlert("[" + 名称 + "]" + "不允许超过120个字符");
|
|
return false;
|
|
}
|
|
if (plDesc.length > 1900) {
|
|
window.top.$.simpleAlert("[描述]不允许超过2000个字符");
|
|
return false;
|
|
}
|
|
if (plNo.length >= 36) {
|
|
window.top.$.simpleAlert(编号长度不允许超过36个字符);
|
|
return false;
|
|
}
|
|
if (!/^[0-9]*$/.test(plNo)) {
|
|
$.simpleAlert("编号只允许为数字类型", "info", 2000);
|
|
}
|
|
if (methodId == "") {
|
|
window.top.$.simpleAlert("对不起,没有找到相应的建模方法");
|
|
return false;
|
|
}
|
|
if (plIsBottomLevel == -1) {
|
|
window.top.$.simpleAlert("[" + 层次 + "]" + 不允许为空);
|
|
return false;
|
|
}
|
|
|
|
if (plM == -1) {
|
|
window.top.$.simpleAlert("[" + 里程碑 + "]" + 不允许为空);
|
|
return false;
|
|
}
|
|
|
|
if (plExecType == -1) {
|
|
window.top.$.simpleAlert("[" + 执行方式 + "]" + 不允许为空);
|
|
return false;
|
|
}
|
|
|
|
var params = {
|
|
id : id,
|
|
wsid : wsId,
|
|
plLevel : plLevel,
|
|
plParentId : plParentId,
|
|
plOrderIndex : plOrderIndex,
|
|
plIsBottomLevel : plIsBottomLevel,
|
|
plExecType : plExecType,
|
|
plNo : plNo,
|
|
plName : plName.trim(),
|
|
plDesc : plDesc,
|
|
plRd : plRDId,
|
|
plRp : plRP,
|
|
plM : plM,
|
|
plSystemName : systemName,
|
|
plAwsPid : plAwsPid,
|
|
oldPlAwsPid : oldPlAwsPid,
|
|
plDiagramUrl : plDiagramUrl,
|
|
plColor : plColor,
|
|
plSecurityW : plSecurityW,
|
|
oldplSecurityW : oldplSecurityW,
|
|
plSecurityR : plSecurityR,
|
|
oldplSecurityR : oldplSecurityR,
|
|
methodId : methodId,
|
|
plDutyDept : plDutyDept,
|
|
plDutyPerson : plDutyPerson
|
|
};
|
|
jQuery.ajax({
|
|
type : "POST",
|
|
url : "./jd?sid=" + encodeURIComponent(jQuery('#sid').val())
|
|
+ "&cmd=com.actionsoft.apps.coe.pal_processlevel_save",
|
|
data : params,
|
|
success : function(msg) {
|
|
if (typeof(msg) == "string") {
|
|
msg = eval('(' + msg + ')');
|
|
}
|
|
msg = msg.msg;
|
|
if (msg.indexOf("-1") == -1) {
|
|
parent.$("#iflowlist").get(0).contentWindow.refresh();
|
|
window.top.$.simpleAlert("新建成功", "ok", 2000);
|
|
window.top.closeAwsDialog();
|
|
} else {
|
|
window.top.$.simpleAlert("保存流程层级失败请稍后重试");
|
|
}
|
|
}
|
|
});
|
|
return true;
|
|
}
|
|
// ------------------------
|
|
function zTreeBeforeAsync(treeId, treeNode) {
|
|
|
|
}
|
|
|
|
function getParam() {
|
|
var wsId = jQuery("#wsId").val();
|
|
var sessionId = jQuery("#sid").val();
|
|
var param = {
|
|
sid : sessionId,
|
|
cmd : "com.actionsoft.apps.coe.pal_processlevel_treejson",
|
|
wsid : wsId
|
|
};
|
|
return param;
|
|
}
|
|
|
|
function setOrderIndexByOutGoing(outgoing, uuid, orderIndex) {
|
|
|
|
}
|
|
|
|
function setOrderIndexByArray(array, uuid, orderIndex) {
|
|
|
|
}
|
|
|
|
function initTree() {
|
|
$("#repositoryTree").empty();
|
|
var wsId = $("#wsId").val();
|
|
if (wsId) {
|
|
var setting = getSetings();
|
|
repositoryTree = awsui.tree.init($("#repositoryTree"), setting);
|
|
$("#repositoryTree").css("height", "auto");
|
|
} else {
|
|
window.top.$.simpleAlert("请选择流程资产", "info", 2000);
|
|
}
|
|
if (repositoryTree.getSelectedNode() == undefined) {
|
|
repositoryTree.selectNode(repositoryTree.config.data[0].id, true);
|
|
}
|
|
}
|
|
|
|
function getSetings() {
|
|
var setting = {
|
|
sort : true,
|
|
dblClickToExpand : true,
|
|
event : {
|
|
beforeDrag : beforeDrag,
|
|
beforeDrop : beforeDrop,
|
|
onDrop : onDrop,
|
|
onClick : clickNode,
|
|
beforeExpand : loadData,
|
|
afterLoad : afterLoad
|
|
},
|
|
edit : {
|
|
enable : true,
|
|
showRemoveBtn : false,
|
|
showRenameBtn : false,
|
|
drag : {
|
|
prev : true,
|
|
next : true,
|
|
inner : true
|
|
}
|
|
},
|
|
async : {
|
|
enable : true,
|
|
type : "post",
|
|
url : "./w",
|
|
autoParam : [ "id=pid" ],
|
|
otherParam : getParam()
|
|
},
|
|
data : {
|
|
keep : {
|
|
parent : true
|
|
}
|
|
}
|
|
};
|
|
setting.contextMenu = {
|
|
items : [
|
|
{
|
|
text : "复制",
|
|
tit : "copy",
|
|
method : function(obj) {
|
|
var node = repositoryTree.getSelectedNode();
|
|
setPlParentIDAndProcessLevel(node);
|
|
copeFileNode = node;
|
|
$(setting.contextMenu.target).menu("close");
|
|
}
|
|
},
|
|
{
|
|
text : "粘贴",
|
|
tit : "paste",
|
|
method : function(obj) {
|
|
if (copeFileNode == null) {
|
|
window.top.$.simpleAlert("请先复制文件", "info", 2000);
|
|
$(setting.contextMenu.target).menu("close");
|
|
return;
|
|
}
|
|
var node = repositoryTree.getSelectedNode();
|
|
if (node.plCategory != copeFileNode.plCategory) {
|
|
window.top.$.simpleAlert("对不起,不能跨文件类型粘贴", "info",
|
|
2000);
|
|
$(setting.contextMenu.target).menu("close");
|
|
return;
|
|
}
|
|
setPlParentIDAndProcessLevel(node);
|
|
$.ajax({
|
|
url : './w?cmd=com.actionsoft.apps.coe.pal_processlevel_copy&sid='
|
|
+ encodeURIComponent($('#sid').val())
|
|
+ '&sourceUUID=' + copeFileNode.id
|
|
+ '&targetUUID=' + node.id,
|
|
async : false,
|
|
success : function(msg) {
|
|
if (typeof(msg) == "string") {
|
|
msg = eval('(' + msg + ')').data;
|
|
}
|
|
refresh();
|
|
if (msg.success == "true") {
|
|
window.top.$.simpleAlert(msg.message, "ok", 2000);
|
|
} else {
|
|
window.top.$.simpleAlert(msg.message, "error");
|
|
}
|
|
}
|
|
})
|
|
$(setting.contextMenu.target).menu("close");
|
|
}
|
|
},{
|
|
text : "新增",
|
|
tit : "create",
|
|
method : function(obj) {
|
|
var node = repositoryTree.getSelectedNode();
|
|
createProcessLevelv2(window,$("#wsId").val(),node.id,node.plLevel, '');
|
|
$(setting.contextMenu.target).menu("close");
|
|
}
|
|
},{
|
|
text : "删除",
|
|
tit : "remove",
|
|
method : function(obj) {
|
|
$(setting.contextMenu.target).menu("close");
|
|
var node = repositoryTree.getSelectedNode();
|
|
deleteProcessLevel(window, node.name, node.id, node.pid);
|
|
}
|
|
}
|
|
|
|
],
|
|
target : "#contextMenu"
|
|
};
|
|
|
|
setting.dataModel = {
|
|
data : data
|
|
};
|
|
return setting;
|
|
}
|
|
function loadData(treeNode) {
|
|
// 如果是父节点并且存在子节点执行加载
|
|
if (treeNode && treeNode.id.length == 36) {
|
|
var dataModel = {
|
|
url : "./w?sid=" + jQuery("#sid").val()
|
|
+ "&cmd=com.actionsoft.apps.coe.pal_processlevel_treejson&pid=" + treeNode.id
|
|
+ "&wsid=" + jQuery("#wsId").val(),
|
|
method : "POST",
|
|
dataType : "json"
|
|
}
|
|
repositoryTree.refreshNode({
|
|
id : treeNode.id,
|
|
dataModel : dataModel
|
|
});
|
|
}
|
|
}
|
|
function afterLoad() {
|
|
$("a[tabindex=process]").trigger("click.nodeClick");
|
|
}
|
|
// 拖拽前事件
|
|
function beforeDrag(treeNode) {
|
|
return true;
|
|
}
|
|
// 移动节点前现将所有的 orderindex计入一个集合
|
|
function putOrdexIndexs(treeNode) {
|
|
var nodes = repositoryTree.getChildrenByPid(treeNode.pid);
|
|
for (var i = 0; i < nodes.length; i++) {
|
|
orderIndexs[i] = nodes[i].plOrdexIndex;
|
|
}
|
|
}
|
|
|
|
var dragType = "";
|
|
function beforeDrop(target, source) {
|
|
if (target.plCategory != source.plCategory) {
|
|
window.top.$.simpleAlert("不允许跨文件类型移动", "info", 2000);
|
|
return false;
|
|
}
|
|
if (repositoryTree.moveObj.find("span:first").hasClass("inner")) {
|
|
dragType = "inner"; //插入target内部
|
|
} else {
|
|
dragType = "insert"; //插入target后面
|
|
}
|
|
return true;
|
|
}
|
|
function onDrop(target, source, position) {
|
|
if(dragType == 'inner' && target.id == source.pid) {
|
|
$.simpleAlert('不允许移动到<b>'+ source.name +'</b>自身的父节点内部', 'error');
|
|
return;
|
|
}
|
|
// 添加特殊情况处理sunlh
|
|
var flag = true;
|
|
if(dragType == 'insert') {
|
|
// 若目标文件为展开状态,增加是放入目标文件的后面或者放入目标文件的内部第一个的判断
|
|
var targetId = target.id;
|
|
if($('#tree_ul_' + targetId).length > 0) { //存在加载好的子节点
|
|
if(!$('#tree_ul_' + targetId).is(':hidden')) { // 子节点已展开
|
|
flag = false;
|
|
$('#moveDialog').dialog({
|
|
title : '移动选项',
|
|
buttons: [
|
|
{text:'确定',cls:"blue",handler:function(){
|
|
if($('#moveInnerFirst').prop('checked')) {
|
|
var firstChildId = $('#tree_ul_' + targetId).find('li:first').attr('li_index');
|
|
var targetNode = repositoryTree.getNodeById(firstChildId);
|
|
moveTreeNode(targetNode, source, 'above');
|
|
}
|
|
if($('#moveInsertBelow').prop('checked')) {
|
|
moveTreeNode(target, source, position);
|
|
}
|
|
$('#moveDialog').dialog('close');
|
|
}},
|
|
{text:'取消',handler:function(){$('#moveDialog').dialog('close');return;}}
|
|
],
|
|
onClose: function() {
|
|
$('#moveInnerFirst').check('option','checked', true);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
}
|
|
if(flag) {
|
|
moveTreeNode(target, source, position);
|
|
}
|
|
}
|
|
|
|
// 拖动树节点
|
|
function moveTreeNode(target, source, position) {
|
|
var sourceParentNode = repositoryTree.getNodeById(source.pid);
|
|
var targetParentNode = repositoryTree.getNodeById(target.pid);
|
|
if (targetParentNode == undefined) {
|
|
targetParentNode = repositoryTree.getNodeById(target.id);
|
|
}
|
|
var msg = "";
|
|
if(dragType == 'inner') {// 放入里面,默认最后的位置
|
|
msg = "确认将<b>" + source.name + "</b>放入<b>" + target.name + "</b>里面?";
|
|
}
|
|
if(dragType == 'insert') {// 放入文件之间
|
|
if(position == 'below') {// 放入target下面
|
|
msg = "确认将<b>" + source.name + "</b>放入<b>" + target.name + "</b>的后面(同级)?";
|
|
}
|
|
if(position == 'above') {// 放入target上面
|
|
msg = "确认将<b>" + source.name + "</b>放入<b>" + target.name + "</b>的前面(同级)?";
|
|
}
|
|
}
|
|
var options = {
|
|
title : "提示",
|
|
content:msg,
|
|
onConfirm: function(){
|
|
// 拖拽成功后
|
|
awsui.ajax.request({
|
|
url : "./jd",
|
|
method : "POST",
|
|
data : {
|
|
sid: $("#sid").val(),
|
|
cmd: "com.actionsoft.apps.coe.pal_update_index_or_pid",
|
|
sourceId: source.id,
|
|
targetId: target.id,
|
|
type: dragType,
|
|
position: position
|
|
},
|
|
ok : function(r) {
|
|
//initTree();
|
|
doLoad(sourceParentNode);
|
|
doLoad(targetParentNode);
|
|
dragType = "";
|
|
},
|
|
err:function(r){
|
|
}
|
|
});
|
|
},
|
|
onCancel : function(){
|
|
return true;
|
|
}
|
|
};
|
|
$.confirm(options);
|
|
}
|
|
/*var dragType = "";
|
|
function beforeDrop(target, source) {
|
|
if (target.plCategory != source.plCategory) {
|
|
window.top.$.simpleAlert("不允许跨文件类型移动", "info", 2000);
|
|
return false;
|
|
}
|
|
if (repositoryTree.moveObj.find("span:first").hasClass("inner")) {
|
|
dragType = "inner"; //插入target内部
|
|
} else {
|
|
dragType = "insert"; //插入target后面
|
|
}
|
|
return true;
|
|
}
|
|
function onDrop(target, source, position) {
|
|
var sourceParentNode = repositoryTree.getNodeById(source.pid);
|
|
var targetParentNode = repositoryTree.getNodeById(target.pid);
|
|
if (targetParentNode == undefined) {
|
|
targetParentNode = repositoryTree.getNodeById(target.id);
|
|
}
|
|
var options = {
|
|
title : "提示",
|
|
content:"确定移动此文件吗?",
|
|
onConfirm: function(){
|
|
// 拖拽成功后
|
|
awsui.ajax.request({
|
|
url : "./jd",
|
|
method : "POST",
|
|
data : {
|
|
sid: $("#sid").val(),
|
|
cmd: "com.actionsoft.apps.coe.pal_update_index_or_pid",
|
|
sourceId: source.id,
|
|
targetId: target.id,
|
|
type: dragType,
|
|
position: position
|
|
},
|
|
ok : function(r) {
|
|
//initTree();
|
|
|
|
doLoad(sourceParentNode);
|
|
doLoad(targetParentNode);
|
|
},
|
|
err:function(r){
|
|
}
|
|
});
|
|
},
|
|
onCancel : function(){
|
|
return true;
|
|
}
|
|
};
|
|
$.confirm(options);
|
|
}*/
|
|
// 同级移动返回更新后的orderIndex
|
|
function getNewOrderIndexStr(parentNode) {
|
|
var str = "";
|
|
var nodes = repositoryTree.getChildrenByPid(parentNode.id);
|
|
;
|
|
for (var i = 0; i < nodes.length; i++) {
|
|
nodes[i].plOrdexIndex = orderIndexs[i];
|
|
}
|
|
for (var i = 0; i < nodes.length; i++) {
|
|
if (i == 0) {
|
|
str += nodes[i].id + "|" + nodes[i].plOrdexIndex;
|
|
} else {
|
|
str += "," + nodes[i].id + "|" + nodes[i].plOrdexIndex;
|
|
}
|
|
}
|
|
// console.log(str);
|
|
return str;
|
|
}
|
|
|
|
// 跨级移动更新pid
|
|
function getNewPid(treeNodes, afterId) {
|
|
var pids = "";
|
|
for (var i = 0; i < treeNodes.length; i++) {
|
|
if (i == 0) {
|
|
pids += treeNodes[i].id;
|
|
} else {
|
|
pids += "|" + treeNodes[i].id;
|
|
}
|
|
}
|
|
pids += "," + afterId;
|
|
return pids;
|
|
}
|
|
|
|
// 异步设置orderindex
|
|
function updateOrderIndex(str, target, source) {
|
|
var param = {
|
|
orderIndexs : str
|
|
}
|
|
jQuery.ajax({
|
|
type : "POST",
|
|
url : "./w?sid=" + encodeURIComponent(jQuery('#sid').val())
|
|
+ "&cmd=com.actionsoft.apps.coe.pal_processlevel_setploaderindex",
|
|
data : param,
|
|
success : function(msg) {
|
|
if (msg == "-1") {
|
|
window.top.$.simpleAlert("拖动失败请稍候重试", "info", 2000);
|
|
} else {
|
|
window.setTimeout(function() {
|
|
refreshNode(source.pid);
|
|
}, 300);
|
|
window.setTimeout(function() {
|
|
refreshNode(target.id);
|
|
}, 300);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
function updatePid(str, target, source) {
|
|
var param = {
|
|
pids : str
|
|
}
|
|
jQuery.ajax({
|
|
type : "POST",
|
|
url : "./w?sid=" + encodeURIComponent(jQuery('#sid').val())
|
|
+ "&cmd=com.actionsoft.apps.coe.pal_processlevel_setplid",
|
|
data : param,
|
|
success : function(msg) {
|
|
if (msg == "-1") {
|
|
window.top.$.simpleAlert("拖动失败请稍候重试", "info", 2000);
|
|
} else {
|
|
window.setTimeout(function() {
|
|
refreshNode(source.pid);
|
|
}, 300);
|
|
window.setTimeout(function() {
|
|
refreshNode(target.id);
|
|
}, 300);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
function clickNode(treeNode) {
|
|
if (treeNode.id.length == 36) {
|
|
openDesginer(treeNode.id, 0, treeNode.name, "", treeNode.versionId, false, "0");
|
|
}
|
|
}
|
|
function openDesginer(uuid, openType, plName, appId, processVersionId,
|
|
isOpenDialog, collaboration) {
|
|
if(collaboration == undefined || collaboration == null) {
|
|
collaboration = "0";
|
|
}
|
|
var browserId = (Math.random() + new Date().getTime()).toString(16).replace(".", "");
|
|
var params = {
|
|
sid : encodeURIComponent(jQuery('#sid').val()),
|
|
cmd : "com.actionsoft.apps.coe.pal_pl_repository_designer",
|
|
uuid : uuid,
|
|
openType : openType,
|
|
processDefId : processVersionId,
|
|
collaboration : collaboration,
|
|
teamId : "",
|
|
perms: "w,d,v",
|
|
filePerms: "-",
|
|
browserId: browserId
|
|
}, url, options;
|
|
if (typeof (isOpenDialog) == "boolean" && isOpenDialog) {// 打开与bpmn关联的多个版本
|
|
params = {
|
|
sid : encodeURIComponent(jQuery('#sid').val()),
|
|
cmd : "com.actionsoft.apps.coe.pal_pl_repository_version",
|
|
uuid : uuid,
|
|
appId : appId,
|
|
processVersionId : processVersionId
|
|
};
|
|
url = "./w?" + connectParams(params);
|
|
options = {
|
|
buttons : [ // 按钮组
|
|
{
|
|
text : '关闭',
|
|
handler : function() {
|
|
window.top.closeAwsDialog();
|
|
}
|
|
} ]
|
|
}
|
|
window.top.openAwsDialog(url, plName, 770, 415, options);
|
|
return;
|
|
}
|
|
url = "./w?" + connectParams(params);
|
|
$("#disignerIframe").attr("src", url).attr("uuid", uuid);
|
|
}
|
|
|
|
function openDesginerFromAttr(uuid, openType, plName, appId, processVersionId,
|
|
isOpenDialog, shapeId) {
|
|
var params = {
|
|
sid : encodeURIComponent(jQuery('#sid').val()),
|
|
cmd : "com.actionsoft.apps.coe.pal_pl_repository_designer_open_shape_page",
|
|
uuid : uuid,
|
|
openType : openType,
|
|
processDefId : processVersionId,
|
|
shapeId : shapeId,
|
|
teamId : ""
|
|
};
|
|
var url = "./w?" + connectParams(params);
|
|
$("#disignerIframe").attr("src", url).attr("uuid", uuid);
|
|
}
|
|
|
|
function connectParams(params) {
|
|
var connParms = "";
|
|
if (typeof (params) == "object") {
|
|
for ( var i in params) {
|
|
connParms += i + "=" + params[i] + "&";
|
|
}
|
|
}
|
|
|
|
return connParms.substring(0, connParms.length - 1);
|
|
}
|
|
|
|
function closeTabById(index) {
|
|
awsTabs.closeTab(index, null);
|
|
}
|
|
|
|
|
|
// 异步节点加载成功后回调
|
|
function onAsyncSuccess(event, treeId, treeNode, msg) {
|
|
var zTree = jQuery.fn.zTree.getZTreeObj("processLevelTree");
|
|
setTimeout(function() {
|
|
if (treeNode) {
|
|
if (treeNode.level < 1) { // 展开到指定层级
|
|
if (treeNode.children && treeNode.children.length > 0) {
|
|
expandNodes(zTree, treeNode.children);
|
|
}
|
|
}
|
|
}
|
|
}, 500); // 加载下级节点
|
|
}
|
|
|
|
function getNodeIndex(nodes, treeNode) {
|
|
var index = 0;
|
|
if (nodes && treeNode) {
|
|
for (var i = 0; nodes.length; i++) {
|
|
if (treeNode.id == nodes[i].id) {
|
|
index = i + 1;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
return index;
|
|
}
|
|
|
|
function setPlParentIDAndProcessLevel(treeNode) {
|
|
if (!treeNode.isParent) {
|
|
treeNode.isParent = true;
|
|
}
|
|
plParentid = treeNode.id;
|
|
processLevel = treeNode.plLevel;
|
|
isLeaf = treeNode.isParent;
|
|
}
|
|
|
|
// 展开所有节点
|
|
function expandNodes(zTree, nodes) {
|
|
if (!nodes)
|
|
return;
|
|
for (var i = 0, l = nodes.length; i < l; i++) {
|
|
zTree.expandNode(nodes[i], true, false, false);
|
|
if (nodes[i].isParent) {
|
|
expandNodes(nodes[i].children);
|
|
}
|
|
}
|
|
}
|
|
|
|
// 自动展开两级节点
|
|
function expandNodesFirst(zTree, nodes) {
|
|
if (!nodes)
|
|
return;
|
|
for (var i = 0, l = 1; i < l; i++) {
|
|
zTree.expandNode(nodes[i], true, false, false);
|
|
if (nodes[i].isParent && nodes[i].zAsync) {
|
|
expandNodesFirst(nodes[i].children);
|
|
}
|
|
}
|
|
}
|
|
|
|
// 自动展开n级节点
|
|
function expandNodesN(zTree, nodes, n) {
|
|
if (!nodes)
|
|
return;
|
|
for (var i = 0, l = n; i < l; i++) {
|
|
zTree.expandNode(nodes[i], true, false, false);
|
|
if (nodes[i].isParent) {
|
|
expandNodesN(zTree, nodes[i].children, n);
|
|
}
|
|
}
|
|
}
|
|
|
|
// 刷新指定节点
|
|
function refreshNode(id) {
|
|
if (!id) {
|
|
id = plParentid;
|
|
}
|
|
var node = repositoryTree.getNodeById(id);
|
|
if (node == null) {
|
|
} else {
|
|
loadData(node);
|
|
if (repositoryTree.existsChildren(id)) {
|
|
node.open = true;
|
|
} else {
|
|
delete node.open;
|
|
}
|
|
doLoad(node, "reload");
|
|
}
|
|
}
|
|
// 刷新树
|
|
function refresh(id) {
|
|
refreshNode(id);
|
|
}
|
|
function doLoad(treeNode, type) {
|
|
var dataModel = {
|
|
url : "./jd?sid=" + $("#sid").val()
|
|
+ "&cmd=com.actionsoft.apps.coe.pal_processlevel_treejson&pid=" + treeNode.id
|
|
+ "&wsid=" + $("#wsId").val(),
|
|
method : "POST",
|
|
dataType : "json"
|
|
}
|
|
repositoryTree.refreshNode({
|
|
id : treeNode.id,
|
|
dataModel : dataModel
|
|
});
|
|
}
|
|
|
|
function deleteProcessLevel(wd, name, id, pid) {
|
|
var options = {
|
|
title : "提示",
|
|
content : "确定删除流程" + "[" + name + "]" + "吗?",
|
|
model : false,
|
|
onConfirm : function() {
|
|
$.simpleAlert("正在处理", "loading");
|
|
var wsId = jQuery("#wsId").val();
|
|
var params = {
|
|
wsid : wsId,
|
|
pid : id
|
|
};
|
|
jQuery.ajax({
|
|
type : "POST",
|
|
url : "./w?sid=" + encodeURIComponent(jQuery('#sid').val())
|
|
+ "&cmd=com.actionsoft.apps.coe.pal_processlevel_tree_remove",
|
|
data : params,
|
|
success : function(msg) {
|
|
$.simpleAlert("close");
|
|
msg = eval('(' + msg + ')').msg;
|
|
if (msg == "1") {
|
|
$.simpleAlert("删除成功", "ok", 2000);
|
|
refreshNode(pid);
|
|
if ($("#disignerIframe").attr("uuid") == id) {
|
|
$("#disignerIframe").attr("uuid", "").attr("src", "");
|
|
}
|
|
} else {
|
|
$.simpleAlert("删除失败请稍后重试", "info", 2000);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
};
|
|
window.top.$.confirm(options);
|
|
}
|