wxw
9 天以前 156e0d593769d1c4438eb1c6d4547063f76331b3
HTML/js/public.js
@@ -4,72 +4,70 @@
//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.1.226:8086";
//var IP = "http://192.168.62.200:8888/api";//bkl服务器
//运行
//var IP="https://localhost:44363/api";
//本地发布
var IP="http://localhost:8034/api";
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')
      {
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')
          {
          if (pageLimits.indexOf(pageCnt) == "-1") {
            pageLimits.push(pageCnt);
            pageLimits.sort(function(a,b){
              return a - b;
            })
            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')) {
  }
  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';
      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';
    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')
      ToKen: $.cookie("token"),
    },
    timeout: 45000,
    async: true,
@@ -90,29 +88,29 @@
  });
}
function isTokenExpired(token) {
  const tokenParts = token.split('.');
  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')) {
  }
  if (url != IP + "/WeatherForecast/Login") {
    if (!$.cookie("token")) {
      callbackFun("登录人信息已失效");
    }
  }
@@ -122,7 +120,7 @@
    type: type,
    headers: {
      "Content-Type": "application/json; charset=UTF-8",
      "ToKen":$.cookie('token')
      ToKen: $.cookie("token"),
    },
    timeout: 45000,
    async: false,
@@ -131,7 +129,7 @@
    success: function (res, status, xhr) {
      callbackFun(res);
    },
    error: function (res, status, error) {
    error: function (res, status, error) {
      callbackFun(res, status, error);
      // layer.msg(res.statusText, {
      //   icon: 2,
@@ -146,16 +144,20 @@
  if (str == null || str == "" || str == undefined) {
    return "";
  } else {
    var date = new Date(str
    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.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;
    return Y + "-" + M + "-" + D + " " + h + ":" + m + ":" + s;
  }
}
// 根据时间戳转换为时间格式:年-月-日
@@ -163,7 +165,8 @@
  if (str == null || str == "" || str == undefined) {
    return "";
  } else {
    var date = new Date(str
    var date = new Date(
      str
      // parseInt(str.replace("/Date(", "").replace(")/", ""), 10)
    );
    Y = date.getFullYear() + "-";
@@ -221,7 +224,7 @@
  console.log(topHeight);
  console.log(centerHeight);
  var hh = bodyHeight - topHeight-centerHeight - 26 ;//6是body上内边距
  var hh = bodyHeight - topHeight - centerHeight - 26; //6是body上内边距
  return hh;
}
//获取除搜索条件外60%高度
@@ -232,103 +235,105 @@
  // 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)
  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 topHeight = $("#top").outerHeight();
  var centerHeight = $("#center").outerHeight();
  var hh = bodyHeight - topHeight-centerHeight - 26 ;//6是body上内边距
  var h2 = parseInt(hh*0.4)
  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;
  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){
function isIntNum(val) {
  var regPos = /^\d+$/;
  //var regNeg = /^\-[1-9][0-9]"*$/;
  if (regPos.test(val))//&&regNeg.test(val))
  {
     return true;
  }
  else
  {
  if (regPos.test(val)) {
    //&&regNeg.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;
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){
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==''){
    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+"";//找到所点击列的列宽
      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 { //不成功
        }
      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) {
  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) {
      if (typeof source[key] === "object" && source[key] !== null) {
        target[key] = deepClone(source[key]);
      } else {
        target[key] = source[key];
@@ -336,7 +341,7 @@
    }
  }
  return target;
}
}
/**
 * 将表单赋值为指定的对象
 * @param {Object} data - 包含表单数据的对象
@@ -345,57 +350,57 @@
function setFormData(data, formSelector) {
  var $form = $(formSelector);
  $.each(data, function(key, value) {
      var $field = $form.find('[name=' + key + ']');
  $.each(data, function (key, value) {
    var $field = $form.find("[name=" + key + "]");
      if ($field.length > 0) {
          var fieldType = $field.attr('type');
    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;
      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 // 解析数据列表
    code: res.code == 0 ? 0 : res.code, // 解析接口状态
    msg: res.msg, // 解析提示文本
    count: res.data.Total, // 解析数据长度
    data: res.data.Items, // 解析数据列表
  };
}
};
//调用打印
function openPrintDialog(printData, printType){
function openPrintDialog(printData, printType) {
  layer.open({
    type: 2,
    title: '打印',
    title: "打印",
    // content: '../../js/hiprint/custom.html',
    content: '/views/SystemSettings/PrintModule.html',
    content: "/views/SystemSettings/PrintModule.html",
    maxmin: true,
    area: ['100%', '100%'],
    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);
    }
      var body = layer.getChildFrame("body", index);
      body.find("#printData").val(JSON.stringify(printData));
      body.find("#printType").val(printType);
    },
  });
}
}