zhaowc
2024-09-06 1b108e8d7335d5a5a59dfcf2f4eeef034a53b9b8
Pda/js/public.js
@@ -1,8 +1,8 @@
//  var IP = "http://47.104.149.73:1991";//接口IP
// var IP = "https://localhost:44368";
 //var IP = "http://localhost:13243/api";
 var IP = "http://localhost:50515/api";
 //var IP = "http://192.168.1.2:8017/";
//var IP = "http://localhost:13243/api";
var IP = "http://localhost:50515/api";
//var IP = "http://192.168.1.2:8017/";
// var IP = "http://192.168.10.112/WmsService/";
// var IP = "http://192.168.1.226:8086";
// var IP = "http://192.168.62.200:8888/api";  
@@ -10,92 +10,141 @@
function sendData(url, data, type, callbackFun) {
   // callbackFun("{}");
   // return;
    var deferred = $.Deferred();
    if (type != "get") {
   var deferred = $.Deferred();
   if (type != "get") {
      data = JSON.stringify(data);
   }
   if (url!=IP+"/WeatherForecast/Login") {
   }
   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;
      }
   }
    $.ajax({
       url: url,
       data: data,
       type: type,
       headers: {
          'Content-Type': 'application/json',
         "ToKen":$.cookie('token')
       },
       timeout: 45000,
       async: true,
       cache: false,
       beforeSend: function(xhr, settings) {},
       success: function(res, status, xhr) {
          callbackFun(res);
       },
       error: function(xhr, status, error) {
      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',
         "ToKen": $.cookie('token')
      },
      timeout: 45000,
      async: true,
      cache: false,
      beforeSend: function (xhr, settings) { },
      success: function (res, status, xhr) {
         callbackFun(res);
      },
      error: function (xhr, status, error) {
         callbackFun(xhr, status, error);
         // layer.msg(xhr.statusText, {
         //   icon: 2,
         //   time: 2000 //2秒关闭(如果不配置,默认是3秒)
         // }, function() {});
       }
    });
      }
   });
}
function synData(url, data, type, callbackFun) {
   var deferred = $.Deferred();
   if (type != "get") {
      data = JSON.stringify(data);
   }
   if (url!=IP+"/WeatherForecast/Login") {
   }
   if (url != IP + "/WeatherForecast/Login") {
      if (!$.cookie('token')) {
         callbackFun("登录人信息已失效");
         try {
            parent.window.location.href = '/view/Login.html';
         }
         catch (error) {
            window.location.href = '/view/Login.html';
         }
         return;
      }
   }
      if (isTokenExpired($.cookie('token'))) {
         try {
            parent.window.location.href = '/view/Login.html';
         }
         catch (error) {
            window.location.href = '/view/Login.html';
         }
         return;
      }
   }
   $.ajax({
     url: url,
     data: data,
     type: type,
     headers: {
      "Content-Type": "application/json",
      "ToKen":$.cookie('token'),
     },
     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);
      callbackFun(xhr, status, error);
     },
      url: url,
      data: data,
      type: type,
      headers: {
         "Content-Type": "application/json",
         "ToKen": $.cookie('token'),
      },
      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);
         callbackFun(xhr, status, error);
      },
   });
}
$("#navIcon").click(function(){
    if($(".nav_list").css('display')=='none'){
        $(".nav_list").show();
    }else{
        $(".nav_list").hide();
    }
$("#navIcon").click(function () {
   if ($(".nav_list").css('display') == 'none') {
      $(".nav_list").show();
   } else {
      $(".nav_list").hide();
   }
});
//深拷贝
function deepCopy(obj) {
   let newobj = null     // 接受拷贝的新对象
   if(typeof(obj) == 'object' && typeof(obj) !== null) {   // 判断是否是引用类型
      newobj = obj instanceof Array? []: {}               // 判断是数组还是对象
      for(var i in obj) {
   if (typeof (obj) == 'object' && typeof (obj) !== null) {   // 判断是否是引用类型
      newobj = obj instanceof Array ? [] : {}               // 判断是数组还是对象
      for (var i in obj) {
         newobj[i] = deepCopy(obj[i])                        // 判断下一级是否还是引用类型
      }
      }
   } else {
      newobj = obj
   }
   return newobj
}
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;
  }