| | |
| | | treetable2: 'treetable2/TreeTable', |
| | | autocomplete: 'complete/autocomplete', |
| | | step: 'step-lay/step' |
| | | }).use(['layer','config', 'index', 'element'], function () { |
| | | }).use(['layer', 'config', 'index', 'element'], function () { |
| | | var $ = layui.jquery; |
| | | var layer = layui.layer; |
| | | let config = layui.config; |
| | |
| | | * @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; |
| | |
| | | * @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(); |
| | | }, |
| | | /* |
| | | * 方法作用:【字符串转换成日期】 |
| | |
| | | * @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; |
| | | }, |
| | |
| | | * @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; |
| | | } |
| | | }; |
| | | |
| | |
| | | * @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!"); |
| | | } |
| | | } |
| | |
| | | * @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; |
| | | } |
| | | }, |
| | |
| | | * @param str2 |
| | | * @returns {Boolean} |
| | | */ |
| | | isEquals:function(str1,str2){ |
| | | if(str1==str2){ |
| | | isEquals: function (str1, str2) { |
| | | if (str1 == str2) { |
| | | return true; |
| | | }else{ |
| | | } else { |
| | | return false; |
| | | } |
| | | }, |
| | |
| | | * @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; |
| | | } |
| | | }, |
| | |
| | | * @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; |
| | | } |
| | | }, |
| | |
| | | * @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; |
| | | } |
| | | }; |
| | | //从当前页面的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(); |
| | | } |
| | | }) |
| | | } |