You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

179 lines
5.3 KiB
Plaintext

11 months ago
var DefuaultUrl = "Base/FormTreeBase.aspx";
ccflowFormTree = {}
Application = {}
DataFactory = function () {
this.data = new ccflowFormTree.Data(DefuaultUrl);
this.common = new ccflowFormTree.common();
}
jQuery(function ($) {
Application = new DataFactory();
});
//公共方法
ccflowFormTree.common = function () {
//sArgName表示要获取哪个参数的值
this.getArgsFromHref = function (sArgName) {
var sHref = GetHrefUrl();
var args = sHref.split("?");
var retval = "";
if (args[0] == sHref) /*参数为空*/
{
return retval; /*无需做任何处理*/
}
var str = args[1];
args = str.split("&");
for (var i = 0; i < args.length; i++) {
str = args[i];
var arg = str.split("=");
if (arg.length <= 1) continue;
if (arg[0] == sArgName) retval = arg[1];
}
return retval;
}
}
//数据访问
ccflowFormTree.Data = function (url) {
this.url = url;
//获取工具栏
this.getAppToolBar = function (nodeId, callback, scope) {
var tUrl = this.url;
var params = {
method: "getapptoolbar",
nodeId: nodeId
};
queryData(tUrl, params, callback, scope);
}
//获取左边表单树
this.getFlowFormTree = function (url, callback, scope) {
var tUrl = url ? url : this.url;
var params = {
method: "getflowformtree"
};
queryData(tUrl, params, callback, scope);
}
//接收人选择
this.checkAccepter = function (FK_Node, WorkID, FID, callback, scope) {
var tUrl = this.url;
var params = {
method: "checkaccepter",
FK_Node: FK_Node,
WorkID: WorkID,
FID: FID
};
queryData(tUrl, params, callback, scope);
}
//执行发送
this.sendCase = function (FK_Flow, FK_Node, WorkID, DoFunc, CFlowNo, WorkIDs, callback, scope) {
var tUrl = this.url;
var params = {
method: "sendcase",
FK_Flow: FK_Flow,
FK_Node: FK_Node,
WorkID: WorkID,
DoFunc: DoFunc,
CFlowNo: CFlowNo,
WorkIDs: WorkIDs
};
queryData(tUrl, params, callback, scope);
}
this.saveBlank = function (fk_flow, fk_node, workid, callback, scope) {
var tUrl = this.url;
var params = {
method: "saveblank",
FK_Flow: fk_flow,
FK_Node: fk_node,
WorkID: workid
};
queryData(tUrl, params, callback, scope);
}
//执行发送到指定节点
this.sendCaseToNode = function (FK_Flow, FK_Node, WorkID, DoFunc, CFlowNo, WorkIDs, ToNode, callback, scope) {
var tUrl = this.url;
var params = {
method: "sendcasetonode",
FK_Flow: FK_Flow,
FK_Node: FK_Node,
WorkID: WorkID,
DoFunc: DoFunc,
CFlowNo: CFlowNo,
WorkIDs: WorkIDs,
ToNode: ToNode
};
queryData(tUrl, params, callback, scope);
}
//撤销发送
this.unSendCase = function (flowId, workId, callback, scope) {
var tUrl = this.url;
var params = {
method: "unsendcase",
FK_Flow: flowId,
WorkID: workId
};
queryData(tUrl, params, callback, scope);
}
//删除流程
this.delcase = function (flowId, nodeId, workId, fId, callback, scope) {
var tUrl = this.url;
var params = {
method: "delcase",
flowId: flowId,
nodeId: nodeId,
workId: workId,
fId: fId
};
queryData(tUrl, params, callback, scope);
}
//流程签名
this.signcase = function (flowId, nodeId, workId, fId, yj, callback, scope) {
var tUrl = this.url;
var params = {
method: "signcase",
flowId: flowId,
nodeId: nodeId,
workId: workId,
fId: fId,
yj: yj
};
queryData(tUrl, params, callback, scope);
}
//结束流程
this.endCase = function (flowId, FK_Node, workId, callback, scope) {
var tUrl = this.url;
var params = {
method: "endcase",
flowId: flowId,
FK_Node: FK_Node,
workId: workId
};
queryData(tUrl, params, callback, scope);
}
//公共方法
function queryData(url, param, callback, scope, method, showErrMsg) {
if (!method) method = 'GET';
$.ajax({
type: method, //使用GET或POST方法访问后台
dataType: "text", //返回json格式的数据
contentType: "application/json; charset=utf-8",
url: url, //要访问的后台地址
data: param, //要发送的数据
async: true,
cache: false,
complete: function () { }, //AJAX请求完成时隐藏loading提示
error: function (XMLHttpRequest, errorThrown) {
callback(XMLHttpRequest);
},
success: function (msg) {//msg为返回的数据在这里做数据绑定
var data = msg;
callback(data, scope);
}
});
}
}