From 8e22c74a8151aa7d81894b14080d5b59cac66632 Mon Sep 17 00:00:00 2001 From: zhaoxiaohao <279049017@qq.com> Date: Fri, 11 Dec 2020 17:58:20 +0800 Subject: [PATCH] 修改 用户被顶后,还可以点搜索的bug --- kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/js/common.js | 199 ++++++++++++++++++++++++++++++++++--------------- 1 files changed, 138 insertions(+), 61 deletions(-) diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/js/common.js b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/js/common.js index 8d1b993..8c93db6 100644 --- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/js/common.js +++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/js/common.js @@ -4,11 +4,33 @@ }).extend({ formSelects: 'formSelects/formSelects-v4', treetable: 'treetable-lay/treetable', + treetable2: 'treetable2/TreeTable', + autocomplete: 'complete/autocomplete', step: 'step-lay/step' -}).use(['layer'], function () { +}).use(['layer', 'config', 'index', 'element'], function () { var $ = layui.jquery; var layer = layui.layer; + let config = layui.config; + let index = layui.index; + let element = layui.element; + // 检查是否登录 + if (!config.getToken() || config.getToken() == '') { + location.replace('login.html'); + return; + } + + // 检查多标签功能是否开启 + index.checkPageTabs(); + + // 获取当前用户信息 + index.getUser(function (user) { + $('.layui-layout-admin .layui-header').vm(user); + index.initLeftNav(); + element.render('nav'); + index.initRouter(); + index.bindEvent(); + }); // 加载设置的主题 var theme = layui.data('easyweb').theme; if (theme) { @@ -45,22 +67,22 @@ * @param format {date} 传入要格式化的日期类型 * @returns {2015-01-31 16:30:00} */ -Date.prototype.dateFormat = function (format){ +Date.prototype.dateFormat = function (format) { var o = { - "M+" : this.getMonth()+1, //month - "d+" : this.getDate(), //day - "h+" : this.getHours(), //hour - "m+" : this.getMinutes(), //minute - "s+" : this.getSeconds(), //second - "q+" : Math.floor((this.getMonth()+3)/3), //quarter - "S" : this.getMilliseconds() //millisecond + "M+": this.getMonth() + 1, //month + "d+": this.getDate(), //day + "h+": this.getHours(), //hour + "m+": this.getMinutes(), //minute + "s+": this.getSeconds(), //second + "q+": Math.floor((this.getMonth() + 3) / 3), //quarter + "S": this.getMilliseconds() //millisecond } - if(/(y+)/.test(format)) { - format = format.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length)); + if (/(y+)/.test(format)) { + format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); } - for(var k in o) { - if(new RegExp("("+ k +")").test(format)) { - format = format.replace(RegExp.$1, RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length)); + for (var k in o) { + if (new RegExp("(" + k + ")").test(format)) { + format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length)); } } return format; @@ -76,35 +98,33 @@ * @param date{date} 传入日期类型 * @returns {星期四,...} */ - nowFewWeeks:function(date){ - if(date instanceof Date){ - var dayNames = new Array("星期天","星期一","星期二","星期三","星期四","星期五","星期六"); + nowFewWeeks: function (date) { + if (date instanceof Date) { + var dayNames = new Array("星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"); return dayNames[date.getDay()]; - } else{ + } else { return "Param error,date type!"; } }, /** * 比较第一个时间值和第二个时间值的大小 如果第一个大 返回true 否则返回false * **/ - compareDate:function(datebegin,dateend) - { - var datebegindate=dateUtil.strTurnDate(datebegin); - var dateenddate=dateUtil.strTurnDate(dateend); + compareDate: function (datebegin, dateend) { + var datebegindate = dateUtil.strTurnDate(datebegin); + var dateenddate = dateUtil.strTurnDate(dateend); if (datebegindate > dateenddate) { - return false; - } else { return true; + } else { + return false; } }, /*** * 获取今天的时间字符串 */ - getNowDate:function() - { + getNowDate: function () { var dayTime = new Date(); dayTime.setTime(dayTime.getTime()); - return dayTime.getFullYear()+"-" + (dayTime.getMonth()+1) + "-" + dayTime.getDate(); + return dayTime.getFullYear() + "-" + (dayTime.getMonth() + 1) + "-" + dayTime.getDate(); }, /* * 方法作用:【字符串转换成日期】 @@ -112,11 +132,11 @@ * @param str {String}字符串格式的日期,传入格式:yyyy-mm-dd(2015-01-31) * @return {Date}由字符串转换成的日期 */ - strTurnDate:function(str){ - var re = /^(\d{4})\S(\d{1,2})\S(\d{1,2})$/; - var dt; - if (re.test(str)){ - dt = new Date(RegExp.$1,RegExp.$2 - 1,RegExp.$3); + strTurnDate: function (str) { + var re = /^(\d{4})\S(\d{1,2})\S(\d{1,2})$/; + var dt; + if (re.test(str)) { + dt = new Date(RegExp.$1, RegExp.$2 - 1, RegExp.$3); } return dt; }, @@ -128,13 +148,23 @@ * @endDate {Date}结束日期 * @return endDate - startDate的天数差 */ - dayMinus:function(startDate, endDate){ - if(startDate instanceof Date && endDate instanceof Date){ - var days = Math.floor((endDate-startDate)/(1000 * 60 * 60 * 24)); + dayMinus: function (startDate, endDate) { + if (startDate instanceof Date && endDate instanceof Date) { + var days = Math.floor((endDate - startDate) / (1000 * 60 * 60 * 24)); return days; - }else{ + } else { return "Param error,date type!"; } + }, + /** + * 判断一个字符串是否日期 + * @param {字符串} strDate + */ + isDate: function (strDate) { + if (!strUtil.isEmpty(strDate) && !isNaN(Date.parse(strDate))) { + return true; + } + return false; } }; @@ -149,21 +179,21 @@ * @param fileurl 文件路径, * @param filetype 文件类型,支持传入类型,js、css */ - loadjscssfile:function(fileurl,filetype){ - if(filetype == "js"){ + loadjscssfile: function (fileurl, filetype) { + if (filetype == "js") { var fileref = document.createElement('script'); - fileref.setAttribute("type","text/javascript"); - fileref.setAttribute("src",fileurl); - }else if(filetype == "css"){ + fileref.setAttribute("type", "text/javascript"); + fileref.setAttribute("src", fileurl); + } else if (filetype == "css") { var fileref = document.createElement('link'); - fileref.setAttribute("rel","stylesheet"); - fileref.setAttribute("type","text/css"); - fileref.setAttribute("href",fileurl); + fileref.setAttribute("rel", "stylesheet"); + fileref.setAttribute("type", "text/css"); + fileref.setAttribute("href", fileurl); } - if(typeof fileref != "undefined"){ + if (typeof fileref != "undefined") { document.getElementsByTagName("head")[0].appendChild(fileref); - }else{ + } else { alert("loadjscssfile method error!"); } } @@ -179,10 +209,10 @@ * @param str 传入的字符串 * @returns {} */ - isEmpty:function(str){ - if(str != '' && str != undefined && str != null && str.length > 0){ + isEmpty: function (str) { + if (str != '' && str != undefined && str != null) { return false; - }else{ + } else { return true; } }, @@ -192,10 +222,10 @@ * @param str2 * @returns {Boolean} */ - isEquals:function(str1,str2){ - if(str1==str2){ + isEquals: function (str1, str2) { + if (str1 == str2) { return true; - }else{ + } else { return false; } }, @@ -205,10 +235,10 @@ * @param str2 * @returns {Boolean} */ - isEqualsIgnorecase:function(str1,str2){ - if(str1.toUpperCase() == str2.toUpperCase()){ + isEqualsIgnorecase: function (str1, str2) { + if (str1.toUpperCase() == str2.toUpperCase()) { return true; - }else{ + } else { return false; } }, @@ -217,10 +247,10 @@ * @param value * @returns {Boolean} */ - isNum:function (value){ - if( value != null && value.length>0 && isNaN(value) == false){ + isNum: function (value) { + if (value != null && value.length > 0 && isNaN(value) == false) { return true; - }else{ + } else { return false; } }, @@ -229,11 +259,58 @@ * @param str * @returns {Boolean} */ - isChine:function(str){ + isChine: function (str) { var reg = /^([u4E00-u9FA5]|[uFE30-uFFA0])*$/; - if(reg.test(str)){ + if (reg.test(str)) { return false; } return true; } -}; \ No newline at end of file +}; +//从当前页面的url地址中获取参数数据 +function getRequest() { + var url = location.search; //获取url中"?"符后的字串 + var theRequest = new Object(); + if (url.indexOf("?") != -1) { + var str = url.substr(1); + strs = str.split("&"); + for (var i = 0; i < strs.length; i++) { + theRequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]); + } + } + return theRequest; +} + /** + * 1.判断用户是否在登录状态 + * 2.自动将没权限的按钮隐藏 + * 如果页面有列表,则在列表的 done事件内调用 + * 如果页面没有列表,则在页面所有js执行的最后调用此函数 + * + * 所有需要权限控制显示的按钮,需要在class内加上permissions, + * 同时在控件上增加permissions="user-btn-import"这样的自定义属性 + * 其中引号内是菜单管理--里面对应的资源的菜单path + */ +function permissionsInput(res,config) { + if(!strUtil.isEmpty(res)&&res.code==401){ + config.removeToken(); + if(res.msg.includes("Access token expired")){ + layer.msg('登录过期', {icon: 2, time: 1500}, function () { + location.replace('/login.html'); + }, 5000); + }else if(res.msg.includes("Invalid access token")){ + layer.msg('您的账号在其他地方登陆,请重新登录或修改密码', {icon: 2, time: 1500}, function () { + location.replace('/login.html'); + }, 5000); + } + + return; + } + var needpPermissions = $(".permissions"); + var permissions = layui.sessionData('tempData')['permissions']; + needpPermissions.each(function () { + var item = $(this); + if (permissions.indexOf(item.attr("permissions")) < 0) { + item.hide(); + } + }) +} \ No newline at end of file -- Gitblit v1.8.0