/** * 通用方法封装处理 * Copyright (c) 2018 ruoyi */ /** 消息状态码 */ web_status = { SUCCESS: 0, FAIL: 500 }; /** 弹窗状态码 */ modal_status = { SUCCESS: "success", FAIL: "error", WARNING: "warning" }; /** 弹出层指定宽度 */ function layer_show(title, url, w, h) { if (title == null || title == '') { title = false; }; if (url == null || url == '') { url = "404.html"; }; if (w == null || w == '') { w = 800; }; if (h == null || h == '') { h = ($(window).height() - 50); }; layer.open({ type: 2, area: [w + 'px', h + 'px'], fix: false, //不固定 maxmin: true, shade: 0.4, title: title, content: url }); } /** 弹出层自动宽高 */ function layer_showAuto(title, url) { layer_show(title, url, '', ''); } /** 关闭弹出框口 */ function layer_close() { var index = parent.layer.getFrameIndex(window.name); parent.layer.close(index); } /** 对ajax的post方法再次封装 */ _ajax_save = function(url, data) { var config = { url: url, type: "post", dataType: "json", data: data, success: function(result) { handleSuccess(result); } }; $.ajax(config) }; /** 对jquery的ajax方法再次封装 */ _ajax = function(url, data, type) { var config = { url: url, type: type, dataType: "json", data: data, success: function(result) { simpleSuccess(result); } }; $.ajax(config) }; /** 返回结果处理 */ function simpleSuccess(result) { if (result.code == web_status.SUCCESS) { $.modalMsg(result.msg, modal_status.SUCCESS); $.refreshTable(); } else { $.modalAlert(result.msg, modal_status.FAIL); } } /** 操作结果处理 */ function handleSuccess(result) { if (result.code == web_status.SUCCESS) { parent.layer.msg("新增成功,正在刷新数据请稍后……",{icon:1,time: 500,shade: [0.1,'#fff']},function(){ $.parentReload(); }); } else { $.modalAlert(result.msg, modal_status.FAIL); } } /** 时间格式化 */ function formatDate(_date, _pattern) { var date = new Date(_date); var newDate = date.format(_pattern); return newDate; } Date.prototype.format = function(format) { var date = { "M+" : this.getMonth() + 1, "d+" : this.getDate(), "h+" : this.getHours(), "m+" : this.getMinutes(), "s+" : this.getSeconds(), "q+" : Math.floor((this.getMonth() + 3) / 3), "S+" : this.getMilliseconds() }; if (/(y+)/i.test(format)) { format = format.replace(RegExp.$1, (this.getFullYear() + '') .substr(4 - RegExp.$1.length)); } for ( var k in date) { if (new RegExp("(" + k + ")").test(format)) { format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? date[k] : ("00" + date[k]).substr(("" + date[k]).length)); } } return format; } /** 创建选项卡 */ function createMenuItem(dataUrl, menuName) { dataIndex = Math.floor(Math.random()*100), flag = true; if (dataUrl == undefined || $.trim(dataUrl).length == 0) return false; var topWindow = $(window.parent.document); // 选项卡菜单已存在 $('.menuTab', topWindow).each(function() { if ($(this).data('id') == dataUrl) { if (!$(this).hasClass('active')) { $(this).addClass('active').siblings('.menuTab').removeClass('active'); $('.page-tabs-content').animate({ marginLeft: ""}, "fast"); // 显示tab对应的内容区 $('.mainContent .RuoYi_iframe', topWindow).each(function() { if ($(this).data('id') == dataUrl) { $(this).show().siblings('.RuoYi_iframe').hide(); return false; } }); } flag = false; return false; } }); // 选项卡菜单不存在 if (flag) { var str = '' + menuName + ' '; $('.menuTab', topWindow).removeClass('active'); // 添加选项卡对应的iframe var str1 = ''; $('.mainContent', topWindow).find('iframe.RuoYi_iframe').hide().parents('.mainContent').append(str1); // 添加选项卡 $('.menuTabs .page-tabs-content', topWindow).append(str); } return false; } /** 设置全局ajax超时处理 */ $.ajaxSetup({ complete: function(XMLHttpRequest, textStatus) { if (textStatus == "parsererror") { $.modalConfirm("登陆超时!请重新登陆!", function() { window.location.href = ctx + "login"; }) } else if (textStatus == "error") { $.modalAlert("请求超时!请稍后再试!", 'warning'); } } });