master
关凯 2024-04-15 15:51:57 +08:00
parent 1a4cd9575f
commit 9540958d12
211 changed files with 194978 additions and 193702 deletions

View File

@ -0,0 +1,13 @@
_ _
| | | |
| | ____| | __ _ _ _ _ _ _ __ ___ ___ _ __ ___
| |/ / _` |/ _` | | | | | | | '_ \ / __/ _ \| '_ ` _ \
| < (_| | (_| | |_| | |_| | | | || (_| (_) | | | | | |
|_|\_\__,_|\__,_|\__, |\__,_|_| |_(_)___\___/|_| |_| |_|
__/ |
|___/
=> Spring Boot :: ${spring-boot.version}
=> Home site :: http://kdayun.com
=> Help site :: http://help.kdayun.com

View File

@ -25,7 +25,7 @@ layui.define(function (exports) {
if (obj['length'] === 0) { if (obj['length'] === 0) {
return true return true
} }
if (obj === {}) { if (obj && Object.keys(obj).length === 0) {
return true return true
} }
return false return false
@ -219,8 +219,9 @@ layui.define(function (exports) {
* @param {*} resid 资源id * @param {*} resid 资源id
* @param {*} param 传递的参数 * @param {*} param 传递的参数
* @param {*} callback 完成回调 * @param {*} callback 完成回调
* @param {*} forceRefresh 强制刷新页面
*/ */
openTabsPage: function (url, text, resid, param, callback) { openTabsPage: function (url, text, resid, param, callback, forceRefresh) {
//遍历页签选项卡 //遍历页签选项卡
var matchTo, tabs = $('#LAY_app_tabsheader>li'), var matchTo, tabs = $('#LAY_app_tabsheader>li'),
path = url.replace(/(^http(s*):)|(\?[\s\S]*$)/g, ''), path = url.replace(/(^http(s*):)|(\?[\s\S]*$)/g, ''),
@ -270,12 +271,25 @@ layui.define(function (exports) {
else { else {
$iframe = $(APP_BODY).find('iframe[src="' + url + '"]'); $iframe = $(APP_BODY).find('iframe[src="' + url + '"]');
} }
$iframe && !$iframe.attr('loaded') && $iframe.load(function () { if ($iframe && !$iframe.attr('loaded')) {
$iframe.load(function () {
if (url.indexOf('http:') != -1 || url.indexOf('https:') != -1 || url.indexOf('/coremodelshow') == -1) { if (url.indexOf('http:') != -1 || url.indexOf('https:') != -1 || url.indexOf('/coremodelshow') == -1) {
$('.layadmin-tabsbody-shade').fadeOut('600'); $('.layadmin-tabsbody-shade').fadeOut('600');
} }
$iframe.attr('loaded', 'true') $iframe.attr('loaded', 'true')
}); });
} else {
if (forceRefresh && $iframe && $iframe[0]) {
$iframe.removeAttr('loaded');
$iframe.attr('src', url);
$iframe.load(function () {
if (url.indexOf('http:') != -1 || url.indexOf('https:') != -1 || url.indexOf('/coremodelshow') == -1) {
$('.layadmin-tabsbody-shade').fadeOut('600');
}
$iframe.attr('loaded', 'true')
});
}
}
callback && callback(); callback && callback();
//执行 {setter.MOD_NAME}.tabsPage 下的事件 //执行 {setter.MOD_NAME}.tabsPage 下的事件
@ -418,56 +432,140 @@ layui.define(function (exports) {
params: params params: params
} }
return message.broadcast(msgobj); return message.broadcast(msgobj);
},
/**
* 动态增加 js 如果之前已经增加了就直接调用onFinishCallBack回调
* @param jsUrl js的路径
* @param onFinishCallBack js的加载完毕回调函数
* @param attrs 属性对象
*/
require: function (jsUrl, onFinishCallBack, attrs) {
let script = document.createElement('script')
script.type = 'text/javascript';
script.id = jsUrl;
if (attrs) {
for (let atr in attrs) {
script.setAttribute(atr, attrs[atr]);
}
}
if (script['readyState']) {
script['onreadystatechange'] = function () {
if (script['readyState'] == 'loaded' || script['readyState'] == 'complete') {
script['onreadystatechange'] = null;
try {
onFinishCallBack && onFinishCallBack();
} finally {
script.removeAttribute("state");
}
}
};
} else {
script.onload = function () {
try {
onFinishCallBack && onFinishCallBack();
} finally {
script.removeAttribute("state");
}
};
}
script.src = jsUrl;
let scriptElem = document.getElementById(jsUrl);
if (!scriptElem) {
document.getElementsByTagName('head')[0].appendChild(script);
script.setAttribute("state", "loading");
} else {
if (scriptElem.getAttribute("state")) {
return;
} else
onFinishCallBack && onFinishCallBack();
}
},
/**
* js文件的加载
* @param jsUrls js路径数组
* @param onFinishCallBack 完成回调
* @param attrs 附带的属性对象
* @param isSequence 是否按jsUrls数组顺序加载
*/
requires: function (jsUrls, onFinishCallBack, attrs, isSequence) {
if (isSequence) {
let func = () => {
const jsUrl = tmp[0];
common.require(jsUrl, () => {
_.remove(tmp, (item) => { return item === jsUrl; })
if (tmp.length == 0) {
onFinishCallBack && onFinishCallBack();
} else {
func();
}
}, attrs)
}
func();
} else {
for (let i = 0; i < jsUrls.length; i++) {
const jsUrl = jsUrls[i];
common.require(jsUrl, () => {
_.remove(tmp, (item) => { return item === jsUrl; })
if (tmp.length == 0) {
onFinishCallBack && onFinishCallBack();
}
}, attrs)
}
}
} }
} }
//页面服务 //页面服务
let PageService = { // let PageService = {
doOpen: function (type, typeValue, pageCoinfg = {}, param = {}) { // doOpen: function (type, typeValue, pageCoinfg = {}, param = {}) {
let url, urlParam; // let url, urlParam;
if (type == 'menuId') { // if (type == 'menuId') {
url = "/manager/coremodeldesign/queryDetailPageIdByMenuId"; // url = "/manager/coremodeldesign/queryDetailPageIdByMenuId";
urlParam = { menuId: typeValue }; // urlParam = { menuId: typeValue };
} else { // } else {
url = "/manager/coremodeldesign/queryDetailPageIdByMenuCode"; // url = "/manager/coremodeldesign/queryDetailPageIdByMenuCode";
urlParam = { menuCode: typeValue }; // urlParam = { menuCode: typeValue };
} // }
//得到菜单的资源信息 // common.broadcast('PageService', param)
$.get(layui.cache['contentPath'] + url, urlParam, // //得到菜单的资源信息
function (res) { // $.get(layui.cache['contentPath'] + url, urlParam,
res = JSON.parse(res) // function (res) {
if (res.state == 'OK') { // res = JSON.parse(res)
let pageId = 'a' + new Date().getTime(), // if (res.state == 'OK') {
pageParamId = '&__pageId=' + pageId, // let pageId = 'a' + new Date().getTime(),
ret = res.obj // pageParamId = '&__pageId=' + pageId,
param = $.extend(param, ret); // ret = res.obj
param['__pageId'] = pageId; // param = $.extend(param, ret);
let url = `${layui.cache['contentPath']}/manager/coremodelshow/?${type}=${typeValue}${pageParamId}`; // param['__pageId'] = pageId;
for (key in param) { // let url = `${layui.cache['contentPath']}/manager/coremodelshow/?${type}=${typeValue}${pageParamId}`;
param[key] && (url += `&${key}=${param[key]}`) // for (key in param) {
} // param[key] && (url += `&${key}=${param[key]}`)
pageCoinfg.area = pageCoinfg.area || ['70%', '70%'] // }
pageCoinfg.content = url; // pageCoinfg.area = pageCoinfg.area || ['70%', '70%']
pageCoinfg.title = ret.title; // pageCoinfg.content = url;
pageCoinfg.id = pageId // pageCoinfg.title = ret.title;
pageCoinfg.zIndex = new Date().getTime() // pageCoinfg.id = pageId
common.openLayerPage(pageCoinfg, param); // pageCoinfg.zIndex = new Date().getTime()
} else { // common.openLayerPage(pageCoinfg, param);
common.msgError(res.msg); // } else {
} // common.msgError(res.msg);
} // }
); // }
}, // );
openDetailPageByMenuId: function (menuId, pageCoinfg, param = {}) { // },
PageService.doOpen('menuId', menuId, pageCoinfg, param); // openDetailPageByMenuId: function (menuId, pageCoinfg, param = {}) {
}, // PageService.doOpen('menuId', menuId, pageCoinfg, param);
openDetailPageByMenuCode: function (menuCode, pageCoinfg, param = {}) { // },
PageService.doOpen('menuCode', menuCode, pageCoinfg, param); // openDetailPageByMenuCode: function (menuCode, pageCoinfg, param = {}) {
} // PageService.doOpen('menuCode', menuCode, pageCoinfg, param);
} // }
window['kdayun'] = window['kdayun'] || {} // }
window['kdayun']['PageService'] = PageService; // window['kdayun'] = window['kdayun'] || {}
// window['kdayun']['PageService'] = PageService;
//对外暴露的接口 //对外暴露的接口
exports('common', common); exports('common', common);

File diff suppressed because one or more lines are too long

View File

@ -220,7 +220,7 @@
//容器 //容器
Class.pt.vessel = function (conType, callback) { Class.pt.vessel = function (conType, callback) {
var that = this, times = that.index, config = that.config; var that = this, times = that.index, config = that.config;
that.config.zIndex = Common ? Common.generalSeri(2) : new Date().getTime().substring(0, 7); that.config.zIndex = window['Common'] ? window['Common'].generalSeri(2) : new Date().getTime().toString().substring(0, 7);
var zIndex = config.zIndex + times, titype = typeof config.title === 'object'; var zIndex = config.zIndex + times, titype = typeof config.title === 'object';
var ismax = config.maxmin && (config.type === 1 || config.type === 2); var ismax = config.maxmin && (config.type === 1 || config.type === 2);
var titleHTML = (config.title ? '<div class="layui-layer-title" style="' + (titype ? config.title[1] : '') + '">' var titleHTML = (config.title ? '<div class="layui-layer-title" style="' + (titype ? config.title[1] : '') + '">'

File diff suppressed because one or more lines are too long

View File

@ -144,7 +144,7 @@ layui.use(["zlContext"], function (exports) {
$item.find('.grid-stack-item-body').append($itemBody); $item.find('.grid-stack-item-body').append($itemBody);
gridstackAction.grid.addWidget($item, node['x'], node['y'], node['width'], node['height'], gridstackAction.grid.addWidget($item, node['x'], node['y'], node['width'], node['height'],
node['autoPosition'], node['minWidth'], node['maxWidth'], node['minHeight'], node['maxHeight'], node['id']); node['autoPosition'], node['minWidth'], node['maxWidth'], node['minHeight'], node['maxHeight'], node['id']);
let pageService = window['kdayun']['PageService']; let pageService = window['kdayun'] && window['kdayun']['PageService'];
if (pageService && $itemBody.attr('resId') == rwid) { if (pageService && $itemBody.attr('resId') == rwid) {
let matchs = action.match(new RegExp(/(?<=modelId=).*/)); let matchs = action.match(new RegExp(/(?<=modelId=).*/));
if (matchs && matchs[0]) { if (matchs && matchs[0]) {

View File

@ -995,8 +995,8 @@ layui.use(['element', 'table', 'tree', 'zltreemenu', 'zlSelectEx', 'zlpoptree',
, ' <div class="layui-form-item roletype" style="display:none">' , ' <div class="layui-form-item roletype" style="display:none">'
, ' <div class="layui-col-md12">' , ' <div class="layui-col-md12">'
, ' <label class="layui-form-label">新增类型</label>' , ' <label class="layui-form-label">新增类型</label>'
, ' <select name="ROLETYPE" value="0" lay-filter="ROLETYPE">'
, ' <div class="layui-input-block">' , ' <div class="layui-input-block">'
, ' <select name="ROLETYPE" value="0" lay-filter="ROLETYPE">'
, ' <option value=""></option>' , ' <option value=""></option>'
, ' <option value="0">新增个性角色</option>' , ' <option value="0">新增个性角色</option>'
, ' <option value="1">新增已删除角色</option>' , ' <option value="1">新增已删除角色</option>'

View File

@ -157,7 +157,7 @@ layui.define(['view', 'theme', 'common'], function (exports) {
url: tabId, url: tabId,
text: d.params.title text: d.params.title
}); });
}); }, d.params['__forceRefresh']);
} }
if (d && d.msg == 'openTopPage') { if (d && d.msg == 'openTopPage') {
common.openLayerPage(d.params.pageCoinfg, d.params.param); common.openLayerPage(d.params.pageCoinfg, d.params.param);
@ -602,7 +602,21 @@ layui.define(['view', 'theme', 'common'], function (exports) {
}; };
let _beforeUnload_time = 0, _gap_time = 0;
let is_fireFox = navigator.userAgent.indexOf("Firefox") > -1;//是否是火狐浏览器
window.onunload = function () {
_gap_time = new Date().getTime() - _beforeUnload_time;
if (_gap_time <= 5) {
$.post(`${layui.cache['contentPath']}/manager/logout2`);
} else {//浏览器刷新
}
}
window.onbeforeunload = function () {
_beforeUnload_time = new Date().getTime();
if (is_fireFox) {//火狐关闭执行
$.post(`${layui.cache['contentPath']}/manager/logout2`);
}
};
//监听 tab 组件切换,同步 index //监听 tab 组件切换,同步 index
element.on('tab(' + FILTER_TAB_TBAS + ')', function (data) { element.on('tab(' + FILTER_TAB_TBAS + ')', function (data) {

View File

@ -2646,7 +2646,7 @@ CORE STYLES BELOW - NO TOUCHY
.kdayun-app-layout-left .kdayun-menu-item-expand>.kdayun-menu-child { .kdayun-app-layout-left .kdayun-menu-item-expand>.kdayun-menu-child {
display: block; display: block;
padding: 0; padding: 0;
background-color: rgba(0, 0, 0, .06) !important; background-color: rgba(0, 0, 0, .06);
} }
.kdayun-app-layout-left .kdayun-menu-item .kdayun-menu-child a { .kdayun-app-layout-left .kdayun-menu-item .kdayun-menu-child a {

View File

@ -7,6 +7,11 @@
<link rel="stylesheet" href="${request.contextPath}<@jstime url='/static/css/font-awesome/css/font-awesome.min.css'> </@jstime>"> <link rel="stylesheet" href="${request.contextPath}<@jstime url='/static/css/font-awesome/css/font-awesome.min.css'> </@jstime>">
<link rel="stylesheet" href="${request.contextPath}<@jstime url='/static/modules/web/kdayunadmin/style/admin.css'> </@jstime>" media="all"> <link rel="stylesheet" href="${request.contextPath}<@jstime url='/static/modules/web/kdayunadmin/style/admin.css'> </@jstime>" media="all">
<link rel="stylesheet" href="${request.contextPath}<@jstime url='/static/modules/web/kdayunadmin/style/loader.css'> </@jstime>" media="all"> <link rel="stylesheet" href="${request.contextPath}<@jstime url='/static/modules/web/kdayunadmin/style/loader.css'> </@jstime>" media="all">
<link rel="stylesheet" href="${request.contextPath}<@jstime url='/static/libs/formdesign/style.css'> </@jstime>">
<link rel="stylesheet" href="${request.contextPath}<@jstime url='/static/libs/formdesign/css/design.css'> </@jstime>">
<link rel="stylesheet" href="${request.contextPath}<@jstime url='/static/libs/formdesign/css/iconfont/iconfont.css'> </@jstime>">
<!-- 添加发生重大事件获取哀悼日需要把网站变灰的样式 --> <!-- 添加发生重大事件获取哀悼日需要把网站变灰的样式 -->
<@config id = Global.SYSOPTKEY_ISOPENZHIHUI orgid = "${orgid}" > <@config id = Global.SYSOPTKEY_ISOPENZHIHUI orgid = "${orgid}" >
<link id="filterCss" rel="stylesheet" href="${request.contextPath}<@jstime url='/static/modules/manager/css/filter.css'> </@jstime>" media="all"> <link id="filterCss" rel="stylesheet" href="${request.contextPath}<@jstime url='/static/modules/manager/css/filter.css'> </@jstime>" media="all">
@ -206,6 +211,14 @@
<script src="${request.contextPath}<@jstime url='/static/libs/svg-inject.min.js'> </@jstime>"></script> <script src="${request.contextPath}<@jstime url='/static/libs/svg-inject.min.js'> </@jstime>"></script>
<script src="${request.contextPath}<@jstime url='/static/libs/layui/layui.js'> </@jstime>"></script> <script src="${request.contextPath}<@jstime url='/static/libs/layui/layui.js'> </@jstime>"></script>
<script src="${request.contextPath}<@jstime url='/static/framework/messenger.js'> </@jstime>"></script> <script src="${request.contextPath}<@jstime url='/static/framework/messenger.js'> </@jstime>"></script>
<script type="text/javascript" src="${request.contextPath}<@jstime url='/static/libs/formdesign/libs/lodash.min.js'> </@jstime>"></script>
<script type="text/javascript" src="${request.contextPath}<@jstime url='/static/libs/formdesign/libs/vue.min.js'> </@jstime>"></script>
<script type="text/javascript" src="${request.contextPath}<@jstime url='/static/libs/formdesign/libs/ztree/js/jquery.ztree.all.min.js'> </@jstime>"></script>
<script type="text/javascript" src="${request.contextPath}<@jstime url='/static/libs/formdesign/libs/ztree/js/jquery.ztree.exhide.min.js'> </@jstime>"></script>
<script type="text/javascript" src="${request.contextPath}<@jstime url='/static/libs/formdesign/preview.js'> </@jstime>"></script>
<script> <script>
layui.config({ layui.config({
version: "<@configVersion suosxt='CORE'> </@configVersion>" version: "<@configVersion suosxt='CORE'> </@configVersion>"
@ -222,6 +235,7 @@
}).use('index',function(){ }).use('index',function(){
var messenger = new Messenger('index', 'zlfw'); var messenger = new Messenger('index', 'zlfw');
messenger.send('221'); messenger.send('221');
Common.cache['designmodel']=false;
messenger.listen(function(msg){ messenger.listen(function(msg){
layui.common.openTabsPage(msg.url,msg.text); layui.common.openTabsPage(msg.url,msg.text);
}); });

18
pom.xml
View File

@ -23,7 +23,7 @@
<!-- jdk版本 --> <!-- jdk版本 -->
<jdk.version>1.8</jdk.version> <jdk.version>1.8</jdk.version>
<!-- 平台版本 --> <!-- 平台版本 -->
<base.version>5.0.234</base.version> <base.version>5.0.235</base.version>
<!-- Spring 版本号 --> <!-- Spring 版本号 -->
<spring.version>5.1.2.RELEASE</spring.version> <spring.version>5.1.2.RELEASE</spring.version>
@ -79,13 +79,13 @@
<shiro.version>1.9.0</shiro.version> <shiro.version>1.9.0</shiro.version>
<!-- POI 版本号 --> <!-- POI 版本号 -->
<poi.version>3.15</poi.version> <poi.version>3.17</poi.version>
<!-- kdayun-jxls 版本号(已进行改造) --> <!-- kdayun-jxls 版本号(已进行改造) -->
<kdayun-jxls.version>2.3.4</kdayun-jxls.version> <kdayun-jxls.version>2.3.5</kdayun-jxls.version>
<!-- kdayun-jxls-poi 版本号(已进行改造) --> <!-- kdayun-jxls-poi 版本号(已进行改造) -->
<kdayun-jxls-poi.version>1.1.2</kdayun-jxls-poi.version> <kdayun-jxls-poi.version>1.1.3</kdayun-jxls-poi.version>
<!-- kdayun-jsql版本号 --> <!-- kdayun-jsql版本号 -->
<kdayun-jsql.version>1.0</kdayun-jsql.version> <kdayun-jsql.version>1.0</kdayun-jsql.version>
<kdayun.pdf.version>1.0.0</kdayun.pdf.version> <kdayun.pdf.version>1.0.0</kdayun.pdf.version>
@ -443,6 +443,16 @@
<groupId>com.kdayun</groupId> <groupId>com.kdayun</groupId>
<artifactId>kdayun-jxls-poi</artifactId> <artifactId>kdayun-jxls-poi</artifactId>
<version>${kdayun-jxls-poi.version}</version> <version>${kdayun-jxls-poi.version}</version>
<exclusions>
<exclusion>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</exclusion>
<exclusion>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
</exclusion>
</exclusions>
</dependency> </dependency>
<dependency> <dependency>