5.0.225
parent
d53ae78d43
commit
153035718d
|
@ -52,12 +52,12 @@
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.kdayun</groupId>
|
<groupId>com.kdayun</groupId>
|
||||||
<artifactId>kdayun-wechat</artifactId>
|
<artifactId>kdayun-wechat</artifactId>
|
||||||
<version>1.0.2</version>
|
<version>1.0.4</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.kdayun</groupId>
|
<groupId>com.kdayun</groupId>
|
||||||
<artifactId>kdayun-wecom</artifactId>
|
<artifactId>kdayun-wecom</artifactId>
|
||||||
<version>1.0.2</version>
|
<version>1.0.4</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.kdayun</groupId>
|
<groupId>com.kdayun</groupId>
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
|
||||||
|
apidoc:
|
||||||
|
#启动在线api文档
|
||||||
|
enabled: false
|
||||||
|
docket:
|
||||||
|
user:
|
||||||
|
title: 平台模块API
|
||||||
|
base-package: com.kdayun.bbjc.controller
|
|
@ -6,13 +6,14 @@ spring:
|
||||||
ehcache:
|
ehcache:
|
||||||
config: "classpath:ehcache.xml"
|
config: "classpath:ehcache.xml"
|
||||||
# redis 的配置
|
# redis 的配置
|
||||||
redis:
|
redis:
|
||||||
host: 127.0.0.1
|
enable: false
|
||||||
port: 6379
|
host: 127.0.0.2
|
||||||
timeout: 5000
|
port: 6379
|
||||||
jedis:
|
timeout: 5000
|
||||||
pool:
|
jedis:
|
||||||
max-idle: 8
|
pool:
|
||||||
min-idle: 0
|
max-idle: 8
|
||||||
max-active: 8
|
min-idle: 0
|
||||||
max-wait: -1
|
max-active: 8
|
||||||
|
max-wait: -1
|
|
@ -4,4 +4,11 @@ wx:
|
||||||
appSecret: 2ec8b51c532f00a6195edc1c8f3c56d1
|
appSecret: 2ec8b51c532f00a6195edc1c8f3c56d1
|
||||||
mchId: 1622320307
|
mchId: 1622320307
|
||||||
mchKey: 0C4857A6FC5B4597A8350C34794D56C0
|
mchKey: 0C4857A6FC5B4597A8350C34794D56C0
|
||||||
keyPath: classpath:wx.p12
|
keyPath: classpath:wx.p12
|
||||||
|
miniapp:
|
||||||
|
configs:
|
||||||
|
- appid: #微信小程序的appid
|
||||||
|
secret: #微信小程序的Secret
|
||||||
|
token: #微信小程序消息服务器配置的token
|
||||||
|
aesKey: #微信小程序消息服务器配置的EncodingAESKey
|
||||||
|
msgDataFormat: JSON
|
|
@ -2,7 +2,7 @@
|
||||||
spring:
|
spring:
|
||||||
profiles:
|
profiles:
|
||||||
#引用多个application-开头的yml文件 多个以逗号隔开
|
#引用多个application-开头的yml文件 多个以逗号隔开
|
||||||
include: db,logger,cache,upload,freemarker,druid,mybatis,baidu,server,cloud,wechat,security,proxy,xss,encryption
|
include: db,logger,cache,upload,freemarker,druid,mybatis,baidu,server,cloud,wechat,security,proxy,xss,encryption,apidoc
|
||||||
devtools:
|
devtools:
|
||||||
restart:
|
restart:
|
||||||
ebabled: false
|
ebabled: false
|
||||||
|
|
|
@ -733,6 +733,48 @@ layui.define(['layer', 'form', 'zlmessenger', 'messenger', 'zlConfig', 'util'],
|
||||||
$("#downloadform").prop('action', url);
|
$("#downloadform").prop('action', url);
|
||||||
$("#downloadform").submit();
|
$("#downloadform").submit();
|
||||||
},
|
},
|
||||||
|
/**
|
||||||
|
* 下载函数
|
||||||
|
* @param {*} url 下载地址
|
||||||
|
* @param {*} paramObj 参数对象 注意只支持 {xxx:yyy }不支持数组
|
||||||
|
* @param {*} method post,get ...
|
||||||
|
*/
|
||||||
|
downloadEx: function (url, paramObj, method) {
|
||||||
|
let _downloadid = new Date().getTime();
|
||||||
|
let formId = "downloadEx-downloadform"
|
||||||
|
let iframeId = "downloadEx-Iframe-downloadform"
|
||||||
|
if ($("#" + formId).length > 0) {
|
||||||
|
$("#" + formId).remove();
|
||||||
|
}
|
||||||
|
if ($("#" + iframeId).length > 0) {
|
||||||
|
$("#" + iframeId).remove();
|
||||||
|
}
|
||||||
|
let $iframe = $(`<iframe id="${iframeId}" name="${iframeId}"></iframe>`);
|
||||||
|
$('body').append($iframe)
|
||||||
|
let $form = $(`<form id="${formId}" action="${url}" method="${method}" target="${iframeId}">`);
|
||||||
|
$('body').append($form)
|
||||||
|
|
||||||
|
$form.append($('<input type="hidden" name="_downloadid" />').val(_downloadid))
|
||||||
|
for (let pro in paramObj) {
|
||||||
|
$form.append($(`<input type="hidden" name="${pro}" />`).val(paramObj[pro]));
|
||||||
|
}
|
||||||
|
$form.submit();
|
||||||
|
let iframe = document.getElementById(iframeId);
|
||||||
|
iframe.onload = iframe.onreadystatechange = function () {
|
||||||
|
if (!iframe.readyState || iframe.readyState == "complete") {
|
||||||
|
var iframeText = document.getElementById(iframeId).contentWindow.document;
|
||||||
|
iframeText = $(iframeText).text();
|
||||||
|
if (iframeText) {
|
||||||
|
var obj = JSON.parse(iframeText);
|
||||||
|
if (obj && obj['state'] == 'OK') {
|
||||||
|
layer.close(index);
|
||||||
|
} else {
|
||||||
|
zlContext.errorMsg(obj.msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
},
|
||||||
/**
|
/**
|
||||||
* countTime :倒计的时间,单位秒
|
* countTime :倒计的时间,单位秒
|
||||||
* elemId :显示倒计时的元素id
|
* elemId :显示倒计时的元素id
|
||||||
|
@ -932,4 +974,4 @@ layui.define(['layer', 'form', 'zlmessenger', 'messenger', 'zlConfig', 'util'],
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
exports('zlContext', zlContext);
|
exports('zlContext', zlContext);
|
||||||
});
|
});
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -3913,6 +3913,14 @@ appendChildCmp(childCmp: ComponentBase): void
|
||||||
*/
|
*/
|
||||||
appendChildHtmlElemt(childCmp: ComponentBase): void
|
appendChildHtmlElemt(childCmp: ComponentBase): void
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 给子组件广播发送消息
|
||||||
|
* @param msg 消息
|
||||||
|
* @param param 跟随消息传递的参数
|
||||||
|
|
||||||
|
*/
|
||||||
|
borcast(msg: string,param: any): void
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 释放资源析构函数.组件移除之前会调用
|
* 释放资源析构函数.组件移除之前会调用
|
||||||
一般不要主动调用. 该函数并没有删除和释放组件.只是调用了组件的资源释放函数
|
一般不要主动调用. 该函数并没有删除和释放组件.只是调用了组件的资源释放函数
|
||||||
|
@ -4130,6 +4138,16 @@ onLeftDown(clickHandle: onClickHandle): void
|
||||||
*/
|
*/
|
||||||
onLeftUp(clickHandle: onClickHandle): void
|
onLeftUp(clickHandle: onClickHandle): void
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件注册消息处理
|
||||||
|
* @param msg 处理的消息
|
||||||
|
* @param callback 处理函数
|
||||||
|
* @param override 是否覆盖原来注册的处理函数
|
||||||
|
* @param isGlobal 是否全局监听(跨域iframe监听) 默认值 = false
|
||||||
|
|
||||||
|
*/
|
||||||
|
onMessage(msg: any,callback: OnMessageHandle,override: boolean,isGlobal: boolean): void
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 注册组件的鼠标移动
|
* 注册组件的鼠标移动
|
||||||
* @param mouseHandle 事件回调函数
|
* @param mouseHandle 事件回调函数
|
||||||
|
@ -4818,6 +4836,12 @@ parentCmp: ComponentBase
|
||||||
*/
|
*/
|
||||||
xtype: string
|
xtype: string
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* 消息处理类型
|
||||||
|
*@param param 传递的参数
|
||||||
|
|
||||||
|
*/
|
||||||
|
declare type OnMessageHandle = (param: object) => void
|
||||||
/**
|
/**
|
||||||
*点击回调
|
*点击回调
|
||||||
*@param e 事件对象
|
*@param e 事件对象
|
||||||
|
@ -9462,19 +9486,17 @@ quickQuery: field1: {
|
||||||
type:'like'
|
type:'like'
|
||||||
val:value1
|
val:value1
|
||||||
},
|
},
|
||||||
advQuery:{
|
advQuery:[
|
||||||
field1: {
|
{
|
||||||
|
name: field1
|
||||||
type:'equeal'
|
type:'equeal'
|
||||||
val:value1
|
val:value1
|
||||||
},
|
},
|
||||||
field2: {
|
{
|
||||||
type:'equeal'
|
name: field2
|
||||||
|
type:'in'
|
||||||
val:value2
|
val:value2
|
||||||
},
|
},
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
```
|
|
||||||
* @param paramObj 可选 参数对象
|
* @param paramObj 可选 参数对象
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
@ -17454,6 +17476,7 @@ static doError(xhr: any,textStatus: any): void
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 下载文件
|
* 下载文件
|
||||||
|
该函数是使用了Iframe来简单下载文件 与 downloadFile 函数有区别. downloadFile可以获取到下载进度等参数
|
||||||
* @param url 下载地址
|
* @param url 下载地址
|
||||||
* @param completeCallback 完成回调函数
|
* @param completeCallback 完成回调函数
|
||||||
* @param paramobj 参数对象
|
* @param paramobj 参数对象
|
||||||
|
@ -17463,7 +17486,8 @@ static download(url: string,completeCallback: DownloadHandle,paramobj: object):
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 下载文件
|
* 下载文件
|
||||||
注意:这个函数中文文件名存在乱码现象
|
注意:这个函数中文文件名可能存在乱码现象
|
||||||
|
该函数是使用了FileDownloader 来下载,如果需要下载进度可以使用这个函数
|
||||||
* @param url 下载的文件地址
|
* @param url 下载的文件地址
|
||||||
* @param paramObj 参数对象
|
* @param paramObj 参数对象
|
||||||
* @param onStarCallBack 开始下载回调函数
|
* @param onStarCallBack 开始下载回调函数
|
||||||
|
@ -20120,6 +20144,19 @@ class SqlDataSetBase extends DataSourceBase {
|
||||||
*/
|
*/
|
||||||
async: boolean
|
async: boolean
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 加载对应的Field存在的数据行,注意值为空时候条件忽略
|
||||||
|
相当于: "select * from table where field in(values)" 的效果
|
||||||
|
例子:
|
||||||
|
```javascript
|
||||||
|
page.components.dsRes.loadByFieldValues('field',['123','456','789'])
|
||||||
|
```
|
||||||
|
* @param field 字段编号
|
||||||
|
* @param values 字段的值数组
|
||||||
|
|
||||||
|
*/
|
||||||
|
loadByFieldValues(field: string,values: any[]): void
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 设置数据是否异步请求
|
* 设置数据是否异步请求
|
||||||
* @param val true 异步请求,false同步请求
|
* @param val true 异步请求,false同步请求
|
||||||
|
@ -23523,6 +23560,12 @@ item = "item",
|
||||||
none = "none"
|
none = "none"
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
*图表组件-饼状图
|
||||||
|
*/
|
||||||
|
class BsEcPieChart extends BsEcCommonChartBase {
|
||||||
|
|
||||||
|
}
|
||||||
|
/**
|
||||||
*对齐方式
|
*对齐方式
|
||||||
*/
|
*/
|
||||||
enum EchartAlignment {
|
enum EchartAlignment {
|
||||||
|
|
|
@ -1507,11 +1507,11 @@ layui.config({
|
||||||
, data: data
|
, data: data
|
||||||
, dataType: 'json'
|
, dataType: 'json'
|
||||||
, success: function (res) {
|
, success: function (res) {
|
||||||
if (!res[response.dataName]) {//返回是未定义或null时转成[]
|
if (res[response.statusName]=='ERROR') {//返回是未定义或null时转成[]
|
||||||
res[response.dataName] = []
|
res[response.dataName] = []
|
||||||
res[response.statusName] = 0;
|
//res[response.statusName] = 0;
|
||||||
res[response.countName] = 0;
|
res[response.countName] = 0;
|
||||||
res[response.msgName] = '返回的数据状态异常';
|
//res[response.msgName] = '返回的数据状态异常';
|
||||||
};
|
};
|
||||||
that.resetDataresetRoot = true;
|
that.resetDataresetRoot = true;
|
||||||
//如果有数据解析的回调,则获得其返回的数据
|
//如果有数据解析的回调,则获得其返回的数据
|
||||||
|
|
|
@ -96,6 +96,7 @@ layui.define('layer', function (exports) {
|
||||||
|
|
||||||
if (next.hasClass(ELEM_FILE) || next.hasClass(ELEM_FORM)) {
|
if (next.hasClass(ELEM_FILE) || next.hasClass(ELEM_FORM)) {
|
||||||
next.remove();
|
next.remove();
|
||||||
|
options.elem.data('haveEvents', false);
|
||||||
}
|
}
|
||||||
|
|
||||||
//包裹ie8/9容器
|
//包裹ie8/9容器
|
||||||
|
@ -493,11 +494,11 @@ layui.define('layer', function (exports) {
|
||||||
//防止事件重复绑定
|
//防止事件重复绑定
|
||||||
if (options.elem.data('haveEvents')) return;
|
if (options.elem.data('haveEvents')) return;
|
||||||
|
|
||||||
that.elemFile.on('change', function () {
|
that.elemFile.off('change').on('change', function () {
|
||||||
$(this).trigger('upload.change');
|
$(this).trigger('upload.change');
|
||||||
});
|
});
|
||||||
|
|
||||||
options.elem.on('click', function () {
|
options.elem.off('click').on('click', function () {
|
||||||
if (that.isFile()) return;
|
if (that.isFile()) return;
|
||||||
$(this).trigger('upload.start');
|
$(this).trigger('upload.start');
|
||||||
});
|
});
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
* @Last Modified time: 2019-09-23 14:45:22
|
* @Last Modified time: 2019-09-23 14:45:22
|
||||||
*/
|
*/
|
||||||
layui.config({
|
layui.config({
|
||||||
}).use(['element', 'zlConfig', 'zlContext', 'zlSelectEx', 'zltreemenu', 'zlSelectMultiple', 'table', 'layer', 'form', 'zlPinYin', 'laydate', 'theme'], function (exports) {
|
}).use(['element', 'zlConfig', 'zlContext', 'zlSelectEx', 'zltreemenu', 'zlSelectMultiple', 'table', 'layer', 'form', 'zlPinYin', 'laydate', 'theme', 'upload'], function (exports) {
|
||||||
var $ = layui.$
|
var $ = layui.$
|
||||||
, zlContext = layui.zlContext
|
, zlContext = layui.zlContext
|
||||||
, zltreemenu = layui.zltreemenu
|
, zltreemenu = layui.zltreemenu
|
||||||
|
@ -23,7 +23,8 @@ layui.config({
|
||||||
, fullheight = 'full-305'
|
, fullheight = 'full-305'
|
||||||
, exportData = {}
|
, exportData = {}
|
||||||
, loadingLayer
|
, loadingLayer
|
||||||
, intervalId = undefined;
|
, intervalId = undefined
|
||||||
|
, upload = layui.upload;
|
||||||
|
|
||||||
// layui.use('laydate', function(exports){
|
// layui.use('laydate', function(exports){
|
||||||
// element.render();
|
// element.render();
|
||||||
|
@ -848,6 +849,79 @@ layui.config({
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
// 导出选择的模型
|
||||||
|
exportModels: function () {
|
||||||
|
let html = `
|
||||||
|
<div id="exportModels" class="layui-form-item " style="margin-bottom: 0;width:100%">
|
||||||
|
<ul id="tablemodetree" class="ztree" url="${layui.cache['contentPath']}/manager/coretables/query"></ul>
|
||||||
|
</div>
|
||||||
|
`,
|
||||||
|
exptreeObj = null,
|
||||||
|
url = layui.cache['contentPath'] + '/manager/coretables/exportmodel';
|
||||||
|
let exportFunc = function (con) {
|
||||||
|
var nodes = exptreeObj.getCheckedNodes(true);
|
||||||
|
nodes = $.grep(nodes, function (obj) {
|
||||||
|
return obj.check_Child_State == -1;
|
||||||
|
});
|
||||||
|
if (nodes.length <= 0) {
|
||||||
|
zlContext.warnMsg('请选择需要导出的表模型!');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let param = [];
|
||||||
|
for (let i = 0; i < nodes.length; i++) {
|
||||||
|
const node = nodes[i];
|
||||||
|
param.push({
|
||||||
|
RWID: node["RWID"],
|
||||||
|
dataFilterCnd: con
|
||||||
|
});
|
||||||
|
}
|
||||||
|
zlContext.downloadEx(url, { tbids: JSON.stringify(param) }, 'post');
|
||||||
|
};
|
||||||
|
layer.open({
|
||||||
|
type: 1
|
||||||
|
, id: 'exportModels'
|
||||||
|
, title: "选择需要导出的表模型"
|
||||||
|
, area: ["600px", "80%"]
|
||||||
|
, content: html
|
||||||
|
, btn: ['含数据导出', '不含数据导出', '取消']
|
||||||
|
, success: function () {
|
||||||
|
exptreeObj = zltreemenu.render('tablemodetree', {
|
||||||
|
dataurl: $('#tablemodetree').attr('url'),
|
||||||
|
type: 'get',
|
||||||
|
name: 'MX_MINGC',
|
||||||
|
checkEnable: true
|
||||||
|
}, {}, null, function (node) {
|
||||||
|
let searchVal = zltreemenu.getSerachValue('tablemodetree');
|
||||||
|
return node['MX_MINGC'].indexOf(searchVal) != -1 || node['MX_BIANH'].indexOf(searchVal) != -1;
|
||||||
|
})
|
||||||
|
}
|
||||||
|
, yes: function (index, layero) {
|
||||||
|
exportFunc("1=1");
|
||||||
|
},
|
||||||
|
btn2: function (index, layero) {
|
||||||
|
exportFunc("1!=1");
|
||||||
|
},
|
||||||
|
cancel: function (index, layero) {
|
||||||
|
layer.close(index);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
},
|
||||||
|
getSelectNodeRwid: function () {
|
||||||
|
var nodes = treeObj.getSelectedNodes();
|
||||||
|
if (nodes.length <= 0) {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
return nodes[0].RWID;
|
||||||
|
},
|
||||||
|
// 导入模型
|
||||||
|
importModels: function () {
|
||||||
|
var nodes = treeObj.getSelectedNodes();
|
||||||
|
if (nodes.length <= 0) {
|
||||||
|
zlContext.warnMsg('请选择需要导出的表模型!');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
},
|
||||||
exportField: function () {
|
exportField: function () {
|
||||||
//导出表结构
|
//导出表结构
|
||||||
var nodes = treeObj.getSelectedNodes();
|
var nodes = treeObj.getSelectedNodes();
|
||||||
|
@ -1076,6 +1150,13 @@ layui.config({
|
||||||
$('#btnSeacherField').trigger('click');
|
$('#btnSeacherField').trigger('click');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
$('#btnExport').on('click', function (e) {
|
||||||
|
fieldGridAction.exportModels();
|
||||||
|
});
|
||||||
|
$('#btnImport').on('click', function (e) {
|
||||||
|
fieldGridAction.importModels();
|
||||||
|
});
|
||||||
|
|
||||||
table.on('toolbar(tbField)', function (obj) {
|
table.on('toolbar(tbField)', function (obj) {
|
||||||
var checkStatus = table.checkStatus(obj.config.id);
|
var checkStatus = table.checkStatus(obj.config.id);
|
||||||
switch (obj.event) {
|
switch (obj.event) {
|
||||||
|
@ -1404,6 +1485,35 @@ layui.config({
|
||||||
}
|
}
|
||||||
return indexGridAction.sumbit(frm.field);
|
return indexGridAction.sumbit(frm.field);
|
||||||
});
|
});
|
||||||
|
upload.render({
|
||||||
|
elem: '#btnImport'
|
||||||
|
, accept: 'file'
|
||||||
|
, acceptMime: 'application/zip'
|
||||||
|
, url: layui.cache['contentPath'] + '/manager/coretables/importmodel'
|
||||||
|
, data: {
|
||||||
|
parent_tbid: fieldGridAction.getSelectNodeRwid()
|
||||||
|
}
|
||||||
|
, exts: 'zip'
|
||||||
|
, before: function () {
|
||||||
|
winIndex = layer.msg('模型上传中,请稍候...', { icon: 16, time: false, shade: 0.1 });
|
||||||
|
}
|
||||||
|
, done: function (res, index, upload) {
|
||||||
|
if (res.state == 'OK') {
|
||||||
|
zlContext.successMsg('模型上传完毕');
|
||||||
|
} else {
|
||||||
|
zlContext.errorMsg(res.msg);
|
||||||
|
}
|
||||||
|
var nodes = treeObj.getSelectedNodes();
|
||||||
|
if (nodes.length > 0) {
|
||||||
|
newAddTableId = nodes[0].RWID;
|
||||||
|
}
|
||||||
|
treeAction.loadTree();
|
||||||
|
layer.close(winIndex);
|
||||||
|
|
||||||
|
}, error: function (index, upload) {
|
||||||
|
zlContext.successMsg('模型上传失败:' + upload);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
//监听刷新的事件
|
//监听刷新的事件
|
||||||
layui.event('WM_USERDEF', zlConfig.global.WM_USERDEF.REFRESHDATA_DATA, null, function (rwid) {
|
layui.event('WM_USERDEF', zlConfig.global.WM_USERDEF.REFRESHDATA_DATA, null, function (rwid) {
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
* @Last Modified time: 2018-05-17 10:23:36
|
* @Last Modified time: 2018-05-17 10:23:36
|
||||||
*/
|
*/
|
||||||
layui.config({
|
layui.config({
|
||||||
}).use(['element', 'zlConfig', 'zlContext', 'zltreemenu', 'zlSelectMultiple', 'zlSelectEx', 'zlpoptree', 'zlSelecttree', 'table', 'layer', 'form', 'zlPinYin', 'upload','theme'], function (exports) {
|
}).use(['element', 'zlConfig', 'zlContext', 'zltreemenu', 'zlSelectMultiple', 'zlSelectEx', 'zlpoptree', 'zlSelecttree', 'table', 'layer', 'form', 'zlPinYin', 'upload', 'theme'], function (exports) {
|
||||||
var $ = layui.$
|
var $ = layui.$
|
||||||
, zlContext = layui.zlContext
|
, zlContext = layui.zlContext
|
||||||
, zltreemenu = layui.zltreemenu
|
, zltreemenu = layui.zltreemenu
|
||||||
|
@ -485,7 +485,7 @@ layui.config({
|
||||||
}
|
}
|
||||||
, accept: 'file'
|
, accept: 'file'
|
||||||
, exts: 'xml'
|
, exts: 'xml'
|
||||||
, acceptMime: 'file/xml'
|
, acceptMime: 'text/xml'
|
||||||
, before: function () {
|
, before: function () {
|
||||||
winIndex = layer.msg('文件上传中,请稍候...', { icon: 16, time: false, shade: 0.1 });
|
winIndex = layer.msg('文件上传中,请稍候...', { icon: 16, time: false, shade: 0.1 });
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,24 +33,6 @@ layui.extend({
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
$('.admin-side-cacheclear').on('click', function () {
|
|
||||||
$.ajax({
|
|
||||||
url: layui.cache['contentPath'] + '/core/cache/clear',
|
|
||||||
type: 'get',
|
|
||||||
async: false,
|
|
||||||
dataType: 'json',
|
|
||||||
contentType: "application/json",
|
|
||||||
success: function (result) {
|
|
||||||
if (result.state == 'OK')
|
|
||||||
alert('清理服务器缓存完毕!');
|
|
||||||
else
|
|
||||||
alert('清理服务器缓存出错:' + result.msg)
|
|
||||||
},
|
|
||||||
error: function (xhr, textStatus, errorThrown) {
|
|
||||||
alert('请求异常! ' + xhr.responseText);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
//获取当前用户信息并填充
|
//获取当前用户信息并填充
|
||||||
|
|
|
@ -228,6 +228,24 @@ layui.define(['view', 'theme', 'common'], function (exports) {
|
||||||
isSpread = iconElem.hasClass(ICON_SPREAD);
|
isSpread = iconElem.hasClass(ICON_SPREAD);
|
||||||
admin.sideFlexible(isSpread ? 'spread' : null);
|
admin.sideFlexible(isSpread ? 'spread' : null);
|
||||||
},
|
},
|
||||||
|
clearCache:function(){
|
||||||
|
$.ajax({
|
||||||
|
url: layui.cache['contentPath'] + '/core/cache/clear',
|
||||||
|
type: 'get',
|
||||||
|
async: false,
|
||||||
|
dataType: 'json',
|
||||||
|
contentType: "application/json",
|
||||||
|
success: function (result) {
|
||||||
|
if (result.state == 'OK')
|
||||||
|
alert('清理服务器缓存完毕!');
|
||||||
|
else
|
||||||
|
alert('清理服务器缓存出错:' + result.msg)
|
||||||
|
},
|
||||||
|
error: function (xhr, textStatus, errorThrown) {
|
||||||
|
alert('请求异常! ' + xhr.responseText);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
/**
|
/**
|
||||||
* 刷新
|
* 刷新
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -23536,7 +23536,7 @@ Ext.form.StrategysEditor = Ext.extend(Ext.form.ComboBox, {
|
||||||
*/
|
*/
|
||||||
initEditorPanel: function (type) {
|
initEditorPanel: function (type) {
|
||||||
var record = this.getRecord();
|
var record = this.getRecord();
|
||||||
if (record.data['task_listener_stype'] == 'selPer' || record.data['task_listener_stype'] == 'selHuiq') {
|
if (record.data['task_listener_stype'] == 'selPer' || record.data['task_listener_stype'] == 'selHuiq' || record.data['task_listener_stype'] == 'selHuiqSeral') {
|
||||||
return new Ext.SelectPersonStrategysEditor(this.config, this.getGrid(), record.data['task_listener_stype'], this.propertywindow);
|
return new Ext.SelectPersonStrategysEditor(this.config, this.getGrid(), record.data['task_listener_stype'], this.propertywindow);
|
||||||
} else if (record.data['task_listener_stype'] == 'selTemp') {
|
} else if (record.data['task_listener_stype'] == 'selTemp') {
|
||||||
return new Ext.SelectTempleteStrategysEditor(this.config, this.getGrid(), record.data['task_listener_stype'], this.propertywindow, record);
|
return new Ext.SelectTempleteStrategysEditor(this.config, this.getGrid(), record.data['task_listener_stype'], this.propertywindow, record);
|
||||||
|
@ -23559,7 +23559,7 @@ Ext.form.StrategysEditor = Ext.extend(Ext.form.ComboBox, {
|
||||||
var dialog = new Ext.Window({
|
var dialog = new Ext.Window({
|
||||||
layout: 'anchor',
|
layout: 'anchor',
|
||||||
autoCreate: true,
|
autoCreate: true,
|
||||||
title: '策略设置选择',
|
title: '策略设置',
|
||||||
height: popItem.initHeight,
|
height: popItem.initHeight,
|
||||||
width: popItem.initWidth,
|
width: popItem.initWidth,
|
||||||
modal: true,
|
modal: true,
|
||||||
|
@ -24087,13 +24087,17 @@ Ext.SelectPersonStrategysEditor = Ext.extend(Ext.StrategysEditorPanelBase, {
|
||||||
selecthuiq.push(obj);
|
selecthuiq.push(obj);
|
||||||
});
|
});
|
||||||
record.set('task_listener_class', 'com.kdayun.z1.core.workflow.listerner.usertask.PersonRoleDeptListenerImpl');
|
record.set('task_listener_class', 'com.kdayun.z1.core.workflow.listerner.usertask.PersonRoleDeptListenerImpl');
|
||||||
if (datatype == 'selHuiq') {
|
//会签
|
||||||
var datastring = "users" + new Date().getTime();
|
if (datatype == 'selHuiq' || datatype == 'selHuiqSeral') {
|
||||||
|
var datastring = "countersignUser";
|
||||||
record.set('task_listener_class', 'com.kdayun.z1.core.workflow.listerner.usertask.CountersignListener');
|
record.set('task_listener_class', 'com.kdayun.z1.core.workflow.listerner.usertask.CountersignListener');
|
||||||
this.propertywindow.editDirectly('oryx-multiinstance_sequential', 'No');
|
if (record.data.task_listener_stype == 'selHuiqSeral') {
|
||||||
this.propertywindow.editDirectly('oryx-multiinstance_cardinality', selecthuiq.length);
|
this.propertywindow.editDirectly('oryx-multiinstance_sequential', 'Yes');
|
||||||
|
} else {
|
||||||
|
this.propertywindow.editDirectly('oryx-multiinstance_sequential', 'No');
|
||||||
|
}
|
||||||
|
this.propertywindow.editDirectly('oryx-multiinstance_cardinality', '');
|
||||||
this.propertywindow.editDirectly('oryx-multiinstance_variable', datastring);
|
this.propertywindow.editDirectly('oryx-multiinstance_variable', datastring);
|
||||||
this.propertywindow.editDirectly('oryx-multiinstance_collection', '${CountersignListener.getUsers(execution)}');
|
|
||||||
tmpfield = {
|
tmpfield = {
|
||||||
totalCount: 1
|
totalCount: 1
|
||||||
, items: [{ 'assignment_type': 'assignee', 'resourceassignmentexpr': '${' + datastring + '}' }]
|
, items: [{ 'assignment_type': 'assignee', 'resourceassignmentexpr': '${' + datastring + '}' }]
|
||||||
|
@ -24101,6 +24105,11 @@ Ext.SelectPersonStrategysEditor = Ext.extend(Ext.StrategysEditorPanelBase, {
|
||||||
this.propertywindow.editDirectly('oryx-usertaskassignment', Ext.encode(tmpfield));
|
this.propertywindow.editDirectly('oryx-usertaskassignment', Ext.encode(tmpfield));
|
||||||
} else {
|
} else {
|
||||||
this.propertywindow.editDirectly('oryx-multiinstance_condition', '');
|
this.propertywindow.editDirectly('oryx-multiinstance_condition', '');
|
||||||
|
this.propertywindow.editDirectly('oryx-multiinstance_sequential', '');
|
||||||
|
this.propertywindow.editDirectly('oryx-multiinstance_cardinality', '');
|
||||||
|
this.propertywindow.editDirectly('oryx-multiinstance_variable', '');
|
||||||
|
this.propertywindow.editDirectly('oryx-multiinstance_collection', '');
|
||||||
|
this.propertywindow.editDirectly('oryx-usertaskassignment', '');
|
||||||
}
|
}
|
||||||
tmpfield = {
|
tmpfield = {
|
||||||
totalCount: 1,
|
totalCount: 1,
|
||||||
|
@ -24520,7 +24529,7 @@ Ext.UserDefinedStrategysEditor = Ext.extend(Ext.StrategysEditorPanelBase, {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
this.editformPanel.getForm().findField('name').setValue(tmp.name);
|
this.editformPanel.getForm().findField('name').setValue(tmp.name);
|
||||||
this.editformPanel.getForm().findField('value').setValue(Ext.encode(tmp));
|
this.editformPanel.getForm().findField('value').setValue(JSON.stringify(JSON.parse(Ext.encode(tmp)), null, 2));
|
||||||
},
|
},
|
||||||
okCallBack: function () {
|
okCallBack: function () {
|
||||||
var record = this.getRecord();
|
var record = this.getRecord();
|
||||||
|
@ -24736,19 +24745,24 @@ Ext.UserTaskCommonEditor = Ext.extend(Ext.AbstractCommonEditorPanel, {
|
||||||
var completecontion = this.propertywindow.shapeSelection.commonPropertiesValues['oryx-multiinstance_condition'];
|
var completecontion = this.propertywindow.shapeSelection.commonPropertiesValues['oryx-multiinstance_condition'];
|
||||||
var huiq_stype = 'selAll', huiqset = '';
|
var huiq_stype = 'selAll', huiqset = '';
|
||||||
if (completecontion) {
|
if (completecontion) {
|
||||||
huiqset = completecontion.substring(completecontion.lastIndexOf('=') + 1, completecontion.lastIndexOf('}'));
|
huiqset = completecontion.substring(completecontion.indexOf(',') + 1, completecontion.indexOf(')'));
|
||||||
if (completecontion.indexOf('/') > -1) {
|
huiqset = huiqset.replaceAll('"', '')
|
||||||
|
huiqset == "null" && (huiqset = "")
|
||||||
|
if (completecontion.indexOf('${cxt.getCounterSignService(2') > -1) {
|
||||||
huiq_stype = 'selRate';
|
huiq_stype = 'selRate';
|
||||||
} else if (completecontion.indexOf('${nrOfCompletedInstances==') > -1) {
|
} else if (completecontion.indexOf('${cxt.getCounterSignService(1') > -1) {
|
||||||
huiq_stype = 'selNum'
|
huiq_stype = 'selNum'
|
||||||
} else {
|
} else if (completecontion.indexOf('${cxt.getCounterSignService(0') > -1) {
|
||||||
huiq_stype = 'selUserdef';
|
huiq_stype = 'selAll'
|
||||||
huiqset = completecontion;
|
} else if (completecontion.indexOf('${cxt.getCounterSignService(3') > -1) {
|
||||||
|
huiq_stype = 'selNO'
|
||||||
|
} else if (completecontion.indexOf('${cxt.getCounterSignService(4') > -1) {
|
||||||
|
huiq_stype = 'selUserdef'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
if (items) {
|
if (items) {
|
||||||
items.each(function (item) {
|
items.each && items.each(function (item) {
|
||||||
if (item.task_listener_stype == 'selHuiq') {
|
if (item.task_listener_stype == 'selHuiq' || item.task_listener_stype == 'selHuiqSeral') {
|
||||||
item.task_listener_huiq_stype = huiq_stype;
|
item.task_listener_huiq_stype = huiq_stype;
|
||||||
item.task_listener_huiqset = huiqset;
|
item.task_listener_huiqset = huiqset;
|
||||||
}
|
}
|
||||||
|
@ -24780,14 +24794,14 @@ Ext.UserTaskCommonEditor = Ext.extend(Ext.AbstractCommonEditorPanel, {
|
||||||
{ name: 'value' }
|
{ name: 'value' }
|
||||||
, { name: 'title' }
|
, { name: 'title' }
|
||||||
],
|
],
|
||||||
data: [['selPer', '特定人'], ['selTemp', '策略模板'], ['userdef', '自定义'], ['selHuiq', '会签']]
|
data: [['selPer', '特定人'], ['selTemp', '策略模板'], ['userdef', '自定义'], ['selHuiq', '并行会签'], ['selHuiqSeral', '串行会签']]
|
||||||
});
|
});
|
||||||
var guizStore = new Ext.data.SimpleStore({
|
var guizStore = new Ext.data.SimpleStore({
|
||||||
fields: [
|
fields: [
|
||||||
{ name: 'value' }
|
{ name: 'value' }
|
||||||
, { name: 'title' }
|
, { name: 'title' }
|
||||||
],
|
],
|
||||||
data: [['selAll', '会签全部通过'], ['selNum', '会签通过人数'], ['selRate', '会签通过占比(小数)'], ['selUserdef', '用户自定义']]
|
data: [['selAll', '全部同意'], ['selNum', '同意人数'], ['selRate', '同意占比(小数)'], ['selNo', '一票否决'], ['selUserdef', '自定义']]
|
||||||
});
|
});
|
||||||
var sStore = new Ext.data.SimpleStore({
|
var sStore = new Ext.data.SimpleStore({
|
||||||
fields: [
|
fields: [
|
||||||
|
@ -24845,7 +24859,7 @@ Ext.UserTaskCommonEditor = Ext.extend(Ext.AbstractCommonEditorPanel, {
|
||||||
{
|
{
|
||||||
header: '策略类型',
|
header: '策略类型',
|
||||||
dataIndex: 'task_listener_stype',
|
dataIndex: 'task_listener_stype',
|
||||||
width: 100,
|
width: 60,
|
||||||
sortable: true,
|
sortable: true,
|
||||||
editor: new Ext.form.ComboBox({
|
editor: new Ext.form.ComboBox({
|
||||||
id: 'cmbtask_listener_stype'
|
id: 'cmbtask_listener_stype'
|
||||||
|
@ -24867,16 +24881,38 @@ Ext.UserTaskCommonEditor = Ext.extend(Ext.AbstractCommonEditorPanel, {
|
||||||
record.data['task_listener_fields'] = '';
|
record.data['task_listener_fields'] = '';
|
||||||
record.data['task_listener_displaytitle'] = '';
|
record.data['task_listener_displaytitle'] = '';
|
||||||
record.data['task_listener_huiqset'] = '';
|
record.data['task_listener_huiqset'] = '';
|
||||||
//record.commit();
|
record.data['task_listener_stype'] = cmb.value;
|
||||||
if (cmb.value == 'selHuiq') {
|
let setColumnTitle = (field, title) => {
|
||||||
|
for (let i = 0; i < this.StrategyGrid.colModel.config.length; i++) {
|
||||||
|
const col = this.StrategyGrid.colModel.config[i];
|
||||||
|
if (col.dataIndex == field) {
|
||||||
|
this.StrategyGrid.colModel.setColumnHeader(i, title);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (cmb.value == 'selHuiq' || cmb.value == 'selHuiqSeral') {
|
||||||
record.data['task_listener_huiq_stype'] = 'selAll';
|
record.data['task_listener_huiq_stype'] = 'selAll';
|
||||||
|
setColumnTitle('task_listener_displaytitle', '会签参与人')
|
||||||
|
if (record.data.task_listener_stype == 'selHuiqSeral') {
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_sequential', 'Yes');
|
||||||
|
} else {
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_sequential', 'No');
|
||||||
|
}
|
||||||
// this.StrategyGrid.getColumnModel().setHidden(3,false);
|
// this.StrategyGrid.getColumnModel().setHidden(3,false);
|
||||||
// this.StrategyGrid.getColumnModel().setHidden(2,false);
|
// this.StrategyGrid.getColumnModel().setHidden(2,false);
|
||||||
} else {
|
} else {
|
||||||
|
setColumnTitle('task_listener_displaytitle', '处理策略')
|
||||||
record.data['task_listener_huiq_stype'] = '';
|
record.data['task_listener_huiq_stype'] = '';
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_condition', '');
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_cardinality', '');
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_sequential', '');
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_variable', '');
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_collection', '');
|
||||||
// this.StrategyGrid.getColumnModel().setHidden(3,true);
|
// this.StrategyGrid.getColumnModel().setHidden(3,true);
|
||||||
// this.StrategyGrid.getColumnModel().setHidden(2,true);
|
// this.StrategyGrid.getColumnModel().setHidden(2,true);
|
||||||
}
|
}
|
||||||
|
record.commit();
|
||||||
}
|
}
|
||||||
|
|
||||||
}.bind(this)
|
}.bind(this)
|
||||||
|
@ -24892,6 +24928,7 @@ Ext.UserTaskCommonEditor = Ext.extend(Ext.AbstractCommonEditorPanel, {
|
||||||
}
|
}
|
||||||
return displayText;
|
return displayText;
|
||||||
}
|
}
|
||||||
|
|
||||||
}, {
|
}, {
|
||||||
header: '处理策略'
|
header: '处理策略'
|
||||||
, dataIndex: 'task_listener_displaytitle'
|
, dataIndex: 'task_listener_displaytitle'
|
||||||
|
@ -24949,7 +24986,7 @@ Ext.UserTaskCommonEditor = Ext.extend(Ext.AbstractCommonEditorPanel, {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
header: '会签规则设置'
|
header: '会签完成参数'
|
||||||
, dataIndex: 'task_listener_huiqset'
|
, dataIndex: 'task_listener_huiqset'
|
||||||
, width: 120
|
, width: 120
|
||||||
, editor: new Ext.form.TextField({ allowBlank: true, disabled: false })
|
, editor: new Ext.form.TextField({ allowBlank: true, disabled: false })
|
||||||
|
@ -24964,7 +25001,7 @@ Ext.UserTaskCommonEditor = Ext.extend(Ext.AbstractCommonEditorPanel, {
|
||||||
, listeners: {
|
, listeners: {
|
||||||
beforeedit: function (e) {
|
beforeedit: function (e) {
|
||||||
if (e.field == 'task_listener_huiqset' || e.field == 'task_listener_huiq_stype') {
|
if (e.field == 'task_listener_huiqset' || e.field == 'task_listener_huiq_stype') {
|
||||||
if (e.record.data.task_listener_stype == 'selHuiq') {
|
if (e.record.data.task_listener_stype == 'selHuiq' || e.record.data.task_listener_stype == 'selHuiqSeral') {
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
return false;
|
return false;
|
||||||
|
@ -24972,35 +25009,99 @@ Ext.UserTaskCommonEditor = Ext.extend(Ext.AbstractCommonEditorPanel, {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
afterEdit: function (e) {
|
afterEdit: function (e) {
|
||||||
if (e.record.data.task_listener_huiq_stype == 'selAll' || !e.record.data.task_listener_huiq_stype || e.field != 'task_listener_huiqset') {
|
let value = e.value,
|
||||||
that.propertywindow.editDirectly('oryx-multiinstance_condition', '');
|
clearFile = () => {
|
||||||
return;
|
e.field != 'task_listener_huiq_stype' && e.record.set(e.field, '');
|
||||||
};
|
}, setColumnTitle = (field, title) => {
|
||||||
var value = e.value;
|
for (let i = 0; i < e.grid.colModel.config.length; i++) {
|
||||||
if (e.record.data.task_listener_huiq_stype == 'selNum') {
|
const col = e.grid.colModel.config[i];
|
||||||
var re = /^[1-9]+[0-9]*]*$/;
|
if (col.dataIndex == field) {
|
||||||
if (!re.test(value)) {
|
e.grid.colModel.setColumnHeader(i, title);
|
||||||
Ext.Msg.alert('错误', '错误的整数,请重新输入!');
|
}
|
||||||
e.value = '';
|
}
|
||||||
e.record.set(e.field, '');
|
};
|
||||||
return;
|
if (e.record.data.task_listener_stype == 'selHuiq' || e.record.data.task_listener_stype == 'selHuiqSeral') {
|
||||||
|
|
||||||
|
if (e.record.data.task_listener_stype == 'selHuiqSeral') {
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_sequential', 'Yes');
|
||||||
|
} else {
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_sequential', 'No');
|
||||||
}
|
}
|
||||||
that.propertywindow.editDirectly('oryx-multiinstance_condition', '${nrOfCompletedInstances==' + value + '}');
|
|
||||||
} else if (e.record.data.task_listener_huiq_stype == 'selRate') {
|
e.record.set('task_listener_class', 'com.kdayun.z1.core.workflow.listerner.usertask.CountersignListener');
|
||||||
var re = /1|0\.[1-9]*$/;
|
e.record.set('task_listener_event_type', 'complete');
|
||||||
if (!re.test(value)) {
|
|
||||||
Ext.Msg.alert('错误', '错误的数据格式,请重新输入正确的百分比小数!如: 0.5 ');
|
that.propertywindow.editDirectly('oryx-multiinstance_collection', '${cxt.getCounterSignService().getUsers(execution)}');
|
||||||
e.record.set(e.field, '');
|
|
||||||
return;
|
let datastring = "countersignUser";
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_variable', datastring);
|
||||||
|
let tmpfield = {
|
||||||
|
totalCount: 1
|
||||||
|
, items: [{ 'assignment_type': 'assignee', 'resourceassignmentexpr': '${' + datastring + '}' }]
|
||||||
}
|
}
|
||||||
if (value > 1) {
|
|
||||||
Ext.Msg.alert('错误', '会签通过占比不能超过1,请重新输入!');
|
that.propertywindow.editDirectly('oryx-usertaskassignment', Ext.encode(tmpfield));
|
||||||
e.record.set(e.field, '');
|
let paramValue = e.record.data.task_listener_huiqset;
|
||||||
return;
|
if (e.record.data.task_listener_huiq_stype == 'selAll') {
|
||||||
|
setColumnTitle('task_listener_huiqset', '')
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_condition', '${cxt.getCounterSignService(0,null).isComplete(execution)}');
|
||||||
|
} else if (e.record.data.task_listener_huiq_stype == 'selNum') {
|
||||||
|
setColumnTitle('task_listener_huiqset', '同意人数(整数)')
|
||||||
|
if (paramValue == undefined || paramValue == '' || paramValue == null) {
|
||||||
|
Ext.Msg.alert('提示', '请输入重新输入同意人数!');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let re = /^[1-9]+[0-9]*]*$/;
|
||||||
|
if (!re.test(paramValue)) {
|
||||||
|
Ext.Msg.alert('提示', '错误的整数,请重新输入!');
|
||||||
|
e.value = '';
|
||||||
|
clearFile();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_condition', '${cxt.getCounterSignService(1,' + paramValue + ').isComplete(execution)}');
|
||||||
|
} else if (e.record.data.task_listener_huiq_stype == 'selRate') {
|
||||||
|
setColumnTitle('task_listener_huiqset', '同意人数百分比(小数)')
|
||||||
|
if (paramValue == undefined || paramValue == '' || paramValue == null) {
|
||||||
|
Ext.Msg.alert('提示', '请输入同意人数百分比(小数)!');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let re = /1|0\.[1-9]*$/;
|
||||||
|
if (!re.test(paramValue)) {
|
||||||
|
Ext.Msg.alert('提示', '错误的数据格式,请重新输入[0~1]之间的小数!如: 0.8 ');
|
||||||
|
clearFile();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (paramValue > 1) {
|
||||||
|
Ext.Msg.alert('提示', '会签通过占比不能超过1,请重新输入!');
|
||||||
|
clearFile();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_condition', '${cxt.getCounterSignService(2,' + paramValue + ').isComplete(execution)}');
|
||||||
|
} else if (e.record.data.task_listener_huiq_stype == 'selNo') {
|
||||||
|
setColumnTitle('task_listener_huiqset', '')
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_condition', '${cxt.getCounterSignService(3,null).isComplete(execution)}');
|
||||||
|
} else if (e.record.data.task_listener_huiq_stype == 'selUserdef') {
|
||||||
|
let classname = '', param = 'null'
|
||||||
|
if (paramValue == undefined || paramValue == '' || paramValue == null) {
|
||||||
|
Ext.Msg.alert('提示', '请输入自定义的参数. 格式如下: com.xxx.yyy.CounterSignVoteResult,param');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (paramValue) {
|
||||||
|
if (paramValue.split(',').length != 2) {
|
||||||
|
Ext.Msg.alert('提示', '自定义的参数格式有误. 格式如下: com.xxx.yyy.CounterSignVoteResult,param \n 其中com.xxx.yyy.CounterSignVoteResult 为自定义的类名;param为参数值');
|
||||||
|
clearFile();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
classname = paramValue.split(',')[0];
|
||||||
|
param = paramValue.split(',')[1];
|
||||||
|
}
|
||||||
|
that.propertywindow.editDirectly('oryx-multiinstance_condition', '${cxt.getCounterSignService(4,"' + classname + '",' + param + ').isComplete(execution)}');
|
||||||
}
|
}
|
||||||
that.propertywindow.editDirectly('oryx-multiinstance_condition', '${nrOfCompletedInstances/nrOfInstances>=' + value + '}');
|
that.propertywindow.editDirectly('oryx-multiinstance_cardinality', '');
|
||||||
} else if (e.record.data.task_listener_huiq_stype == 'selUserdef') {
|
e.record.commit();
|
||||||
that.propertywindow.editDirectly('oryx-multiinstance_condition', value);
|
} else {
|
||||||
|
setColumnTitle('task_listener_huiqset', '')
|
||||||
|
that.propertywindow.editDirectly('oryx-usertaskassignment', '');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -71,13 +71,14 @@ Object.extend(Object, {
|
||||||
if (object === null) return 'null';
|
if (object === null) return 'null';
|
||||||
if (object.toJSON) return object.toJSON();
|
if (object.toJSON) return object.toJSON();
|
||||||
if (object.ownerDocument === document) return;
|
if (object.ownerDocument === document) return;
|
||||||
var results = [];
|
// var results = [];
|
||||||
for (var property in object) {
|
|
||||||
var value = Object.toJSON(object[property]);
|
// for (var property in object) {
|
||||||
if (value !== undefined)
|
// var value = Object.toJSON(object[property]);
|
||||||
results.push(property.toJSON() + ': ' + value);
|
// if (value !== undefined)
|
||||||
}
|
// results.push(property.toJSON() + ': ' + value);
|
||||||
return '{' + results.join(', ') + '}';
|
// }
|
||||||
|
return JSON.stringify(object);
|
||||||
},
|
},
|
||||||
|
|
||||||
keys: function (object) {
|
keys: function (object) {
|
||||||
|
@ -368,7 +369,7 @@ Object.extend(String.prototype, {
|
||||||
var json = this.unfilterJSON();
|
var json = this.unfilterJSON();
|
||||||
try {
|
try {
|
||||||
if (!sanitize || (/^("(\\.|[^"\\\n\r])*?"|[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t])+?$/.test(json)))
|
if (!sanitize || (/^("(\\.|[^"\\\n\r])*?"|[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t])+?$/.test(json)))
|
||||||
return JSON.parse(json);
|
return eval('(' + json + ')');
|
||||||
} catch (e) { }
|
} catch (e) { }
|
||||||
throw new SyntaxError('Badly formed JSON string: ' + this.inspect());
|
throw new SyntaxError('Badly formed JSON string: ' + this.inspect());
|
||||||
},
|
},
|
||||||
|
|
|
@ -62,6 +62,17 @@
|
||||||
.w640{
|
.w640{
|
||||||
width: 640px
|
width: 640px
|
||||||
}
|
}
|
||||||
|
#btnExport ,#btnImport{
|
||||||
|
margin-right: 4px;
|
||||||
|
margin-top: 4px;
|
||||||
|
position:absolute;
|
||||||
|
}
|
||||||
|
#btnImport{
|
||||||
|
right:0px;
|
||||||
|
}
|
||||||
|
#btnExport{
|
||||||
|
right:30px;
|
||||||
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
|
@ -73,7 +84,9 @@
|
||||||
<div class="layui-card docking-left">
|
<div class="layui-card docking-left">
|
||||||
<div class="layui-card-header zltree-header">
|
<div class="layui-card-header zltree-header">
|
||||||
<div class="kd-coretable-menu-title" >
|
<div class="kd-coretable-menu-title" >
|
||||||
<img src="${request.contextPath}/static/image/mouse.png" alt="" >鼠标右键可编辑模型信息
|
<img src="${request.contextPath}/static/image/mouse.png" alt="" >右键编辑模型
|
||||||
|
<button id="btnExport" class="layui-btn layui-btn-xs" title="批量导出表模型" lay-event="exportModel" ><i class="fa fa-cloud-download"></i></button>
|
||||||
|
<button id="btnImport" class="layui-btn layui-btn-xs" title="批量导入表模型" lay-event="importModel"><i class="fa fa-cloud-upload"></i></button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="layui-card-body zltree-body">
|
<div class="layui-card-body zltree-body">
|
||||||
|
|
|
@ -97,7 +97,7 @@
|
||||||
<i class="fa fa-home" aria-hidden="true"></i>
|
<i class="fa fa-home" aria-hidden="true"></i>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="layui-nav-item admin-side-cacheclear" lay-unselect>
|
<li class="layui-nav-item admin-side-cacheclear" layadmin-event="clearCache" lay-unselect>
|
||||||
<a href="javascript:;" title="清除服务器缓存">
|
<a href="javascript:;" title="清除服务器缓存">
|
||||||
<i class="fa fa-trash-o" aria-hidden="true"></i>
|
<i class="fa fa-trash-o" aria-hidden="true"></i>
|
||||||
</a>
|
</a>
|
||||||
|
|
2
pom.xml
2
pom.xml
|
@ -23,7 +23,7 @@
|
||||||
<!-- jdk版本 -->
|
<!-- jdk版本 -->
|
||||||
<jdk.version>1.8</jdk.version>
|
<jdk.version>1.8</jdk.version>
|
||||||
<!-- 平台版本 -->
|
<!-- 平台版本 -->
|
||||||
<base.version>5.0.224</base.version>
|
<base.version>5.0.225</base.version>
|
||||||
<!-- Spring 版本号 -->
|
<!-- Spring 版本号 -->
|
||||||
<spring.version>5.1.2.RELEASE</spring.version>
|
<spring.version>5.1.2.RELEASE</spring.version>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue