layui.use(['table','ax', 'func'], function () { var $ = layui.$; var table = layui.table; var $ax = layui.ax; var func = layui.func; /** * 管理 */ var Procdef = { tableId: "procdefTable" }; /** * 初始化表格的列 */ Procdef.initColumn = function () { return [[ {type: 'checkbox'}, {type: "numbers", align: "center", title: '序号'}, {field: 'id', hide: true}, {field: 'deploymentId', hide: true}, {field: 'name', sort: true, align: "center", title: '名称'}, {field: 'key', sort: true, align: "center", title: '流程定义KEY'}, { field: 'version', sort: true, align: "center", title: '版本', templet: function (d) { return 'v.' + d.version; } }, {field: 'deployTime', sort: true, align: "center", title: '部署时间'}, {field: 'resourceName', sort: true, align: "center", title: '流程bpmn文件名称'}, {field: 'dgrmResourceName', sort: true, align: "center", title: '流程图片名称'}, { field: 'suspensionState', sort: true, align: "center", title: '状态', templet: function (d) { if (d.suspensionState === 1) { return "已激活"; } else { return "已挂起"; } } }, {align: 'center', toolbar: '#tableBar', title: '操作', minWidth: 380} ]]; }; /** * 点击查询按钮 */ Procdef.search = function () { var queryData = {}; queryData['keywords'] = $("#keywords").val(); table.reload(Procdef.tableId, { where: queryData, page: {curr: 1} }); }; /** * 导入流程 */ Procdef.openAddDlg = function () { func.open({ title: '导入流程', content: Feng.ctxPath + '/process/add', tableId: Procdef.tableId, height: 250 }); }; /** * 映射模型 */ Procdef.map = function (data) { var ajax = new $ax(Feng.ctxPath + "/model/saveModelFromPro", function (data) { Feng.success("映射成功!"); }, function (data) { Feng.error("映射失败!" + data.responseJSON.message) }); ajax.set("processDefinitionId", data.id); ajax.start(); }; /** * 下载模型 */ Procdef.download = function (data) { window.location.href = Feng.ctxPath + '/process/download?deploymentId=' + data.deploymentId; }; /** * 挂起或者激活 */ Procdef.hangActive = function (data, status) { var ajax = new $ax(Feng.ctxPath + "/process/onoffPro", function (data) { if (status === 1) { Feng.success("激活成功!"); } else { Feng.success("挂起成功!"); } table.reload(Procdef.tableId); }, function (data) { if (status === 1) { Feng.error("激活失败!" + data.responseJSON.message) } else { Feng.error("挂起失败!" + data.responseJSON.message) } }); ajax.set("id", data.id); ajax.set("status", status); ajax.start(); }; /** * 点击删除 * * @param data 点击按钮时候的行数据 */ Procdef.delete = function (data) { var operation = function () { var ajax = new $ax(Feng.ctxPath + "/process/delete", function (data) { Feng.success("删除成功!"); table.reload(Procdef.tableId); }, function (data) { Feng.error("删除失败!" + data.responseJSON.message + "!"); }); ajax.set("deploymentId", data.deploymentId); ajax.start(); }; Feng.confirm("是否删除?", operation); }; // 渲染表格 table.render({ elem: '#' + Procdef.tableId, url: Feng.ctxPath + '/process/list', page: true, height: "full-158", cellMinWidth: 100, cols: Procdef.initColumn() }); // 搜索按钮点击事件 $('#btnSearch').click(function () { Procdef.search(); }); // 添加按钮点击事件 $('#btnAdd').click(function () { Procdef.openAddDlg(); }); // 工具条点击事件 table.on('tool(' + Procdef.tableId + ')', function (obj) { var data = obj.data; var layEvent = obj.event; if (layEvent === 'map') { Procdef.map(data); } else if (layEvent === 'download') { Procdef.download(data); } else if (layEvent === 'hangup') { Procdef.hangActive(data, 2); } else if (layEvent === 'active') { Procdef.hangActive(data, 1); } else if (layEvent === 'delete') { Procdef.delete(data); } }); });