//var IP = "http://47.104.149.73:1991";//接口IP //var IP = "http://172.16.71.101:8082/";//接口IP //var IP = "http://localhost:13243/api"; //var IP = "http://localhost:50515/api";//本地 //var IP = "http://localhost:44318/api"; //var IP = "http://192.168.1.6:8017"; //var IP = "http://192.168.1.226:8086"; //var IP = "http://192.168.62.200:8888/api";//bkl服务器 //运行 var IP = "https://localhost:44363/api"; var pageCnt = 15; var pageLimits = [10, 15, 20, 30, 50, 70, 100]; function pageCntFirst() { sendData( IP + "/Basis/GetFunSettingByNo?funSetNo=" + "Fun013", {}, "get", function (res) { console.log(res.data.SetValue); if (res.code == 0) { //成功 if (res.data.IsEnable == "NO") { pageCnt = parseInt(res.data.SetValue); // console.log(pageLimits.indexOf(pageCnt) == '-1') if (pageLimits.indexOf(pageCnt) == "-1") { pageLimits.push(pageCnt); pageLimits.sort(function (a, b) { return a - b; }); } } } } ); } function sendData(url, data, type, callbackFun) { var deferred = $.Deferred(); if (type != "get") { data = JSON.stringify(data); } if (url != IP + "/WeatherForecast/Login") { if (!$.cookie("token")) { callbackFun("登录人信息已失效"); try { parent.window.location.href = "/views/Login.html"; } catch (error) { window.location.href = "/views/Login.html"; } return; } if (isTokenExpired($.cookie("token"))) { try { parent.window.location.href = "/views/Login.html"; } catch (error) { window.location.href = "/views/Login.html"; } return; } } $.ajax({ url: url, data: data, type: type, headers: { "Content-Type": "application/json; charset=UTF-8", ToKen: $.cookie("token"), }, timeout: 45000, async: true, cache: false, beforeSend: function (xhr, settings) {}, success: function (res, status, xhr) { // console.log(res); // console.log(status); callbackFun(res); }, error: function (res, status, error) { callbackFun(res.responseJSON, status, error); // layer.msg(res.statusText, { // icon: 2, // time: 2000 //2秒关闭(如果不配置,默认是3秒) // }, function() {}); }, }); } function isTokenExpired(token) { const tokenParts = token.split("."); if (tokenParts.length !== 3) { return true; // JWT 格式不正确 } const payloadBase64 = tokenParts[1]; const payload = JSON.parse(atob(payloadBase64)); if (!payload || !payload.exp) { return true; // 没有有效载荷或者没有过期时间 } const now = Date.now() / 1000; // 当前时间戳(秒) const expiration = payload.exp; return now >= expiration; } function synData(url, data, type, callbackFun) { var deferred = $.Deferred(); if (type != "get") { data = JSON.stringify(data); } if (url != IP + "/WeatherForecast/Login") { if (!$.cookie("token")) { callbackFun("登录人信息已失效"); } } $.ajax({ url: url, data: data, type: type, headers: { "Content-Type": "application/json; charset=UTF-8", ToKen: $.cookie("token"), }, timeout: 45000, async: false, cache: false, beforeSend: function (xhr, settings) {}, success: function (res, status, xhr) { callbackFun(res); }, error: function (res, status, error) { callbackFun(res, status, error); // layer.msg(res.statusText, { // icon: 2, // time: 2000 //2秒关闭(如果不配置,默认是3秒) // }, function() {}); }, }); } // 根据时间戳转换为时间格式 function formatDate(str) { if (str == null || str == "" || str == undefined) { return ""; } else { var date = new Date( str //parseInt(str.replace("/Date(", "").replace(")/", ""), 10) ); Y = date.getFullYear(); M = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1; D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate(); h = date.getHours() < 10 ? "0" + date.getHours() : date.getHours(); m = date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes(); s = date.getSeconds() < 10 ? "0" + date.getSeconds() : date.getSeconds(); return Y + "-" + M + "-" + D + " " + h + ":" + m + ":" + s; } } // 根据时间戳转换为时间格式:年-月-日 function formatDate2(str) { if (str == null || str == "" || str == undefined) { return ""; } else { var date = new Date( str // parseInt(str.replace("/Date(", "").replace(")/", ""), 10) ); Y = date.getFullYear() + "-"; M = (date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1) + "-"; D = (date.getDate() < 10 ? "0" + date.getDate() : date.getDate()) + " "; h = (date.getHours() < 10 ? "0" + date.getHours() : date.getHours()) + ":"; m = date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes(); s = date.getSeconds() < 10 ? "0" + date.getSeconds() : date.getSeconds(); return Y + M + D; } } //获取浏览器参数 function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if (r != null) return unescape(r[2]); return null; } // 同步方法 function sendDataAsync(url, data, type, callbackFun) { var deferred = $.Deferred(); data = JSON.stringify(data); $.ajax({ url: url, data: data, type: type, headers: { "Content-Type": "application/json", }, timeout: 45000, async: false, cache: false, beforeSend: function (xhr, settings) {}, success: function (res, status, xhr) { callbackFun(res); }, error: function (xhr, status, error) { console.log("失败了"); console.log(xhr); }, }); } //获取除搜索条件外高度 function GetTableHeight() { var bodyHeight = $("#body").outerHeight(); var topHeight = $("#top").outerHeight(); var centerHeight = $("#center").outerHeight(); console.log(bodyHeight); console.log(topHeight); console.log(centerHeight); var hh = bodyHeight - topHeight - centerHeight - 26; //6是body上内边距 return hh; } //获取除搜索条件外60%高度 function GetTableTopHeight() { var bodyHeight = $("#body").outerHeight(); var topHeight = $("#top").outerHeight(); var centerHeight = $("#center").outerHeight(); // console.log(bodyHeight); // console.log(topHeight); // console.log(centerHeight); var hh = bodyHeight - topHeight - centerHeight - 26; //6是body上内边距、20是layui-card-body上下内边距 var h1 = parseInt(hh * 0.6); return h1; } //获取除搜索条件外40%高度 function GetTableBottomHeight() { var bodyHeight = $("#body").outerHeight(); var topHeight = $("#top").outerHeight(); var centerHeight = $("#center").outerHeight(); var hh = bodyHeight - topHeight - centerHeight - 26; //6是body上内边距 var h2 = parseInt(hh * 0.4); return h2; } //获取除搜索条件以及页签外高度 function GetTableTabHeight() { var bodyHeight = $("#body").outerHeight(); var topHeight = $("#top").outerHeight(); var centerHeight = $("#center").outerHeight(); var tabHeight = $("#tab").outerHeight(); // console.log(bodyHeight); // console.log(topHeight); // console.log(centerHeight); // console.log(tabHeight); var hh = bodyHeight - topHeight - centerHeight - tabHeight - 57; //6是body上内边距 return hh; } //判断是否正整数 true 正整数 false 其他 function isIntNum(val) { var regPos = /^\d+$/; //var regNeg = /^\-[1-9][0-9]"*$/; if (regPos.test(val)) { //&®Neg.test(val)) return true; } else { return false; } } //判断是否开启table列表列宽调整功能。 var isSetColW = false; function GetIsSetColW() { sendData( IP + "/Basis/GetFunSettingByNo?funSetNo=" + "Fun014", {}, "get", function (res) { if (res.code == 0) { //成功 if (res.data.IsEnable == "NO") { isSetColW = true; } } } ); } //自定义列宽功能,tableId:表格id,Href:表格获取数据方法,ColsSysArr:自定列表头url编码后数据 function SetTableColW(tableId, Href, ColsSysArr) { if (isSetColW) { //通过表格id获取表格表头的点击事件 var target = $("#" + tableId + "") .next() .find(".layui-table-header"); target.on("click", ".layui-table-cell", function () { var that = this; var colText = that.innerText; //找到所点击列的列名 if (colText == "") { return; } var colWidth = that.clientWidth + ""; //找到所点击列的列宽 ColsSysArr = decodeURIComponent(decodeURIComponent(ColsSysArr)); var param5 = { Href: Href, ColsJson: "", ColsSysArr: ColsSysArr, ColText: colText, ColWidth: colWidth, }; sendData(IP + "/Sys/SaveClosUser", param5, "post", function (res) { if (res.code === 0) { } else { //不成功 } }); }); } } //深拷贝 function deepClone(source) { if (typeof source !== "object" || source == null) { return source; } const target = Array.isArray(source) ? [] : {}; for (const key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (typeof source[key] === "object" && source[key] !== null) { target[key] = deepClone(source[key]); } else { target[key] = source[key]; } } } return target; } /** * 将表单赋值为指定的对象 * @param {Object} data - 包含表单数据的对象 * @param {String} formSelector - 表单的选择器,例如 '#myForm' 或 '.myForm' */ function setFormData(data, formSelector) { var $form = $(formSelector); $.each(data, function (key, value) { var $field = $form.find("[name=" + key + "]"); if ($field.length > 0) { var fieldType = $field.attr("type"); switch (fieldType) { case "checkbox": if (Array.isArray(value)) { $field.each(function () { $(this).prop("checked", value.includes($(this).val())); }); } else { $field.prop("checked", value); } break; case "radio": $field.filter("[value=" + value + "]").prop("checked", true); break; default: $field.val(value); break; } } }); } //分页格式化 var FnParseData = function (res) { return { code: res.code == 0 ? 0 : res.code, // 解析接口状态 msg: res.msg, // 解析提示文本 count: res.data.Total, // 解析数据长度 data: res.data.Items, // 解析数据列表 }; }; //调用打印 function openPrintDialog(printData, printType) { layer.open({ type: 2, title: "打印", // content: '../../js/hiprint/custom.html', content: "/views/SystemSettings/PrintModule.html", maxmin: true, area: ["100%", "100%"], data: printData, success: function (layero, index) { var body = layer.getChildFrame("body", index); body.find("#printData").val(JSON.stringify(printData)); body.find("#printType").val(printType); }, }); }