init.js 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430
  1. // var baseUrl = "http://10.60.11.228:8089";
  2. var baseUrl = "http://121.37.6.200:8088";
  3. var comUrl = "https://www.enstation.com";
  4. var ruiUrl = "https://www.enstation.com";
  5. var baseTok = getCookie("Admin-Token");
  6. var projUrl = "http://10.60.11.142:32000/yzSafer";
  7. // var projUrl = "http://192.168.4.181:32000/yzSafer";
  8. // var projUrl = "http://121.37.6.200";
  9. function ShowLoading(_msg, _type) {
  10. var boarddiv = "<div id='mask_'><div>" + _msg + "</div></div>";
  11. $(document.body).append(boarddiv);
  12. if (_type == 1) {
  13. setTimeout(() => {
  14. $("#mask_").remove();
  15. }, 2000);
  16. }
  17. }
  18. function hideLoading() {
  19. setTimeout(() => {
  20. $("#mask_").remove();
  21. }, 100);
  22. }
  23. function checkLogin() {
  24. let _at = getCookie("Admin-Token");
  25. let _ap = getCookie("AjaxPay");
  26. let _ang = getCookie("AjaxNGen");
  27. if (_at!= "null"&&_at != null&&_at != undefined&&_ang!="null"&&_ang!= null&&_ang != undefined) {
  28. clearStor();
  29. } else {
  30. ajaxErr();
  31. // top.location.href = projUrl+"/index.html";
  32. }
  33. let _type = localStorage.getItem("ptType");
  34. if (_type != null && _type != "null" && _type != undefined) {
  35. var sheetObj = $("#linkSource")[0];
  36. if (sheetObj != undefined) {
  37. setStyle(sheetObj, ".topBox", ["height", "padding"], ["80px", "40px"]);
  38. setStyle(sheetObj, ".topParen", ["padding"], ["80px 0 0"]);
  39. setStyle(sheetObj, ".topBox .icon-left", ["top"], ["48px"]);
  40. setStyle(sheetObj, ".and_sider", ["top"], ["80px"]);
  41. }
  42. } else {
  43. }
  44. }
  45. function clearStor(){
  46. var href = origin = location.origin, pathname = location.pathname, search = location.search, hash = location.hash;
  47. var searchs = search.replace(/_t_=[^&\?]*[&\?]*/g, '').replace(/(^[&\?]*)|([&\?]*$)/g, '');
  48. if(localStorage.getItem('__clearcache__')) {
  49. localStorage.removeItem('__clearcache__');
  50. return history.replaceState({}, null, origin + pathname + (searchs ? '?' : '') + searchs + hash);
  51. }
  52. localStorage.setItem('__clearcache__', '1');
  53. location.replace(origin + pathname + '?' + searchs + (searchs ? '&' : '') + '_t_=' + new Date().valueOf() + hash);
  54. }
  55. function setStyle(Obj, Text, _name, _val) {
  56. var _Sheet = Obj.sheet;
  57. var rules = _Sheet.cssRules;
  58. var rule;
  59. var selectorText;
  60. for (i = 0; i < rules.length; i++) {
  61. rule = rules[i];
  62. selectorText = rule.selectorText;
  63. if (selectorText == null || selectorText == "") {
  64. continue;
  65. } else if (selectorText === Text) {
  66. for (var i = 0; i < _name.length; i++) {
  67. rule.style.setProperty(_name[i], _val[i]);
  68. }
  69. return;
  70. }
  71. }
  72. }
  73. //写cookies
  74. function setCookie(name,value){
  75. var Days = 30;
  76. var exp = new Date();
  77. exp.setTime(exp.getTime() + 7*24*60*60*1000); //7天
  78. document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString()+";path=/";
  79. }
  80. //读取cookies
  81. function getCookie(name){
  82. var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
  83. if(arr=document.cookie.match(reg)) return unescape(arr[2]);
  84. else return null;
  85. }
  86. //删除cookies
  87. function delCookie(name){
  88. var exp = new Date();
  89. exp.setTime(exp.getTime() - 10000);
  90. var cval=getCookie(name);
  91. if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString()+"; path=/";
  92. }
  93. function clearCookie(){
  94. var keys=document.cookie.match(/[^ =;]+(?=\=)/g);
  95. if (keys) {
  96. for (var i = keys.length; i--;)
  97. document.cookie=keys[i]+'=0;expires=' + new Date( 0).toUTCString()
  98. }
  99. function goBack(num) {
  100. top.location.href = "../page/mainPh.html?sn=" + num;
  101. }
  102. function getWeek(dateString) {
  103. var dateArray = dateString.split("-");
  104. date = new Date(dateArray[0], parseInt(dateArray[1] - 1), dateArray[2]);
  105. let enWeek = new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
  106. let zhWeek = "星期" + "日一二三四五六".charAt(date.getDay());
  107. return (getCookie("setLang") == "English"?enWeek[date.getDay()]:zhWeek)
  108. };
  109. function dayChange(a,num) {
  110. var timestamp = Date.parse(new Date(a.replace(/-/g, '\/')));
  111. var newTimestamp = timestamp + num * 24 * 60 * 60 * 1000;
  112. var date = new Date(newTimestamp);
  113. if ((new Date() - new Date(date)) <= 0) {
  114. layer.msg((getCookie("setLang") == "English"?"We can't go any further down":"不能再往下翻啦"));
  115. return;
  116. } else {
  117. return date;
  118. }
  119. }
  120. function getTime(_time) {
  121. let date = _time
  122. const yyyy = date.getFullYear();
  123. const MM = date.getMonth() + 1 > 9 ? date.getMonth() + 1 : '0' + (date.getMonth() + 1);
  124. const dd = date.getDate() > 9 ? date.getDate() : '0' + date.getDate();
  125. const HH = date.getHours() > 9 ? date.getHours() : '0' + date.getHours();
  126. const mm = date.getMinutes() > 9 ? date.getMinutes() : '0' + date.getMinutes();
  127. const ss = date.getSeconds() > 9 ? date.getSeconds() : '0' + date.getSeconds();
  128. return [yyyy + '-' + MM + '-' + dd, " " + HH + ':' + mm + ':' + ss];
  129. }
  130. function getDTime(_time) {
  131. return getTime(_time);
  132. }
  133. // 检查两个时间是否相差半小时
  134. function changeTime(time) {
  135. let date3 = new Date().getTime() - (parseInt(time));
  136. let str = 1;
  137. if (date3 > (5 * 60 * 1000)) {
  138. str = 0;
  139. }
  140. return str;
  141. }
  142. // 判断是PC端还是移动端
  143. function IsPC() {
  144. var userAgentInfo = navigator.userAgent;
  145. var Agents = ["Android", "iPhone",
  146. "SymbianOS", "Windows Phone",
  147. "iPad", "iPod"];
  148. var flag = true;
  149. for (var v = 0; v < Agents.length; v++) {
  150. if (userAgentInfo.indexOf(Agents[v]) > 0) {
  151. flag = false;
  152. break;
  153. }
  154. }
  155. return flag;
  156. }
  157. // GET请求
  158. function tokenAjax(opts, data) {
  159. $.Deferred(function(){});
  160. return new Promise(function(resolve, reject) {
  161. $.ajax({
  162. url: baseUrl + opts.url,
  163. type: opts.type,
  164. dataType: "json",
  165. data: data,
  166. headers:{
  167. "Authorization": "Bearer " + baseTok
  168. },
  169. error: function(XMLHttpRequest, textStatus, errorThrown) {
  170. ajaxErr();
  171. // layer.closeAll();
  172. },
  173. //更新日志列表
  174. success: function(dart) {
  175. if(dart.code == 401){
  176. ajaxErr();
  177. }else if(dart.code == 200 || dart.result == "ok"){
  178. resolve(dart);
  179. }else{
  180. resolve(dart);
  181. if(dart.msg != undefined){
  182. ShowLoading(dart.msg,1);
  183. }
  184. }
  185. }
  186. });
  187. })
  188. }
  189. function ajaxErr(){
  190. ShowLoading("登录已过期,请重新登录!",1);
  191. localStorage.removeItem("Safer_m");
  192. localStorage.removeItem("Safer_n");
  193. localStorage.removeItem("Safer_ol");
  194. localStorage.removeItem("Safer_vd");
  195. localStorage.removeItem("Safer_d");
  196. localStorage.removeItem("Safer_msi");
  197. localStorage.removeItem("ptType");
  198. delCookie("AjaxPay");
  199. delCookie("_YZS_Yu");
  200. delCookie("ylToken");
  201. delCookie("Admin-Token");
  202. delCookie("AjaxNGen");
  203. let _idSrc = window.location.href.split("/page/")[1].split(".html")[0];
  204. top.location.href = projUrl+"/index.html?id="+_idSrc;
  205. }
  206. // POST请求
  207. function tokenPostAjax(opts, data, _yb) {
  208. $.Deferred(function(){});
  209. return new Promise(function(resolve, reject) {
  210. $.ajax({
  211. url: baseUrl + opts.url,
  212. type: opts.type,
  213. dataType: "JSON",
  214. contentType: 'application/json; charset=UTF-8',
  215. data: JSON.stringify(data),
  216. headers:{
  217. "Authorization": "Bearer " + baseTok
  218. },
  219. error: function(XMLHttpRequest, textStatus, errorThrown) {
  220. ajaxErr();
  221. // layer.closeAll();
  222. },
  223. success: function(dart) {
  224. if(dart.code == 401){
  225. ajaxErr();
  226. }else if(dart.code == 200 || dart.result == "ok"){
  227. resolve(dart);
  228. }else{
  229. resolve(dart);
  230. if(dart.msg != undefined){
  231. ShowLoading(dart.msg,1);
  232. }
  233. }
  234. }
  235. });
  236. })
  237. }
  238. // 文件上传请求
  239. function upDateAjax(_data, _ind) {
  240. return new Promise(function(resolve, reject) {
  241. $.ajax({
  242. url: baseUrl+"/Hsws/server/facefile",
  243. type: "POST",
  244. data: _data,
  245. timeout: 15000,
  246. dataType: 'JSON',
  247. cache: false,
  248. processData: false,
  249. contentType: false,
  250. headers:{
  251. "Authorization": "Bearer " + baseTok
  252. },
  253. error: function(XMLHttpRequest, textStatus, errorThrown) {
  254. layer.msg("录入失败!");
  255. layer.close(_ind);
  256. },
  257. //更新日志列表
  258. success: function(res) {
  259. if(res.code == 401){
  260. ajaxErr();
  261. }else{
  262. resolve(res);
  263. }
  264. }
  265. })
  266. })
  267. }
  268. // 鼎衡证书
  269. function dhAjax(opts, data) {
  270. var dhTok = getCookie("dhTok");
  271. $.Deferred(function(){});
  272. return new Promise(function(resolve, reject) {
  273. $.ajax({
  274. url: "https://www.enstation.com" + opts.url,
  275. type: opts.type,
  276. dataType: "json",
  277. data: data,
  278. headers:{
  279. Token: dhTok
  280. },
  281. error: function(XMLHttpRequest, textStatus, errorThrown) {
  282. ajaxErr();
  283. // layer.closeAll();
  284. },
  285. //更新日志列表
  286. success: function(dart) {
  287. if (dart.msg!=undefined&&dart.msg.indexOf("Failed_interceptor") != -1) {
  288. ajaxErr();
  289. }else{
  290. resolve(dart);
  291. }
  292. }
  293. });
  294. })
  295. }
  296. function dhPAjax(opts, data) {
  297. var dhTok = getCookie("dhTok");
  298. $.Deferred(function(){});
  299. return new Promise(function(resolve, reject) {
  300. $.ajax({
  301. url: "https://www.enstation.com" + opts.url,
  302. type: "POST",
  303. dataType: "json",
  304. contentType: "application/json; charset=utf-8",
  305. data: JSON.stringify(data),
  306. headers:{
  307. Token: dhTok
  308. },
  309. error: function(XMLHttpRequest, textStatus, errorThrown) {
  310. ajaxErr();
  311. // layer.closeAll();
  312. },
  313. //更新日志列表
  314. success: function(dart) {
  315. if (dart.msg!=undefined&&dart.msg.indexOf("Failed_interceptor") != -1) {
  316. ajaxErr();
  317. }else{
  318. resolve(dart);
  319. }
  320. }
  321. });
  322. })
  323. }
  324. function dayChange(a, num) {
  325. var timestamp = Date.parse(new Date(a.replace(/-/g, '\/')));
  326. var newTimestamp = timestamp + num * 24 * 60 * 60 * 1000;
  327. var date = new Date(newTimestamp);
  328. if ((new Date() - new Date(date)) <= 0) {
  329. layer.msg((getCookie("setLang") == "English"?"We can't go any further down":"不能再往下翻啦"));
  330. return null;
  331. } else {
  332. return date;
  333. }
  334. }
  335. function getDaysBetween(date1, date2) {
  336. var days = "";
  337. if (date2 == "长期") {
  338. days = "长期"
  339. } else {
  340. var mydate2 = date1.replace(/-/g, '\/');
  341. var startDate = Date.parse(mydate2);
  342. var endDate = Date.parse(date2);
  343. days = parseInt((endDate - startDate) / (1 * 24 * 60 * 60 * 1000) + 1);
  344. }
  345. return days;
  346. };
  347. var x_pi = 3.14159265358979324 * 3000.0 / 180.0;
  348. var pi = 3.14159265358979324;
  349. var a = 6378245.0;
  350. var ee = 0.00669342162296594323;
  351. function transformLon(x, y) {
  352. var ret = 300.0 + x + 2.0 * y + 0.1 * x * x + 0.1 * x * y + 0.1 * Math.sqrt(Math.abs(x));
  353. ret += (20.0 * Math.sin(6.0 * x * pi) + 20.0 * Math.sin(2.0 * x * pi)) * 2.0 / 3.0;
  354. ret += (20.0 * Math.sin(x * pi) + 40.0 * Math.sin(x / 3.0 * pi)) * 2.0 / 3.0;
  355. ret += (150.0 * Math.sin(x / 12.0 * pi) + 300.0 * Math.sin(x / 30.0 * pi)) * 2.0 / 3.0;
  356. return ret;
  357. };
  358. function transformLat(x, y) {
  359. var ret = -100.0 + 2.0 * x + 3.0 * y + 0.2 * y * y + 0.1 * x * y + 0.2 * Math.sqrt(Math.abs(x));
  360. ret += (20.0 * Math.sin(6.0 * x * pi) + 20.0 * Math.sin(2.0 * x * pi)) * 2.0 / 3.0;
  361. ret += (20.0 * Math.sin(y * pi) + 40.0 * Math.sin(y / 3.0 * pi)) * 2.0 / 3.0;
  362. ret += (160.0 * Math.sin(y / 12.0 * pi) + 320 * Math.sin(y * pi / 30.0)) * 2.0 / 3.0;
  363. return ret;
  364. }
  365. function outOfChina(lat, lon) {
  366. if (lon < 72.004 || lon > 137.8347)
  367. return true;
  368. if (lat < 0.8293 || lat > 55.8271)
  369. return true;
  370. return false;
  371. }
  372. function wgsGcj(wgLat, wgLon) {
  373. var point = {};
  374. if (outOfChina(wgLat, wgLon)) {
  375. point.lat = wgLat;
  376. point.lon = wgLon;
  377. return point;
  378. }
  379. var dLat = transformLat(wgLon - 105.0, wgLat - 35.0);
  380. var dLon = transformLon(wgLon - 105.0, wgLat - 35.0);
  381. var radLat = wgLat / 180.0 * pi;
  382. var magic = Math.sin(radLat);
  383. magic = 1 - ee * magic * magic;
  384. var sqrtMagic = Math.sqrt(magic);
  385. dLat = (dLat * 180.0) / ((a * (1 - ee)) / (magic * sqrtMagic) * pi);
  386. dLon = (dLon * 180.0) / (a / sqrtMagic * Math.cos(radLat) * pi);
  387. var lat = wgLat + dLat;
  388. var lon = wgLon + dLon;
  389. point.lat = lat;
  390. point.lon = lon;
  391. return point;
  392. };
  393. function MathRand(){
  394. let chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';
  395. let maxPos = chars.length;
  396. var code = '';
  397. for (let i = 0; i < 6; i++) {
  398. code += chars.charAt(Math.floor(Math.random() * maxPos));
  399. }
  400. return code;
  401. }
  402. function getMile(_speed){
  403. var User = getCookie("_YZS_Yu") !== null?JSON.parse(getCookie("_YZS_Yu")) : null;
  404. let _num = "---",_unit = "km/h";
  405. if(/^[0-9]+.?[0-9]*/.test(_speed)){
  406. if(User != null&&(User.userId == 121 ||User.userId == 119)){
  407. _num = (parseFloat(_speed)*1.852).toFixed(2);
  408. _unit = " 海里/小时";
  409. }else{
  410. _num = parseFloat(_speed).toFixed(2);
  411. _unit = " km/h";
  412. }
  413. }
  414. return [_num,_unit];
  415. }
  416. function getDTime(_time) {
  417. return getTime(_time);
  418. }