Просмотр исходного кода

Merge branch 'master' of http://47.111.81.118:3000/xf15575941817/PC_FiveFollowing

fanghuisheng 4 лет назад
Родитель
Сommit
687acc8cd3
100 измененных файлов с 7514 добавлено и 1 удалено
  1. 1 1
      .env.development
  2. 1 0
      .gitignore
  3. 4 0
      .history/.env_20210715142421.development
  4. 4 0
      .history/.env_20211209144213.development
  5. 4 0
      .history/.env_20211209144220.development
  6. 4 0
      .history/.env_20211209144221.development
  7. 0 0
      .history/dist/index_20211208163216.html
  8. 50 0
      .history/dist/index_20211208163404.html
  9. 29 0
      .history/public/static/config_20210723174527.js
  10. 29 0
      .history/public/static/config_20211208161136.js
  11. 29 0
      .history/public/static/config_20211208161208.js
  12. 29 0
      .history/public/static/config_20211208161932.js
  13. 29 0
      .history/public/static/config_20211208161941.js
  14. 13 0
      .history/src/api/login/user_20210729162857.js
  15. 13 0
      .history/src/api/login/user_20211208173508.js
  16. 13 0
      .history/src/api/login/user_20211208173838.js
  17. 13 0
      .history/src/api/login/user_20211208173857.js
  18. 13 0
      .history/src/api/login/user_20211208174022.js
  19. 13 0
      .history/src/api/login/user_20211208174029.js
  20. 13 0
      .history/src/api/login/user_20211208174726.js
  21. 13 0
      .history/src/api/login/user_20211208175022.js
  22. 13 0
      .history/src/api/login/user_20211208175033.js
  23. 13 0
      .history/src/api/login/user_20211208175412.js
  24. 13 0
      .history/src/api/login/user_20211208175420.js
  25. 13 0
      .history/src/api/login/user_20211208175623.js
  26. 13 0
      .history/src/api/login/user_20211208175627.js
  27. 10 0
      .history/src/api/login/user_20211208180035.js
  28. 10 0
      .history/src/api/login/user_20211208180059.js
  29. 10 0
      .history/src/api/login/user_20211208180110.js
  30. 10 0
      .history/src/api/login/user_20211208180122.js
  31. 10 0
      .history/src/api/login/user_20211208180221.js
  32. 22 0
      .history/src/api/login/user_20211208180313.js
  33. 22 0
      .history/src/api/login/user_20211208180348.js
  34. 22 0
      .history/src/api/login/user_20211208180522.js
  35. 10 0
      .history/src/api/login/user_20211208180923.js
  36. 10 0
      .history/src/api/login/user_20211209113758.js
  37. 10 0
      .history/src/api/login/user_20211209113817.js
  38. 10 0
      .history/src/api/login/user_20211209114124.js
  39. 10 0
      .history/src/api/login/user_20211209114152.js
  40. 10 0
      .history/src/api/login/user_20211209114211.js
  41. 10 0
      .history/src/api/login/user_20211209114225.js
  42. 13 0
      .history/src/api/login/user_20211209114317.js
  43. 10 0
      .history/src/api/login/user_20211209114407.js
  44. 67 0
      .history/src/main_20210803095441.js
  45. 68 0
      .history/src/main_20211209142423.js
  46. 68 0
      .history/src/main_20211209142558.js
  47. 68 0
      .history/src/main_20211209142601.js
  48. 69 0
      .history/src/main_20211209142638.js
  49. 69 0
      .history/src/main_20211209142958.js
  50. 69 0
      .history/src/main_20211209143017.js
  51. 69 0
      .history/src/main_20211209143610.js
  52. 463 0
      .history/src/store/index_20210723102619.js
  53. 464 0
      .history/src/store/index_20211209135012.js
  54. 111 0
      .history/src/utils/request_20210729181608.js
  55. 111 0
      .history/src/utils/request_20211208164559.js
  56. 111 0
      .history/src/utils/request_20211208165117.js
  57. 111 0
      .history/src/utils/request_20211208170148.js
  58. 111 0
      .history/src/utils/request_20211208174447.js
  59. 111 0
      .history/src/utils/request_20211208174749.js
  60. 111 0
      .history/src/utils/request_20211208174755.js
  61. 111 0
      .history/src/utils/request_20211208174807.js
  62. 111 0
      .history/src/utils/request_20211208174812.js
  63. 111 0
      .history/src/utils/request_20211208174949.js
  64. 111 0
      .history/src/utils/request_20211208175056.js
  65. 111 0
      .history/src/utils/request_20211208175230.js
  66. 111 0
      .history/src/utils/request_20211208175307.js
  67. 111 0
      .history/src/utils/request_20211208175452.js
  68. 111 0
      .history/src/utils/request_20211208175510.js
  69. 111 0
      .history/src/utils/request_20211208175654.js
  70. 117 0
      .history/src/utils/request_20211208175750.js
  71. 117 0
      .history/src/utils/request_20211208175758.js
  72. 117 0
      .history/src/utils/request_20211208175840.js
  73. 117 0
      .history/src/utils/request_20211208180037.js
  74. 117 0
      .history/src/utils/request_20211208180833.js
  75. 117 0
      .history/src/utils/request_20211208180844.js
  76. 117 0
      .history/src/utils/request_20211209112916.js
  77. 117 0
      .history/src/utils/request_20211209113336.js
  78. 117 0
      .history/src/utils/request_20211209113831.js
  79. 117 0
      .history/src/utils/request_20211209114028.js
  80. 117 0
      .history/src/utils/request_20211209114033.js
  81. 117 0
      .history/src/utils/request_20211209114431.js
  82. 117 0
      .history/src/utils/request_20211209131131.js
  83. 117 0
      .history/src/utils/request_20211209131246.js
  84. 117 0
      .history/src/utils/request_20211209131254.js
  85. 117 0
      .history/src/utils/request_20211209131258.js
  86. 117 0
      .history/src/utils/request_20211209131412.js
  87. 117 0
      .history/src/utils/request_20211209131458.js
  88. 117 0
      .history/src/utils/request_20211209131545.js
  89. 117 0
      .history/src/utils/request_20211209131551.js
  90. 117 0
      .history/src/utils/request_20211209131556.js
  91. 117 0
      .history/src/utils/request_20211209131854.js
  92. 118 0
      .history/src/utils/request_20211209140352.js
  93. 118 0
      .history/src/utils/request_20211209140402.js
  94. 118 0
      .history/src/utils/request_20211209140415.js
  95. 123 0
      .history/src/utils/request_20211209140937.js
  96. 123 0
      .history/src/utils/request_20211209141044.js
  97. 124 0
      .history/src/utils/request_20211209141102.js
  98. 121 0
      .history/src/utils/request_20211209141107.js
  99. 127 0
      .history/src/utils/request_20211209141228.js
  100. 127 0
      .history/src/utils/request_20211209141249.js

+ 1 - 1
.env.development

@@ -1,4 +1,4 @@
 	// development 开发环境
 	NODE_ENV='development'
 	// 下面的为接口地址。此处/api是我经过webpack设置跨域代理之后的地址
-	VUE_APP_BASE_URL='/'
+	VUE_APP_BASE_URL='https://qhome.usky.cn/fivapi/'

+ 1 - 0
.gitignore

@@ -1,6 +1,7 @@
 .DS_Store
 node_modules
 /dist
+.history
 
 
 # local env files

+ 4 - 0
.history/.env_20210715142421.development

@@ -0,0 +1,4 @@
+	// development 开发环境
+	NODE_ENV='development'
+	// 下面的为接口地址。此处/api是我经过webpack设置跨域代理之后的地址
+	VUE_APP_BASE_URL='/'

+ 4 - 0
.history/.env_20211209144213.development

@@ -0,0 +1,4 @@
+	// development 开发环境
+	NODE_ENV='development'
+	// 下面的为接口地址。此处/api是我经过webpack设置跨域代理之后的地址
+	VUE_APP_BASE_URL=''

+ 4 - 0
.history/.env_20211209144220.development

@@ -0,0 +1,4 @@
+	// development 开发环境
+	NODE_ENV='development'
+	// 下面的为接口地址。此处/api是我经过webpack设置跨域代理之后的地址
+	VUE_APP_BASE_URL='https://qhome.usky.cn/fivapi/'

+ 4 - 0
.history/.env_20211209144221.development

@@ -0,0 +1,4 @@
+	// development 开发环境
+	NODE_ENV='development'
+	// 下面的为接口地址。此处/api是我经过webpack设置跨域代理之后的地址
+	VUE_APP_BASE_URL='https://qhome.usky.cn/fivapi/'

Разница между файлами не показана из-за своего большого размера
+ 0 - 0
.history/dist/index_20211208163216.html


+ 50 - 0
.history/dist/index_20211208163404.html

@@ -0,0 +1,50 @@
+<!DOCTYPE html>
+<html lang="">
+
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width,initial-scale=1">
+    <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
+    <link rel="icon" href="/vuefiv/favicon.ico">
+    <script src="https://webapi.amap.com/maps?v=1.4.15&key=8e266e1ac2ad2383c7773ff504ac248f"></script>
+    <script src="//webapi.amap.com/ui/1.1/main.js?v=1.1.1"></script>
+    <title>vue-webtopo-svgeditor</title>
+    <link href="/vuefiv/css/chunk-193abfa7.bf1b487f.css" rel="prefetch">
+    <link href="/vuefiv/css/chunk-1a12e59e.5c5000b0.css" rel="prefetch">
+    <link href="/vuefiv/css/chunk-343b67ea.9c79e271.css" rel="prefetch">
+    <link href="/vuefiv/css/chunk-6473d6f2.76cb8e82.css" rel="prefetch">
+    <link href="/vuefiv/css/chunk-6979e8ba.3051ef51.css" rel="prefetch">
+    <link href="/vuefiv/css/chunk-6a340902.2fcbb280.css" rel="prefetch">
+    <link href="/vuefiv/css/chunk-7a7b60f0.73721275.css" rel="prefetch">
+    <link href="/vuefiv/css/chunk-9028f93c.6d18b382.css" rel="prefetch">
+    <link href="/vuefiv/css/chunk-9decf180.73fd9542.css" rel="prefetch">
+    <link href="/vuefiv/js/chunk-193abfa7.439084ba.js" rel="prefetch">
+    <link href="/vuefiv/js/chunk-1a12e59e.44e404a6.js" rel="prefetch">
+    <link href="/vuefiv/js/chunk-2d0c849f.caa7f6d6.js" rel="prefetch">
+    <link href="/vuefiv/js/chunk-2d0de01e.629897da.js" rel="prefetch">
+    <link href="/vuefiv/js/chunk-2d21dc42.e1d12e58.js" rel="prefetch">
+    <link href="/vuefiv/js/chunk-343b67ea.f5a37e84.js" rel="prefetch">
+    <link href="/vuefiv/js/chunk-6473d6f2.1b807bef.js" rel="prefetch">
+    <link href="/vuefiv/js/chunk-6979e8ba.c5c5ee90.js" rel="prefetch">
+    <link href="/vuefiv/js/chunk-6a340902.26e57ae0.js" rel="prefetch">
+    <link href="/vuefiv/js/chunk-7a7b60f0.b18bbbec.js" rel="prefetch">
+    <link href="/vuefiv/js/chunk-9028f93c.8e82f365.js" rel="prefetch">
+    <link href="/vuefiv/js/chunk-9decf180.f7dee73f.js" rel="prefetch">
+    <link href="/vuefiv/js/chunk-e13c709c.66829963.js" rel="prefetch">
+    <link href="/vuefiv/css/app.d1963a80.css" rel="preload" as="style">
+    <link href="/vuefiv/css/chunk-vendors.f77d1bde.css" rel="preload" as="style">
+    <link href="/vuefiv/js/app.45662fa4.js" rel="preload" as="script">
+    <link href="/vuefiv/js/chunk-vendors.1a81e3bb.js" rel="preload" as="script">
+    <link href="/vuefiv/css/chunk-vendors.f77d1bde.css" rel="stylesheet">
+    <link href="/vuefiv/css/app.d1963a80.css" rel="stylesheet">
+</head>
+
+<body><noscript><strong>We're sorry but vue-webtopo-svgeditor doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript>
+    <div id="app"></div>
+    <script src="./static/config.js"></script>
+    <script src="/vuefiv/js/chunk-vendors.1a81e3bb.js"></script>
+    <script src="/vuefiv/js/app.45662fa4.js"></script>
+</body>
+
+</html>

+ 29 - 0
.history/public/static/config_20210723174527.js

@@ -0,0 +1,29 @@
+// api 请求路径
+var PLATFROM_CONFIG = {};
+// PLATFROM_CONFIG.baseUrl = "http://172.16.120.229:8010/" //杨强本地
+// PLATFROM_CONFIG.baseUrl = "http://172.16.1.196:8010/"  //超博本地
+
+PLATFROM_CONFIG.baseUrl = "https://wx.ewoogi.com/api" //线上
+PLATFROM_CONFIG.fileUrl = "https://wx.ewoogi.com/file/" //xlsx文件访问路径
+
+// 本地json文件请求路径
+PLATFROM_CONFIG.Interface = "/vuefiv/InterfaceReturn.json"
+PLATFROM_CONFIG.ione = "/vuefiv/1.json"
+
+
+
+// 当前站点 siteId 信息存储
+// var PLATFROM_SITEID = {};
+// PLATFROM_SITEID.id = 0;
+
+
+//alarming WEBSOCKET
+// let userInfo = window.localStorage.getItem("key");
+// var PLATFROM_WEBSOCKET = {};
+// PLATFROM_WEBSOCKET.wsUrl = `ws://172.16.120.246:8081/uskyWS?${userInfo}`
+
+
+//iframe 请求路径
+//http://www.thingjs.com/s/ef7ee6a73896c01bda77e679?params=105b0f77fd24654d4eebc434e9 初始路径http://172.16.120.246:9000/
+// var PLATFROM_IFRAME = {};
+// PLATFROM_IFRAME.iframeUrl = `http://www.thingjs.com/s/ef7ee6a73896c01bda77e679?params=105b0f77fd24654d4eebc434e9`

+ 29 - 0
.history/public/static/config_20211208161136.js

@@ -0,0 +1,29 @@
+// api 请求路径
+var PLATFROM_CONFIG = {};
+// PLATFROM_CONFIG.baseUrl = "http://172.16.120.229:8010/" //杨强本地
+// PLATFROM_CONFIG.baseUrl = "http://172.16.1.196:8010/"  //超博本地
+
+PLATFROM_CONFIG.baseUrl = "https://qhome.usky.cn/api" //线上
+PLATFROM_CONFIG.fileUrl = "https://qhome.usky.cn/file/" //xlsx文件访问路径
+
+// 本地json文件请求路径
+PLATFROM_CONFIG.Interface = "/vuefiv/InterfaceReturn.json"
+PLATFROM_CONFIG.ione = "/vuefiv/1.json"
+
+
+
+// 当前站点 siteId 信息存储
+// var PLATFROM_SITEID = {};
+// PLATFROM_SITEID.id = 0;
+
+
+//alarming WEBSOCKET
+// let userInfo = window.localStorage.getItem("key");
+// var PLATFROM_WEBSOCKET = {};
+// PLATFROM_WEBSOCKET.wsUrl = `ws://172.16.120.246:8081/uskyWS?${userInfo}`
+
+
+//iframe 请求路径
+//http://www.thingjs.com/s/ef7ee6a73896c01bda77e679?params=105b0f77fd24654d4eebc434e9 初始路径http://172.16.120.246:9000/
+// var PLATFROM_IFRAME = {};
+// PLATFROM_IFRAME.iframeUrl = `http://www.thingjs.com/s/ef7ee6a73896c01bda77e679?params=105b0f77fd24654d4eebc434e9`

+ 29 - 0
.history/public/static/config_20211208161208.js

@@ -0,0 +1,29 @@
+// api 请求路径
+var PLATFROM_CONFIG = {};
+// PLATFROM_CONFIG.baseUrl = "http://172.16.120.229:8010/" //杨强本地
+// PLATFROM_CONFIG.baseUrl = "http://172.16.1.196:8010/"  //超博本地
+
+PLATFROM_CONFIG.baseUrl = "https://wx.ewoogi.com/api" //线上
+PLATFROM_CONFIG.fileUrl = "https://wx.ewoogi.com/file/" //xlsx文件访问路径
+
+// 本地json文件请求路径
+PLATFROM_CONFIG.Interface = "/vuefiv/InterfaceReturn.json"
+PLATFROM_CONFIG.ione = "/vuefiv/1.json"
+
+
+
+// 当前站点 siteId 信息存储
+// var PLATFROM_SITEID = {};
+// PLATFROM_SITEID.id = 0;
+
+
+//alarming WEBSOCKET
+// let userInfo = window.localStorage.getItem("key");
+// var PLATFROM_WEBSOCKET = {};
+// PLATFROM_WEBSOCKET.wsUrl = `ws://172.16.120.246:8081/uskyWS?${userInfo}`
+
+
+//iframe 请求路径
+//http://www.thingjs.com/s/ef7ee6a73896c01bda77e679?params=105b0f77fd24654d4eebc434e9 初始路径http://172.16.120.246:9000/
+// var PLATFROM_IFRAME = {};
+// PLATFROM_IFRAME.iframeUrl = `http://www.thingjs.com/s/ef7ee6a73896c01bda77e679?params=105b0f77fd24654d4eebc434e9`

+ 29 - 0
.history/public/static/config_20211208161932.js

@@ -0,0 +1,29 @@
+// api 请求路径
+var PLATFROM_CONFIG = {};
+// PLATFROM_CONFIG.baseUrl = "http://172.16.120.229:8010/" //杨强本地
+// PLATFROM_CONFIG.baseUrl = "http://172.16.1.196:8010/"  //超博本地
+
+PLATFROM_CONFIG.baseUrl = "https://qhome.usky.cn/fivapi/" //线上
+PLATFROM_CONFIG.fileUrl = "https://wx.ewoogi.com/file/" //xlsx文件访问路径
+
+// 本地json文件请求路径
+PLATFROM_CONFIG.Interface = "/vuefiv/InterfaceReturn.json"
+PLATFROM_CONFIG.ione = "/vuefiv/1.json"
+
+
+
+// 当前站点 siteId 信息存储
+// var PLATFROM_SITEID = {};
+// PLATFROM_SITEID.id = 0;
+
+
+//alarming WEBSOCKET
+// let userInfo = window.localStorage.getItem("key");
+// var PLATFROM_WEBSOCKET = {};
+// PLATFROM_WEBSOCKET.wsUrl = `ws://172.16.120.246:8081/uskyWS?${userInfo}`
+
+
+//iframe 请求路径
+//http://www.thingjs.com/s/ef7ee6a73896c01bda77e679?params=105b0f77fd24654d4eebc434e9 初始路径http://172.16.120.246:9000/
+// var PLATFROM_IFRAME = {};
+// PLATFROM_IFRAME.iframeUrl = `http://www.thingjs.com/s/ef7ee6a73896c01bda77e679?params=105b0f77fd24654d4eebc434e9`

+ 29 - 0
.history/public/static/config_20211208161941.js

@@ -0,0 +1,29 @@
+// api 请求路径
+var PLATFROM_CONFIG = {};
+// PLATFROM_CONFIG.baseUrl = "http://172.16.120.229:8010/" //杨强本地
+// PLATFROM_CONFIG.baseUrl = "http://172.16.1.196:8010/"  //超博本地
+
+PLATFROM_CONFIG.baseUrl = "https://qhome.usky.cn/fivapi/" //线上
+PLATFROM_CONFIG.fileUrl = "https://qhome.usky.cn/file/" //xlsx文件访问路径
+
+// 本地json文件请求路径
+PLATFROM_CONFIG.Interface = "/vuefiv/InterfaceReturn.json"
+PLATFROM_CONFIG.ione = "/vuefiv/1.json"
+
+
+
+// 当前站点 siteId 信息存储
+// var PLATFROM_SITEID = {};
+// PLATFROM_SITEID.id = 0;
+
+
+//alarming WEBSOCKET
+// let userInfo = window.localStorage.getItem("key");
+// var PLATFROM_WEBSOCKET = {};
+// PLATFROM_WEBSOCKET.wsUrl = `ws://172.16.120.246:8081/uskyWS?${userInfo}`
+
+
+//iframe 请求路径
+//http://www.thingjs.com/s/ef7ee6a73896c01bda77e679?params=105b0f77fd24654d4eebc434e9 初始路径http://172.16.120.246:9000/
+// var PLATFROM_IFRAME = {};
+// PLATFROM_IFRAME.iframeUrl = `http://www.thingjs.com/s/ef7ee6a73896c01bda77e679?params=105b0f77fd24654d4eebc434e9`

+ 13 - 0
.history/src/api/login/user_20210729162857.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+export default {
+
+    // 站点总数数据请求
+    login_api(params) {
+        return request({
+            url: `/user/login`,
+            method: 'GET',
+            params: params
+        })
+    },
+}

+ 13 - 0
.history/src/api/login/user_20211208173508.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+export default {
+
+    // 站点总数数据请求
+    login_api(params) {
+        return request({
+            url: `/user/login`,
+            method: 'post',
+            data: params
+        })
+    },
+}

+ 13 - 0
.history/src/api/login/user_20211208173838.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+export default {
+
+    // 站点总数数据请求
+    login_api(data) {
+        return request({
+            url: `/user/login`,
+            method: 'post',
+            data
+        })
+    },
+}

+ 13 - 0
.history/src/api/login/user_20211208173857.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+export default {
+
+    // 站点总数数据请求
+    login_api(params) {
+        return request({
+            url: `/user/login`,
+            method: 'post',
+            data: params
+        })
+    },
+}

+ 13 - 0
.history/src/api/login/user_20211208174022.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+export default {
+
+    // 站点总数数据请求
+    login_api(params) {
+        return request({
+            url: `/login`,
+            method: 'post',
+            data: params
+        })
+    },
+}

+ 13 - 0
.history/src/api/login/user_20211208174029.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+export default {
+
+    // 站点总数数据请求
+    login_api(data) {
+        return request({
+            url: `/login`,
+            method: 'post',
+            data
+        })
+    },
+}

+ 13 - 0
.history/src/api/login/user_20211208174726.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+export default {
+
+    // 站点总数数据请求
+    login_api(params) {
+        return request({
+            url: `/login`,
+            method: 'post',
+            data: params
+        })
+    },
+}

+ 13 - 0
.history/src/api/login/user_20211208175022.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+export default {
+
+    // 站点总数数据请求
+    login_api(data) {
+        return request({
+            url: `/login`,
+            method: 'post',
+            data
+        })
+    },
+}

+ 13 - 0
.history/src/api/login/user_20211208175033.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+export default {
+
+    // 站点总数数据请求
+    login_api(data) {
+        return request({
+            url: `/login`,
+            method: 'post',
+            data
+        })
+    },
+}

+ 13 - 0
.history/src/api/login/user_20211208175412.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+export default {
+
+    // 站点总数数据请求
+    login_api(data) {
+        return request({
+            url: `/login`,
+            method: 'post',
+            data: data
+        })
+    },
+}

+ 13 - 0
.history/src/api/login/user_20211208175420.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+export default {
+
+    // 站点总数数据请求
+    login_api(data) {
+        return request({
+            url: `/login`,
+            method: 'post',
+            data
+        })
+    },
+}

+ 13 - 0
.history/src/api/login/user_20211208175623.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+export default {
+
+    // 站点总数数据请求
+    async function login_api(data) {
+        return request({
+            url: `/login`,
+            method: 'post',
+            data
+        })
+    },
+}

+ 13 - 0
.history/src/api/login/user_20211208175627.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+export default {
+
+    // 站点总数数据请求
+    login_api(data) {
+        return request({
+            url: `/login`,
+            method: 'post',
+            data
+        })
+    },
+}

+ 10 - 0
.history/src/api/login/user_20211208180035.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+
+export async function login_api(data) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data,
+    })
+}

+ 10 - 0
.history/src/api/login/user_20211208180059.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+
+export async function login_api(data) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data,
+    })
+}

+ 10 - 0
.history/src/api/login/user_20211208180110.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+
+export function login_api(data) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data,
+    })
+}

+ 10 - 0
.history/src/api/login/user_20211208180122.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+
+export async function login_api(data) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data,
+    })
+}

+ 10 - 0
.history/src/api/login/user_20211208180221.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+
+export function login_api(data) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data,
+    })
+}

+ 22 - 0
.history/src/api/login/user_20211208180313.js

@@ -0,0 +1,22 @@
+import request from '@/utils/request'
+
+
+export async function login_api(data) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data,
+    })
+}
+
+export default {
+
+    // 站点总数数据请求
+    login_api(data) {
+        return request({
+            url: `/login`,
+            method: 'post',
+            data
+        })
+    },
+}

+ 22 - 0
.history/src/api/login/user_20211208180348.js

@@ -0,0 +1,22 @@
+import request from '@/utils/request'
+
+
+export function login_api(data) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data,
+    })
+}
+
+export default {
+
+    // 站点总数数据请求
+    login_api(data) {
+        return request({
+            url: `/login`,
+            method: 'post',
+            data
+        })
+    },
+}

+ 22 - 0
.history/src/api/login/user_20211208180522.js

@@ -0,0 +1,22 @@
+import request from '@/utils/request'
+
+
+export function login_api(data) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data,
+    })
+}
+
+// export default {
+
+//     // 站点总数数据请求
+//     login_api(data) {
+//         return request({
+//             url: `/login`,
+//             method: 'post',
+//             data
+//         })
+//     },
+// }

+ 10 - 0
.history/src/api/login/user_20211208180923.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+
+export function login_api(data) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data,
+    })
+}

+ 10 - 0
.history/src/api/login/user_20211209113758.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+
+export function login_api(promise) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data: promise,
+    })
+}

+ 10 - 0
.history/src/api/login/user_20211209113817.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+
+export function login_api(data) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data,
+    })
+}

+ 10 - 0
.history/src/api/login/user_20211209114124.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+
+export function login_api(promise) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data: JSON.stringify(promise),
+    })
+}

+ 10 - 0
.history/src/api/login/user_20211209114152.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+
+export function login_api(promise) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data,
+    })
+}

+ 10 - 0
.history/src/api/login/user_20211209114211.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+
+export function login_api(data) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data,
+    })
+}

+ 10 - 0
.history/src/api/login/user_20211209114225.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+
+export function login_api(data) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data: data,
+    })
+}

+ 13 - 0
.history/src/api/login/user_20211209114317.js

@@ -0,0 +1,13 @@
+import request from '@/utils/request'
+
+
+export function login_api(username, password) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data: {
+            username: username,
+            password: password
+        },
+    })
+}

+ 10 - 0
.history/src/api/login/user_20211209114407.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+
+export function login_api(data) {
+    return request({
+        url: '/login',
+        method: 'POST',
+        data,
+    })
+}

+ 67 - 0
.history/src/main_20210803095441.js

@@ -0,0 +1,67 @@
+import { createApp } from 'vue/dist/vue.esm-bundler.js';
+import Antd from 'ant-design-vue';
+import App from './App.vue';
+import 'ant-design-vue/dist/antd.css';
+import UCore from './utils/UCore.js';
+import './assets/css/index.css';
+import router from './router';
+import Vuex from 'vuex'
+import store from './store/index.js';
+import axios from 'axios';
+import ElementPlus from 'element-plus';
+import 'element-plus/lib/theme-chalk/index.css';
+import 'dayjs/locale/zh-cn';
+import locale from 'element-plus/lib/locale/lang/zh-cn';
+//引入rem字体配置
+import '@/assets/js/flexible.js';
+//  引入字体样式
+import '@/assets/fonts/font.css';
+import * as echarts from 'echarts'
+import 'echarts/lib/component/tooltip';
+import 'echarts/lib/component/title';
+import 'echarts/lib/component/legend';
+import { ElMessage } from "element-plus";
+
+const app = createApp(App);
+
+app.config.globalProperties.$UCore = UCore;
+app.config.globalProperties.$axios = axios;
+
+app.use(router).use(store).use(ElementPlus, { locale }).use(Vuex).use(echarts).use(Antd).mount('#app');
+
+store.commit("getTimeAll");
+
+
+/*路由守卫*/
+router.beforeEach((to, from, next) => {
+    /* 路由发生变化修改页面title */
+    if (to.meta.title) {
+        document.title = to.meta.title
+    }
+
+    //如果目标路由为登陆时,恢复用户原始状态
+    if (to.path === '/') {
+        sessionStorage.removeItem("userInfo");
+        document.getElementById('routers').style.display = "none"
+    } else {
+        document.getElementById('routers').style.display = "block"
+    }
+    if (to.path !== '/') {
+        if (sessionStorage.getItem('userInfo') === null) {
+            next({ path: '/' })
+            document.getElementById('routers').style.display = "none"
+            setTimeout(() => {
+                ElMessage.warning({
+                    message: '请登录后重试!',
+                    type: 'warning'
+                });
+            }, 100);
+
+        } else {
+            next();
+        }
+    } else {
+        //路由的next必须存在,否则无法进入下一页
+        next()
+    }
+})

+ 68 - 0
.history/src/main_20211209142423.js

@@ -0,0 +1,68 @@
+import { createApp } from 'vue/dist/vue.esm-bundler.js';
+import Antd from 'ant-design-vue';
+import App from './App.vue';
+import 'ant-design-vue/dist/antd.css';
+import UCore from './utils/UCore.js';
+import './assets/css/index.css';
+import router from './router';
+import Vuex from 'vuex'
+import store from './store/index.js';
+import axios from 'axios';
+import ElementPlus from 'element-plus';
+import 'element-plus/lib/theme-chalk/index.css';
+import 'dayjs/locale/zh-cn';
+import locale from 'element-plus/lib/locale/lang/zh-cn';
+//引入rem字体配置
+import '@/assets/js/flexible.js';
+//  引入字体样式
+import '@/assets/fonts/font.css';
+import * as echarts from 'echarts'
+import 'echarts/lib/component/tooltip';
+import 'echarts/lib/component/title';
+import 'echarts/lib/component/legend';
+import { ElMessage } from "element-plus";
+
+const app = createApp(App);
+
+app.config.globalProperties.$UCore = UCore;
+app.config.globalProperties.$axios = axios;
+
+app.use(router).use(store).use(ElementPlus, { locale }).use(Vuex).use(echarts).use(Antd).mount('#app');
+
+store.commit("getTimeAll");
+
+
+/*路由守卫*/
+router.beforeEach((to, from, next) => {
+    /* 路由发生变化修改页面title */
+    if (to.meta.title) {
+        document.title = to.meta.title
+    }
+
+    //如果目标路由为登陆时,恢复用户原始状态
+    if (to.path === '/') {
+        sessionStorage.removeItem("userInfo");
+        sessionStorage.removeItem("assToken");
+        document.getElementById('routers').style.display = "none"
+    } else {
+        document.getElementById('routers').style.display = "block"
+    }
+    if (to.path !== '/') {
+        if (sessionStorage.getItem('userInfo') === null) {
+            next({ path: '/' })
+            document.getElementById('routers').style.display = "none"
+            setTimeout(() => {
+                ElMessage.warning({
+                    message: '请登录后重试!',
+                    type: 'warning'
+                });
+            }, 100);
+
+        } else {
+            next();
+        }
+    } else {
+        //路由的next必须存在,否则无法进入下一页
+        next()
+    }
+})

+ 68 - 0
.history/src/main_20211209142558.js

@@ -0,0 +1,68 @@
+import { createApp } from 'vue/dist/vue.esm-bundler.js';
+import Antd from 'ant-design-vue';
+import App from './App.vue';
+import 'ant-design-vue/dist/antd.css';
+import UCore from './utils/UCore.js';
+import './assets/css/index.css';
+import router from './router';
+import Vuex from 'vuex'
+import store from './store/index.js';
+import axios from 'axios';
+import ElementPlus from 'element-plus';
+import 'element-plus/lib/theme-chalk/index.css';
+import 'dayjs/locale/zh-cn';
+import locale from 'element-plus/lib/locale/lang/zh-cn';
+//引入rem字体配置
+import '@/assets/js/flexible.js';
+//  引入字体样式
+import '@/assets/fonts/font.css';
+import * as echarts from 'echarts'
+import 'echarts/lib/component/tooltip';
+import 'echarts/lib/component/title';
+import 'echarts/lib/component/legend';
+import { ElMessage } from "element-plus";
+
+const app = createApp(App);
+
+app.config.globalProperties.$UCore = UCore;
+app.config.globalProperties.$axios = axios;
+
+app.use(router).use(store).use(ElementPlus, { locale }).use(Vuex).use(echarts).use(Antd).mount('#app');
+
+store.commit("getTimeAll");
+
+
+/*路由守卫*/
+router.beforeEach((to, from, next) => {
+    /* 路由发生变化修改页面title */
+    if (to.meta.title) {
+        document.title = to.meta.title
+    }
+
+    //如果目标路由为登陆时,恢复用户原始状态
+    if (to.path === '/') {
+        sessionStorage.removeItem("userInfo");
+        localStorage.removeItem("assToken");
+        document.getElementById('routers').style.display = "none"
+    } else {
+        document.getElementById('routers').style.display = "block"
+    }
+    if (to.path !== '/') {
+        if (sessionStorage.getItem('userInfo') === null) {
+            next({ path: '/' })
+            document.getElementById('routers').style.display = "none"
+            setTimeout(() => {
+                ElMessage.warning({
+                    message: '请登录后重试!',
+                    type: 'warning'
+                });
+            }, 100);
+
+        } else {
+            next();
+        }
+    } else {
+        //路由的next必须存在,否则无法进入下一页
+        next()
+    }
+})

+ 68 - 0
.history/src/main_20211209142601.js

@@ -0,0 +1,68 @@
+import { createApp } from 'vue/dist/vue.esm-bundler.js';
+import Antd from 'ant-design-vue';
+import App from './App.vue';
+import 'ant-design-vue/dist/antd.css';
+import UCore from './utils/UCore.js';
+import './assets/css/index.css';
+import router from './router';
+import Vuex from 'vuex'
+import store from './store/index.js';
+import axios from 'axios';
+import ElementPlus from 'element-plus';
+import 'element-plus/lib/theme-chalk/index.css';
+import 'dayjs/locale/zh-cn';
+import locale from 'element-plus/lib/locale/lang/zh-cn';
+//引入rem字体配置
+import '@/assets/js/flexible.js';
+//  引入字体样式
+import '@/assets/fonts/font.css';
+import * as echarts from 'echarts'
+import 'echarts/lib/component/tooltip';
+import 'echarts/lib/component/title';
+import 'echarts/lib/component/legend';
+import { ElMessage } from "element-plus";
+
+const app = createApp(App);
+
+app.config.globalProperties.$UCore = UCore;
+app.config.globalProperties.$axios = axios;
+
+app.use(router).use(store).use(ElementPlus, { locale }).use(Vuex).use(echarts).use(Antd).mount('#app');
+
+store.commit("getTimeAll");
+
+
+/*路由守卫*/
+router.beforeEach((to, from, next) => {
+    /* 路由发生变化修改页面title */
+    if (to.meta.title) {
+        document.title = to.meta.title
+    }
+
+    //如果目标路由为登陆时,恢复用户原始状态
+    if (to.path === '/') {
+        sessionStorage.removeItem("userInfo");
+        localStorage.removeItem("assToken");
+        document.getElementById('routers').style.display = "none"
+    } else {
+        document.getElementById('routers').style.display = "block"
+    }
+    if (to.path !== '/') {
+        if (sessionStorage.getItem('userInfo') === null) {
+            next({ path: '/' })
+            document.getElementById('routers').style.display = "none"
+            setTimeout(() => {
+                ElMessage.warning({
+                    message: '请登录后重试!',
+                    type: 'warning'
+                });
+            }, 100);
+
+        } else {
+            next();
+        }
+    } else {
+        //路由的next必须存在,否则无法进入下一页
+        next()
+    }
+})

+ 69 - 0
.history/src/main_20211209142638.js

@@ -0,0 +1,69 @@
+import { createApp } from 'vue/dist/vue.esm-bundler.js';
+import Antd from 'ant-design-vue';
+import App from './App.vue';
+import 'ant-design-vue/dist/antd.css';
+import UCore from './utils/UCore.js';
+import './assets/css/index.css';
+import router from './router';
+import Vuex from 'vuex'
+import store from './store/index.js';
+import axios from 'axios';
+import ElementPlus from 'element-plus';
+import 'element-plus/lib/theme-chalk/index.css';
+import 'dayjs/locale/zh-cn';
+import locale from 'element-plus/lib/locale/lang/zh-cn';
+//引入rem字体配置
+import '@/assets/js/flexible.js';
+//  引入字体样式
+import '@/assets/fonts/font.css';
+import * as echarts from 'echarts'
+import 'echarts/lib/component/tooltip';
+import 'echarts/lib/component/title';
+import 'echarts/lib/component/legend';
+import { ElMessage } from "element-plus";
+
+const app = createApp(App);
+
+app.config.globalProperties.$UCore = UCore;
+app.config.globalProperties.$axios = axios;
+
+app.use(router).use(store).use(ElementPlus, { locale }).use(Vuex).use(echarts).use(Antd).mount('#app');
+
+store.commit("getTimeAll");
+
+
+/*路由守卫*/
+router.beforeEach((to, from, next) => {
+    /* 路由发生变化修改页面title */
+    if (to.meta.title) {
+        document.title = to.meta.title
+    }
+
+    //如果目标路由为登陆时,恢复用户原始状态
+    if (to.path === '/') {
+        sessionStorage.removeItem("userInfo");
+        console.log(localStorage)
+        localStorage.removeItem("assToken");
+        document.getElementById('routers').style.display = "none"
+    } else {
+        document.getElementById('routers').style.display = "block"
+    }
+    if (to.path !== '/') {
+        if (sessionStorage.getItem('userInfo') === null) {
+            next({ path: '/' })
+            document.getElementById('routers').style.display = "none"
+            setTimeout(() => {
+                ElMessage.warning({
+                    message: '请登录后重试!',
+                    type: 'warning'
+                });
+            }, 100);
+
+        } else {
+            next();
+        }
+    } else {
+        //路由的next必须存在,否则无法进入下一页
+        next()
+    }
+})

+ 69 - 0
.history/src/main_20211209142958.js

@@ -0,0 +1,69 @@
+import { createApp } from 'vue/dist/vue.esm-bundler.js';
+import Antd from 'ant-design-vue';
+import App from './App.vue';
+import 'ant-design-vue/dist/antd.css';
+import UCore from './utils/UCore.js';
+import './assets/css/index.css';
+import router from './router';
+import Vuex from 'vuex'
+import store from './store/index.js';
+import axios from 'axios';
+import ElementPlus from 'element-plus';
+import 'element-plus/lib/theme-chalk/index.css';
+import 'dayjs/locale/zh-cn';
+import locale from 'element-plus/lib/locale/lang/zh-cn';
+//引入rem字体配置
+import '@/assets/js/flexible.js';
+//  引入字体样式
+import '@/assets/fonts/font.css';
+import * as echarts from 'echarts'
+import 'echarts/lib/component/tooltip';
+import 'echarts/lib/component/title';
+import 'echarts/lib/component/legend';
+import { ElMessage } from "element-plus";
+
+const app = createApp(App);
+
+app.config.globalProperties.$UCore = UCore;
+app.config.globalProperties.$axios = axios;
+
+app.use(router).use(store).use(ElementPlus, { locale }).use(Vuex).use(echarts).use(Antd).mount('#app');
+
+store.commit("getTimeAll");
+
+
+/*路由守卫*/
+router.beforeEach((to, from, next) => {
+    /* 路由发生变化修改页面title */
+    if (to.meta.title) {
+        document.title = to.meta.title
+    }
+
+    //如果目标路由为登陆时,恢复用户原始状态
+    if (to.path === '/') {
+        console.log(localStorage)
+        localStorage.removeItem("assToken");
+        sessionStorage.removeItem("userInfo");
+        document.getElementById('routers').style.display = "none"
+    } else {
+        document.getElementById('routers').style.display = "block"
+    }
+    if (to.path !== '/') {
+        if (sessionStorage.getItem('userInfo') === null) {
+            next({ path: '/' })
+            document.getElementById('routers').style.display = "none"
+            setTimeout(() => {
+                ElMessage.warning({
+                    message: '请登录后重试!',
+                    type: 'warning'
+                });
+            }, 100);
+
+        } else {
+            next();
+        }
+    } else {
+        //路由的next必须存在,否则无法进入下一页
+        next()
+    }
+})

+ 69 - 0
.history/src/main_20211209143017.js

@@ -0,0 +1,69 @@
+import { createApp } from 'vue/dist/vue.esm-bundler.js';
+import Antd from 'ant-design-vue';
+import App from './App.vue';
+import 'ant-design-vue/dist/antd.css';
+import UCore from './utils/UCore.js';
+import './assets/css/index.css';
+import router from './router';
+import Vuex from 'vuex'
+import store from './store/index.js';
+import axios from 'axios';
+import ElementPlus from 'element-plus';
+import 'element-plus/lib/theme-chalk/index.css';
+import 'dayjs/locale/zh-cn';
+import locale from 'element-plus/lib/locale/lang/zh-cn';
+//引入rem字体配置
+import '@/assets/js/flexible.js';
+//  引入字体样式
+import '@/assets/fonts/font.css';
+import * as echarts from 'echarts'
+import 'echarts/lib/component/tooltip';
+import 'echarts/lib/component/title';
+import 'echarts/lib/component/legend';
+import { ElMessage } from "element-plus";
+
+const app = createApp(App);
+
+app.config.globalProperties.$UCore = UCore;
+app.config.globalProperties.$axios = axios;
+
+app.use(router).use(store).use(ElementPlus, { locale }).use(Vuex).use(echarts).use(Antd).mount('#app');
+
+store.commit("getTimeAll");
+
+
+/*路由守卫*/
+router.beforeEach((to, from, next) => {
+    /* 路由发生变化修改页面title */
+    if (to.meta.title) {
+        document.title = to.meta.title
+    }
+
+    //如果目标路由为登陆时,恢复用户原始状态
+    if (to.path === '/') {
+        console.log(sessionStorage)
+        sessionStorage.removeItem("assToken");
+        sessionStorage.removeItem("userInfo");
+        document.getElementById('routers').style.display = "none"
+    } else {
+        document.getElementById('routers').style.display = "block"
+    }
+    if (to.path !== '/') {
+        if (sessionStorage.getItem('userInfo') === null) {
+            next({ path: '/' })
+            document.getElementById('routers').style.display = "none"
+            setTimeout(() => {
+                ElMessage.warning({
+                    message: '请登录后重试!',
+                    type: 'warning'
+                });
+            }, 100);
+
+        } else {
+            next();
+        }
+    } else {
+        //路由的next必须存在,否则无法进入下一页
+        next()
+    }
+})

+ 69 - 0
.history/src/main_20211209143610.js

@@ -0,0 +1,69 @@
+import { createApp } from 'vue/dist/vue.esm-bundler.js';
+import Antd from 'ant-design-vue';
+import App from './App.vue';
+import 'ant-design-vue/dist/antd.css';
+import UCore from './utils/UCore.js';
+import './assets/css/index.css';
+import router from './router';
+import Vuex from 'vuex'
+import store from './store/index.js';
+import axios from 'axios';
+import ElementPlus from 'element-plus';
+import 'element-plus/lib/theme-chalk/index.css';
+import 'dayjs/locale/zh-cn';
+import locale from 'element-plus/lib/locale/lang/zh-cn';
+//引入rem字体配置
+import '@/assets/js/flexible.js';
+//  引入字体样式
+import '@/assets/fonts/font.css';
+import * as echarts from 'echarts'
+import 'echarts/lib/component/tooltip';
+import 'echarts/lib/component/title';
+import 'echarts/lib/component/legend';
+import { ElMessage } from "element-plus";
+import { removeToken } from './utils/auth';
+
+const app = createApp(App);
+
+app.config.globalProperties.$UCore = UCore;
+app.config.globalProperties.$axios = axios;
+
+app.use(router).use(store).use(ElementPlus, { locale }).use(Vuex).use(echarts).use(Antd).mount('#app');
+
+store.commit("getTimeAll");
+
+
+/*路由守卫*/
+router.beforeEach((to, from, next) => {
+    /* 路由发生变化修改页面title */
+    if (to.meta.title) {
+        document.title = to.meta.title
+    }
+
+    //如果目标路由为登陆时,恢复用户原始状态
+    if (to.path === '/') {
+        removeToken()
+        sessionStorage.removeItem("userInfo");
+        document.getElementById('routers').style.display = "none"
+    } else {
+        document.getElementById('routers').style.display = "block"
+    }
+    if (to.path !== '/') {
+        if (sessionStorage.getItem('userInfo') === null) {
+            next({ path: '/' })
+            document.getElementById('routers').style.display = "none"
+            setTimeout(() => {
+                ElMessage.warning({
+                    message: '请登录后重试!',
+                    type: 'warning'
+                });
+            }, 100);
+
+        } else {
+            next();
+        }
+    } else {
+        //路由的next必须存在,否则无法进入下一页
+        next()
+    }
+})

+ 463 - 0
.history/src/store/index_20210723102619.js

@@ -0,0 +1,463 @@
+import { createStore } from 'vuex'
+
+export default createStore({
+    state: {
+        query: null,
+        siteId: 1, //公共api请求参数->siteId
+        Time_Data: [], //公共api请求参数->Time_Data
+        timearr: [], //公共处理开始时间和结束时间中的时间段天数 值存储
+        itemStyle: [{
+                normal: {
+                    borderColor: "rgba(0,244,253,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(0,244,253,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(253,143,0,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(253,143,0,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(0,255,18,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(0,255,18,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(0,255,230,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(0,255,230,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(142,51,255,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(142,51,255,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(77,200,120,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(77,200,120,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(255,47,47,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(255,47,47,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(70,100,255,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(70,100,255,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(255,143,53,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(255,143,53,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(150,150,50,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(150,150,50,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(70,192,255,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(70,192,255,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(20,99,100,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(20,99,100,1)",
+                    },
+                },
+            },
+        ], //公共echarts图表样式
+        Time_All: [], //公共时间 返回数组 -> 年月日时分秒 时间戳
+
+
+        queryType: '', //设备监控--->数据报表api请求参数->queryType
+        run_off_Status: null, //设备监控--->运行状态统计->echarts->OFF次数分布和运行状态曲线图表 api信息存储
+        HistoricalCurve: null, //设备监控--->历史趋势->echarts->曲线图表 api信息存储
+        se_defaultTime: [], //设备监控--->历史趋势时间选择器v-model
+        th_defaultTime: [], //设备监控--->数据报表时间选择器v-model
+        fh_defaultTime: [], //设备监控--->运行状态统计时间选择器v-model
+        table_list: [{
+                name: "电流",
+                list: [
+                    { name: "A相电流", value: "Ia" },
+                    { name: "B相电流", value: "Ib" },
+                    { name: "C相电流", value: "Ic" },
+                ],
+            },
+            {
+                name: "功率",
+                list: [
+                    { name: "A相有功功率 kW", value: "Pa" },
+                    { name: "A相无功功率 kVar", value: "Qa" },
+                    { name: "B相有功功率 kW", value: "Pb" },
+                    { name: "B相无功功率 kVar", value: "Qb" },
+                    { name: "C相有功功率 kW", value: "Pc" },
+                    { name: "C相无功功率 kVar", value: "Qc" },
+                    { name: "总有功功率 kW", value: "P" },
+                    { name: "总无功功率 kW", value: "Q" },
+                    { name: "实时需量 kW", value: "Demand" },
+                ],
+            },
+            {
+                name: "电度",
+                list: [
+                    { name: "正有功电度 kWh", value: "Epp" },
+                    { name: "负有功电度 kWh", value: "Epn" },
+                    { name: "正无功电度 kvarh", value: "Eqp" },
+                    { name: "负无功电度 kvarh", value: "Eqn" },
+                ],
+            },
+            {
+                name: "电压",
+                list: [
+                    { name: "A相电压 kV", value: "Ua" },
+                    { name: "B相电压 kV", value: "Ub" },
+                    { name: "C相电压 kV", value: "Uc" },
+                    { name: "回路电压 V", value: "Ul" },
+                    { name: "AB线电压 V", value: "Uab" },
+                    { name: "BC线电压 V", value: "Ubc" },
+                    { name: "CA线电压 V", value: "Uca" },
+                ],
+            },
+            {
+                name: "温度 ℃",
+                list: [
+                    { name: "外接温度1", value: "T1" },
+                    { name: "外接温度2", value: "T2" },
+                    { name: "外接温度3", value: "T3" },
+                    { name: "外接温度4", value: "T4" },
+                    { name: "环境温度", value: "DeviceTemp" },
+                ],
+            },
+            {
+                name: "频率 Hz",
+                list: [{ name: "频率", value: "F" }],
+            },
+            {
+                name: "功率因数",
+                list: [
+                    { name: "A相功率因数", value: "COSa" },
+                    { name: "B相功率因数", value: "COSb" },
+                    { name: "C相功率因数", value: "COSc" },
+                    { name: "功率因数", value: "COS" },
+                ],
+            },
+            {
+                name: "谐波电流有效值 A",
+                list: [
+                    { name: "Ia总谐波电流", value: "IHa" },
+                    { name: "Ib总谐波电流", value: "IHa" },
+                    { name: "Ic总谐波电流", value: "IHc" },
+                ],
+            },
+            {
+                name: "通讯参数",
+                list: [{ name: "设备信号强度", value: "SignalIntensity" }],
+            },
+            {
+                name: "电压突变 次",
+                list: [
+                    { name: "电压暂升次数", value: "Upt" },
+                    { name: "电压暂降次数", value: "Udt" },
+                    { name: "电压中断次数", value: "Ust" },
+                ],
+            },
+        ], //设备监控--->数据报表->默认tabs数据
+        se_tabs: [
+            { label: '电流', name: "I" },
+            { label: '功率', name: "P" },
+            { label: '电度', name: "KWh" },
+            { label: '电压', name: "V" },
+            { label: '温度', name: "C" },
+            { label: '频率', name: "HZ" },
+            { label: '功率因数', name: "PS" },
+            { label: '谐波电流有效值', name: "RMS" },
+            { label: '通讯参数', name: "DDB" },
+            { label: '电压突变', name: "VT" },
+        ], //设备监控--->历史趋势->默认tabs数据
+
+        trendIco: null, //事件告警--->事件告警统计->echarts->柱状图 api信息存储
+        trendIco_state: null, //事件告警--->事件告警统计->select状态api信息存储
+        trendIco_table: [
+            { label: '发生时间', porp: 'soeTime' },
+            { label: '告警描述', porp: 'measName' },
+            { label: '设备', porp: 'deviceCode' },
+            { label: '告警类型', porp: 'alarmName' },
+            { label: '状态', porp: 'handlingStatus' },
+            { label: '处理人', porp: 'handler' },
+            { label: '处理时间', porp: 'handlingTime' },
+        ], //事件告警--->事件告警统计->表格默认值存储
+
+
+        trendIcoCount: null,
+    },
+    mutations: {
+        /**
+         * @公共api请求参数siteId
+         * @param {*}} state 
+         * @param {*} val 
+         */
+        increment(state, val) {
+            state.siteId = val
+        },
+        /**
+         * @数据报表 —> 多选按钮数据处理
+         * @param {*} state 
+         * @param {*} checked_list 
+         */
+        checkedCities_all(state, checked_list) {
+            state.queryType = ''
+            var checked = ''
+            for (let i in checked_list) {
+                checked_list[i] === "电流" ?
+                    checked = "I" :
+                    checked_list[i] === "功率" ?
+                    checked = "P" :
+                    checked_list[i] === "电度" ?
+                    checked = "KWh" :
+                    checked_list[i] === "电压" ?
+                    checked = "V" :
+                    checked_list[i] === "温度" ?
+                    checked = "C" :
+                    checked_list[i] === "频率" ?
+                    checked = "HZ" :
+                    checked_list[i] === "功率因数" ?
+                    checked = "PS" :
+                    checked_list[i] === "谐波电流有效值" ?
+                    checked = "RMS" :
+                    checked_list[i] === "通讯参数" ?
+                    checked = "DDB" :
+                    checked_list[i] === "电压突变" ?
+                    checked = "VT" :
+                    ""
+                state.queryType += checked_list.length > 1 ? checked + "," : checked;
+            }
+            state.queryType = checked_list.length > 1 ? state.queryType.slice(0, state.queryType.length - 1) : state.queryType
+        },
+        /**
+         * @历史趋势 -> echarts ->曲线图表 api信息存储
+         */
+        HistoricalCurve(state, data) {
+            state.HistoricalCurve = data
+        },
+        /**
+         * @公共处理时区方法
+         */
+        TimeAll_function(state, time) {
+            state.Time_Data = []
+            for (let i in time) {
+                var Y = time[i].getFullYear() < 10 ? '0' + time[i].getFullYear() : time[i].getFullYear()
+                var M = (time[i].getMonth() + 1) < 10 ? '0' + (time[i].getMonth() + 1) : (time[i].getMonth() + 1)
+                var D = time[i].getDate() < 10 ? '0' + time[i].getDate() : time[i].getDate()
+                var HH = time[i].getHours() < 10 ? '0' + time[i].getHours() : time[i].getHours()
+                var MM = time[i].getMinutes() < 10 ? '0' + time[i].getMinutes() : time[i].getMinutes()
+                var SS = time[i].getSeconds() < 10 ? '0' + time[i].getSeconds() : time[i].getSeconds()
+                    // console.log(Y + '-' + M + '-' + D + ' ' + HH + ':' + MM + ':' + SS)
+                state.Time_Data.push(Y + '-' + M + '-' + D + ' ' + HH + ':' + MM + ':' + SS)
+            }
+        },
+        /**
+         * @公共处理开始时间和结束时间中的时间段天数
+         * @param {*} state 
+         * @param {*} begin 开始时间和结束时间
+         */
+        getAll(state, begin) {
+            let arr1 = begin[0].split("-");
+            let arr2 = begin[1].split("-");
+            let arr1_ = new Date();
+            let arrTime = [];
+            arr1_.setUTCFullYear(arr1[0], arr1[1] - 1, arr1[2]);
+            let arr2_ = new Date();
+            arr2_.setUTCFullYear(arr2[0], arr2[1] - 1, arr2[2]);
+            let unixDb = arr1_.getTime();
+            let unixDe = arr2_.getTime();
+            for (let k = unixDb; k <= unixDe;) {
+                arrTime.push(datetimeparse(k, "YY-MM-DD"));
+                k = k + 24 * 60 * 60 * 1000;
+            }
+            state.timearr = arrTime
+                // return arrTime;
+                // 时间格式处理
+            function datetimeparse(timestamp, format, prefix) {
+                if (typeof timestamp == "string") {
+                    timestamp = Number(timestamp);
+                }
+                //转换时区
+                let currentZoneTime = new Date(timestamp);
+                let currentTimestamp = currentZoneTime.getTime();
+                let offsetZone = currentZoneTime.getTimezoneOffset() / 60; //如果offsetZone>0是西区,西区晚
+                let offset = null;
+                //客户端时间与服务器时间保持一致,固定北京时间东八区。
+                offset = offsetZone + 8;
+                currentTimestamp = currentTimestamp + offset * 3600 * 1000;
+
+                let newtimestamp = null;
+                if (currentTimestamp) {
+                    if (currentTimestamp.toString().length === 13) {
+                        newtimestamp = currentTimestamp.toString();
+                    } else if (currentTimestamp.toString().length === 10) {
+                        newtimestamp = currentTimestamp + "000";
+                    } else {
+                        newtimestamp = null;
+                    }
+                } else {
+                    newtimestamp = null;
+                }
+                let dateobj = newtimestamp ?
+                    new Date(parseInt(newtimestamp)) :
+                    new Date();
+                let YYYY = dateobj.getFullYear();
+                let MM =
+                    dateobj.getMonth() > 8 ?
+                    dateobj.getMonth() + 1 :
+                    "0" + (dateobj.getMonth() + 1);
+                let DD =
+                    dateobj.getDate() > 9 ? dateobj.getDate() : "0" + dateobj.getDate();
+                let HH =
+                    dateobj.getHours() > 9 ? dateobj.getHours() : "0" + dateobj.getHours();
+                let mm =
+                    dateobj.getMinutes() > 9 ?
+                    dateobj.getMinutes() :
+                    "0" + dateobj.getMinutes();
+                let ss =
+                    dateobj.getSeconds() > 9 ?
+                    dateobj.getSeconds() :
+                    "0" + dateobj.getSeconds();
+                let output = "";
+                let separator = "/";
+                if (format) {
+                    separator = format.match(/-/) ? "-" : "/";
+                    output += format.match(/yy/i) ? YYYY : "";
+                    output += format.match(/MM/) ?
+                        (output.length ? separator : "") + MM :
+                        "";
+                    output += format.match(/dd/i) ?
+                        (output.length ? separator : "") + DD :
+                        "";
+                    output += format.match(/hh/i) ? (output.length ? " " : "") + HH : "";
+                    output += format.match(/mm/) ? (output.length ? ":" : "") + mm : "";
+                    output += format.match(/ss/i) ? (output.length ? ":" : "") + ss : "";
+                } else {
+                    output += YYYY + separator + MM + separator + DD;
+                }
+                output = prefix ? prefix + output : output;
+                return newtimestamp ? output : "";
+            }
+        },
+        /**
+         * @公共echarts图表下载
+         */
+        getConnectedDataURL(state, refs) {
+            state || refs
+            var url = refs[0].getConnectedDataURL({
+                pixelRatio: 15,
+                backgroundColor: "black",
+                excludeComponents: ["toolbox"],
+                type: "png",
+            });
+            var $a = document.createElement("a");
+            var type = "png";
+            //图片名称
+            $a.download = refs[1] + "." + type;
+            $a.target = "_blank";
+            $a.href = url;
+            if (typeof MouseEvent === "function") {
+                var evt = new MouseEvent("click", {
+                    view: window,
+                    bubbles: true,
+                    cancelable: false,
+                });
+                $a.dispatchEvent(evt);
+            }
+        },
+        /**
+         * @公共时间 返回数组 -> 年月日时分秒 时间戳
+         */
+        getTimeAll(state) {
+            const time = new Date();
+            const Y = time.getFullYear(); //年
+            const M = time.getMonth(); //月
+            const D = time.getDate(); //日
+            const HH = time.getHours(); //时,
+            const MM = time.getMinutes(); //分
+            const SS = time.getSeconds(); //秒
+            const timestamp = new Date().getTime(); //时间戳
+            state.Time_All = [Y, M, D, HH, MM, SS, timestamp]
+            state.se_defaultTime = [new Date(Y, M, D, 0, 0, 0), new Date()] //设备监控--->历史趋势时间选择器v-model  //home设备总数
+            state.th_defaultTime = [new Date(Y, M, D, 0, 0, 0), new Date()] //设备监控--->数据报表时间选择器v-model  //home运维管理
+            state.fh_defaultTime = [new Date(Y, M, 1, 0, 0, 0), new Date()] //设备监控--->运行状态统计时间选择器v-model  //概览 -> 告警统计折线图
+        },
+    }
+})

+ 464 - 0
.history/src/store/index_20211209135012.js

@@ -0,0 +1,464 @@
+import { createStore } from 'vuex'
+
+export default createStore({
+    state: {
+        assToken: '',
+        query: null,
+        siteId: 1, //公共api请求参数->siteId
+        Time_Data: [], //公共api请求参数->Time_Data
+        timearr: [], //公共处理开始时间和结束时间中的时间段天数 值存储
+        itemStyle: [{
+                normal: {
+                    borderColor: "rgba(0,244,253,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(0,244,253,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(253,143,0,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(253,143,0,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(0,255,18,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(0,255,18,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(0,255,230,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(0,255,230,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(142,51,255,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(142,51,255,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(77,200,120,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(77,200,120,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(255,47,47,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(255,47,47,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(70,100,255,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(70,100,255,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(255,143,53,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(255,143,53,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(150,150,50,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(150,150,50,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(70,192,255,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(70,192,255,1)",
+                    },
+                },
+            },
+            {
+                normal: {
+                    borderColor: "rgba(20,99,100,1)",
+                    borderWidth: 2,
+                    color: "rgba(6, 68, 83, 1)",
+                    lineStyle: {
+                        width: 2, //折线宽度
+                        color: "rgba(20,99,100,1)",
+                    },
+                },
+            },
+        ], //公共echarts图表样式
+        Time_All: [], //公共时间 返回数组 -> 年月日时分秒 时间戳
+
+
+        queryType: '', //设备监控--->数据报表api请求参数->queryType
+        run_off_Status: null, //设备监控--->运行状态统计->echarts->OFF次数分布和运行状态曲线图表 api信息存储
+        HistoricalCurve: null, //设备监控--->历史趋势->echarts->曲线图表 api信息存储
+        se_defaultTime: [], //设备监控--->历史趋势时间选择器v-model
+        th_defaultTime: [], //设备监控--->数据报表时间选择器v-model
+        fh_defaultTime: [], //设备监控--->运行状态统计时间选择器v-model
+        table_list: [{
+                name: "电流",
+                list: [
+                    { name: "A相电流", value: "Ia" },
+                    { name: "B相电流", value: "Ib" },
+                    { name: "C相电流", value: "Ic" },
+                ],
+            },
+            {
+                name: "功率",
+                list: [
+                    { name: "A相有功功率 kW", value: "Pa" },
+                    { name: "A相无功功率 kVar", value: "Qa" },
+                    { name: "B相有功功率 kW", value: "Pb" },
+                    { name: "B相无功功率 kVar", value: "Qb" },
+                    { name: "C相有功功率 kW", value: "Pc" },
+                    { name: "C相无功功率 kVar", value: "Qc" },
+                    { name: "总有功功率 kW", value: "P" },
+                    { name: "总无功功率 kW", value: "Q" },
+                    { name: "实时需量 kW", value: "Demand" },
+                ],
+            },
+            {
+                name: "电度",
+                list: [
+                    { name: "正有功电度 kWh", value: "Epp" },
+                    { name: "负有功电度 kWh", value: "Epn" },
+                    { name: "正无功电度 kvarh", value: "Eqp" },
+                    { name: "负无功电度 kvarh", value: "Eqn" },
+                ],
+            },
+            {
+                name: "电压",
+                list: [
+                    { name: "A相电压 kV", value: "Ua" },
+                    { name: "B相电压 kV", value: "Ub" },
+                    { name: "C相电压 kV", value: "Uc" },
+                    { name: "回路电压 V", value: "Ul" },
+                    { name: "AB线电压 V", value: "Uab" },
+                    { name: "BC线电压 V", value: "Ubc" },
+                    { name: "CA线电压 V", value: "Uca" },
+                ],
+            },
+            {
+                name: "温度 ℃",
+                list: [
+                    { name: "外接温度1", value: "T1" },
+                    { name: "外接温度2", value: "T2" },
+                    { name: "外接温度3", value: "T3" },
+                    { name: "外接温度4", value: "T4" },
+                    { name: "环境温度", value: "DeviceTemp" },
+                ],
+            },
+            {
+                name: "频率 Hz",
+                list: [{ name: "频率", value: "F" }],
+            },
+            {
+                name: "功率因数",
+                list: [
+                    { name: "A相功率因数", value: "COSa" },
+                    { name: "B相功率因数", value: "COSb" },
+                    { name: "C相功率因数", value: "COSc" },
+                    { name: "功率因数", value: "COS" },
+                ],
+            },
+            {
+                name: "谐波电流有效值 A",
+                list: [
+                    { name: "Ia总谐波电流", value: "IHa" },
+                    { name: "Ib总谐波电流", value: "IHa" },
+                    { name: "Ic总谐波电流", value: "IHc" },
+                ],
+            },
+            {
+                name: "通讯参数",
+                list: [{ name: "设备信号强度", value: "SignalIntensity" }],
+            },
+            {
+                name: "电压突变 次",
+                list: [
+                    { name: "电压暂升次数", value: "Upt" },
+                    { name: "电压暂降次数", value: "Udt" },
+                    { name: "电压中断次数", value: "Ust" },
+                ],
+            },
+        ], //设备监控--->数据报表->默认tabs数据
+        se_tabs: [
+            { label: '电流', name: "I" },
+            { label: '功率', name: "P" },
+            { label: '电度', name: "KWh" },
+            { label: '电压', name: "V" },
+            { label: '温度', name: "C" },
+            { label: '频率', name: "HZ" },
+            { label: '功率因数', name: "PS" },
+            { label: '谐波电流有效值', name: "RMS" },
+            { label: '通讯参数', name: "DDB" },
+            { label: '电压突变', name: "VT" },
+        ], //设备监控--->历史趋势->默认tabs数据
+
+        trendIco: null, //事件告警--->事件告警统计->echarts->柱状图 api信息存储
+        trendIco_state: null, //事件告警--->事件告警统计->select状态api信息存储
+        trendIco_table: [
+            { label: '发生时间', porp: 'soeTime' },
+            { label: '告警描述', porp: 'measName' },
+            { label: '设备', porp: 'deviceCode' },
+            { label: '告警类型', porp: 'alarmName' },
+            { label: '状态', porp: 'handlingStatus' },
+            { label: '处理人', porp: 'handler' },
+            { label: '处理时间', porp: 'handlingTime' },
+        ], //事件告警--->事件告警统计->表格默认值存储
+
+
+        trendIcoCount: null,
+    },
+    mutations: {
+        /**
+         * @公共api请求参数siteId
+         * @param {*}} state 
+         * @param {*} val 
+         */
+        increment(state, val) {
+            state.siteId = val
+        },
+        /**
+         * @数据报表 —> 多选按钮数据处理
+         * @param {*} state 
+         * @param {*} checked_list 
+         */
+        checkedCities_all(state, checked_list) {
+            state.queryType = ''
+            var checked = ''
+            for (let i in checked_list) {
+                checked_list[i] === "电流" ?
+                    checked = "I" :
+                    checked_list[i] === "功率" ?
+                    checked = "P" :
+                    checked_list[i] === "电度" ?
+                    checked = "KWh" :
+                    checked_list[i] === "电压" ?
+                    checked = "V" :
+                    checked_list[i] === "温度" ?
+                    checked = "C" :
+                    checked_list[i] === "频率" ?
+                    checked = "HZ" :
+                    checked_list[i] === "功率因数" ?
+                    checked = "PS" :
+                    checked_list[i] === "谐波电流有效值" ?
+                    checked = "RMS" :
+                    checked_list[i] === "通讯参数" ?
+                    checked = "DDB" :
+                    checked_list[i] === "电压突变" ?
+                    checked = "VT" :
+                    ""
+                state.queryType += checked_list.length > 1 ? checked + "," : checked;
+            }
+            state.queryType = checked_list.length > 1 ? state.queryType.slice(0, state.queryType.length - 1) : state.queryType
+        },
+        /**
+         * @历史趋势 -> echarts ->曲线图表 api信息存储
+         */
+        HistoricalCurve(state, data) {
+            state.HistoricalCurve = data
+        },
+        /**
+         * @公共处理时区方法
+         */
+        TimeAll_function(state, time) {
+            state.Time_Data = []
+            for (let i in time) {
+                var Y = time[i].getFullYear() < 10 ? '0' + time[i].getFullYear() : time[i].getFullYear()
+                var M = (time[i].getMonth() + 1) < 10 ? '0' + (time[i].getMonth() + 1) : (time[i].getMonth() + 1)
+                var D = time[i].getDate() < 10 ? '0' + time[i].getDate() : time[i].getDate()
+                var HH = time[i].getHours() < 10 ? '0' + time[i].getHours() : time[i].getHours()
+                var MM = time[i].getMinutes() < 10 ? '0' + time[i].getMinutes() : time[i].getMinutes()
+                var SS = time[i].getSeconds() < 10 ? '0' + time[i].getSeconds() : time[i].getSeconds()
+                    // console.log(Y + '-' + M + '-' + D + ' ' + HH + ':' + MM + ':' + SS)
+                state.Time_Data.push(Y + '-' + M + '-' + D + ' ' + HH + ':' + MM + ':' + SS)
+            }
+        },
+        /**
+         * @公共处理开始时间和结束时间中的时间段天数
+         * @param {*} state 
+         * @param {*} begin 开始时间和结束时间
+         */
+        getAll(state, begin) {
+            let arr1 = begin[0].split("-");
+            let arr2 = begin[1].split("-");
+            let arr1_ = new Date();
+            let arrTime = [];
+            arr1_.setUTCFullYear(arr1[0], arr1[1] - 1, arr1[2]);
+            let arr2_ = new Date();
+            arr2_.setUTCFullYear(arr2[0], arr2[1] - 1, arr2[2]);
+            let unixDb = arr1_.getTime();
+            let unixDe = arr2_.getTime();
+            for (let k = unixDb; k <= unixDe;) {
+                arrTime.push(datetimeparse(k, "YY-MM-DD"));
+                k = k + 24 * 60 * 60 * 1000;
+            }
+            state.timearr = arrTime
+                // return arrTime;
+                // 时间格式处理
+            function datetimeparse(timestamp, format, prefix) {
+                if (typeof timestamp == "string") {
+                    timestamp = Number(timestamp);
+                }
+                //转换时区
+                let currentZoneTime = new Date(timestamp);
+                let currentTimestamp = currentZoneTime.getTime();
+                let offsetZone = currentZoneTime.getTimezoneOffset() / 60; //如果offsetZone>0是西区,西区晚
+                let offset = null;
+                //客户端时间与服务器时间保持一致,固定北京时间东八区。
+                offset = offsetZone + 8;
+                currentTimestamp = currentTimestamp + offset * 3600 * 1000;
+
+                let newtimestamp = null;
+                if (currentTimestamp) {
+                    if (currentTimestamp.toString().length === 13) {
+                        newtimestamp = currentTimestamp.toString();
+                    } else if (currentTimestamp.toString().length === 10) {
+                        newtimestamp = currentTimestamp + "000";
+                    } else {
+                        newtimestamp = null;
+                    }
+                } else {
+                    newtimestamp = null;
+                }
+                let dateobj = newtimestamp ?
+                    new Date(parseInt(newtimestamp)) :
+                    new Date();
+                let YYYY = dateobj.getFullYear();
+                let MM =
+                    dateobj.getMonth() > 8 ?
+                    dateobj.getMonth() + 1 :
+                    "0" + (dateobj.getMonth() + 1);
+                let DD =
+                    dateobj.getDate() > 9 ? dateobj.getDate() : "0" + dateobj.getDate();
+                let HH =
+                    dateobj.getHours() > 9 ? dateobj.getHours() : "0" + dateobj.getHours();
+                let mm =
+                    dateobj.getMinutes() > 9 ?
+                    dateobj.getMinutes() :
+                    "0" + dateobj.getMinutes();
+                let ss =
+                    dateobj.getSeconds() > 9 ?
+                    dateobj.getSeconds() :
+                    "0" + dateobj.getSeconds();
+                let output = "";
+                let separator = "/";
+                if (format) {
+                    separator = format.match(/-/) ? "-" : "/";
+                    output += format.match(/yy/i) ? YYYY : "";
+                    output += format.match(/MM/) ?
+                        (output.length ? separator : "") + MM :
+                        "";
+                    output += format.match(/dd/i) ?
+                        (output.length ? separator : "") + DD :
+                        "";
+                    output += format.match(/hh/i) ? (output.length ? " " : "") + HH : "";
+                    output += format.match(/mm/) ? (output.length ? ":" : "") + mm : "";
+                    output += format.match(/ss/i) ? (output.length ? ":" : "") + ss : "";
+                } else {
+                    output += YYYY + separator + MM + separator + DD;
+                }
+                output = prefix ? prefix + output : output;
+                return newtimestamp ? output : "";
+            }
+        },
+        /**
+         * @公共echarts图表下载
+         */
+        getConnectedDataURL(state, refs) {
+            state || refs
+            var url = refs[0].getConnectedDataURL({
+                pixelRatio: 15,
+                backgroundColor: "black",
+                excludeComponents: ["toolbox"],
+                type: "png",
+            });
+            var $a = document.createElement("a");
+            var type = "png";
+            //图片名称
+            $a.download = refs[1] + "." + type;
+            $a.target = "_blank";
+            $a.href = url;
+            if (typeof MouseEvent === "function") {
+                var evt = new MouseEvent("click", {
+                    view: window,
+                    bubbles: true,
+                    cancelable: false,
+                });
+                $a.dispatchEvent(evt);
+            }
+        },
+        /**
+         * @公共时间 返回数组 -> 年月日时分秒 时间戳
+         */
+        getTimeAll(state) {
+            const time = new Date();
+            const Y = time.getFullYear(); //年
+            const M = time.getMonth(); //月
+            const D = time.getDate(); //日
+            const HH = time.getHours(); //时,
+            const MM = time.getMinutes(); //分
+            const SS = time.getSeconds(); //秒
+            const timestamp = new Date().getTime(); //时间戳
+            state.Time_All = [Y, M, D, HH, MM, SS, timestamp]
+            state.se_defaultTime = [new Date(Y, M, D, 0, 0, 0), new Date()] //设备监控--->历史趋势时间选择器v-model  //home设备总数
+            state.th_defaultTime = [new Date(Y, M, D, 0, 0, 0), new Date()] //设备监控--->数据报表时间选择器v-model  //home运维管理
+            state.fh_defaultTime = [new Date(Y, M, 1, 0, 0, 0), new Date()] //设备监控--->运行状态统计时间选择器v-model  //概览 -> 告警统计折线图
+        },
+    }
+})

+ 111 - 0
.history/src/utils/request_20210729181608.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+    // baseURL: baseURL,
+    baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+    withCredentials: true, // send cookies when cross-domain requests
+    timeout: 5000, // request timeout
+    headers: {
+        'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+    },
+})
+// request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208164559.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208165117.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        // baseURL: baseURL,
+        baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208170148.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208174447.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208174749.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208174755.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208174807.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208174812.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208174949.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208175056.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208175230.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208175307.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208175452.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208175510.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 111 - 0
.history/src/utils/request_20211208175654.js

@@ -0,0 +1,111 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+            // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211208175750.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211208175758.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211208175840.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211208180037.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211208180833.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            // 'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211208180844.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209112916.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209113336.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209113831.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209114028.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209114033.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209114431.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209131131.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/json;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209131246.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = config.data;
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/json;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209131254.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        // config.data = config.data;
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/json;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209131258.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+// import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        // config.data = config.data;
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/json;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209131412.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+// import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        // config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/json;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209131458.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209131545.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209131551.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        // config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209131556.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+// import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        // config.data = qs.stringify(config.data);
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+            if (config.method == 'get') {
+                let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+                let obj_val = '';
+                for (let k in config.data) {
+                    obj_val += k + "=" + config.data[k] + "&";
+                }
+                config.url += ext_str + obj_val;
+            }
+            // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 117 - 0
.history/src/utils/request_20211209131854.js

@@ -0,0 +1,117 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8'
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+            config.data = qs.stringify(config.data);
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 118 - 0
.history/src/utils/request_20211209140352.js

@@ -0,0 +1,118 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8',
+            ''
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+            config.data = qs.stringify(config.data);
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 118 - 0
.history/src/utils/request_20211209140402.js

@@ -0,0 +1,118 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8',
+            'accessToken':
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+            config.data = qs.stringify(config.data);
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 118 - 0
.history/src/utils/request_20211209140415.js

@@ -0,0 +1,118 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8',
+            'accessToken': localStorage.getItem('assToken')
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        )
+            config.data = qs.stringify(config.data);
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 123 - 0
.history/src/utils/request_20211209140937.js

@@ -0,0 +1,123 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8',
+            // 'accessToken': localStorage.getItem('assToken')
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        ) {
+            config.data = qs.stringify(config.data);
+        } else {
+            config.headers['accessToken'] = localStorage.getItem('assToken')
+
+        }
+
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 123 - 0
.history/src/utils/request_20211209141044.js

@@ -0,0 +1,123 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8',
+            // 'accessToken': localStorage.getItem('assToken')
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        ) {
+            config.data = qs.stringify(config.data);
+        } else {
+            // config.headers['accessToken'] = localStorage.getItem('assToken')
+
+        }
+
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 124 - 0
.history/src/utils/request_20211209141102.js

@@ -0,0 +1,124 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8',
+            // 'accessToken': localStorage.getItem('assToken')
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        ) {
+            config.data = qs.stringify(config.data);
+            config.headers['accessToken'] = localStorage.getItem('assToken')
+        } else {
+
+
+        }
+
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 121 - 0
.history/src/utils/request_20211209141107.js

@@ -0,0 +1,121 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8',
+            // 'accessToken': localStorage.getItem('assToken')
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        ) {
+            config.data = qs.stringify(config.data);
+            config.headers['accessToken'] = localStorage.getItem('assToken')
+        }
+
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 127 - 0
.history/src/utils/request_20211209141228.js

@@ -0,0 +1,127 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8',
+            // 'accessToken': localStorage.getItem('assToken')
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        ) {
+            config.data = qs.stringify(config.data);
+        }
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/json;charset=UTF-8'
+        ) {
+            config.headers['accessToken'] = localStorage.getItem('assToken')
+        }
+
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

+ 127 - 0
.history/src/utils/request_20211209141249.js

@@ -0,0 +1,127 @@
+import axios from 'axios'
+import { ElMessage } from 'element-plus'
+// import store from '@/store'
+import { getToken } from '@/utils/auth'
+import qs from 'qs'
+
+// create an axios instance
+
+let baseURL = window.PLATFROM_CONFIG.baseUrl
+const service = axios.create({
+        baseURL: baseURL,
+        // baseURL: process.env.NODE_ENV !== "development" ? baseURL : process.env.VUE_APP_BASE_URL,
+        withCredentials: true, // send cookies when cross-domain requests
+        timeout: 5000, // request timeout
+        headers: {
+            'Content-Type': 'application/json;charset=UTF-8',
+            // 'accessToken': localStorage.getItem('assToken')
+        },
+    })
+    // request interceptor
+service.interceptors.request.use(
+    config => {
+
+        config.headers.token = getToken()
+
+        if (
+            config.data &&
+            config.headers['Content-Type'] ===
+            'application/x-www-form-urlencoded;charset=UTF-8'
+        ) {
+            config.data = qs.stringify(config.data);
+        }
+        if (
+
+            config.headers['Content-Type'] !==
+            'application/json;charset=UTF-8'
+        ) {
+            config.headers['accessToken'] = localStorage.getItem('assToken')
+        }
+
+        // do something before request is sent
+
+        // if (store.getters.token) {
+        //     // let each request carry token
+        //     // ['X-Token'] is a custom headers key
+        //     // please modify it according to the actual situation
+        //     config.headers['X-Token'] = getToken()
+        // }
+
+        if (config.method == 'get') {
+            let ext_str = config.url.indexOf('?') == -1 ? '?' : '&';
+            let obj_val = '';
+            for (let k in config.data) {
+                obj_val += k + "=" + config.data[k] + "&";
+            }
+            config.url += ext_str + obj_val;
+        }
+        // return config;
+
+        return config
+    },
+    error => {
+        // do something with request error
+        console.log(error) // for debug
+        return Promise.reject(error)
+    }
+)
+
+// response interceptor
+service.interceptors.response.use(
+    /**
+     * If you want to get http information such as headers or status
+     * Please return  response => response
+     */
+
+    /**
+     * Determine the request status by custom code
+     * Here is just an example
+     * You can also judge the status by HTTP Status Code
+     */
+    response => {
+        const res = response.data
+
+        // console.log(res)
+
+
+        return res
+
+        // if the custom code is not 20000, it is judged as an error.
+        // if (res.code !== 200) {
+        //     Message({
+        //         message: res.message || 'Error',
+        //         type: 'error',
+        //         duration: 5 * 1000
+        //     })
+
+        //     // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+        //     if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+        //         // to re-login
+        //         MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+        //             confirmButtonText: 'Re-Login',
+        //             cancelButtonText: 'Cancel',
+        //             type: 'warning'
+        //         }).then(() => {
+        //             store.dispatch('user/resetToken').then(() => {
+        //                 location.reload()
+        //             })
+        //         })
+        //     }
+        //     return Promise.reject(new Error(res.message || 'Error'))
+        // } else {
+        //     return res
+        // }
+    },
+    error => {
+        // console.log('err' + error.response.data.msg) // for debug
+        ElMessage({
+            message: error.response.config.url === '/user/login?' ? error.response.data.msg : error.message,
+            type: 'error',
+            duration: 5 * 1000
+        })
+        return Promise.reject(error)
+    }
+
+)
+
+export default service

Некоторые файлы не были показаны из-за большого количества измененных файлов