From e37e45cfe1123928dba5d9c5a427b0ee497b7ad6 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期二, 23 八月 2022 03:21:32 +0800
Subject: [PATCH] 修复算法配置的字段内容

---
 src/scripts/httpRequest.ts |  153 +++++++++++++++++++++++++++-----------------------
 1 files changed, 82 insertions(+), 71 deletions(-)

diff --git a/src/scripts/httpRequest.ts b/src/scripts/httpRequest.ts
index 8ac414b..ed332a2 100644
--- a/src/scripts/httpRequest.ts
+++ b/src/scripts/httpRequest.ts
@@ -1,47 +1,53 @@
 /* eslint-disable */
-import axios from 'axios'
-import qs from 'qs'
-import { Notification } from 'element-ui'
-// import router from '@/router'
+import axios from "axios"
+import qs from "qs"
+import { Notification } from "element-ui"
+import router from "@/router"
 
 const Axios = axios.create({
-  responseType: 'json',
+  responseType: "json",
   withCredentials: true // 鏄惁鍏佽甯ookie杩欎簺
 })
 
 /* //POST浼犲弬搴忓垪鍖�(娣诲姞璇锋眰鎷︽埅鍣�) */
 Axios.interceptors.request.use(
-  config => {
-    // config.data = JSON.stringify(config.data)
-    // let Public = {};
-    // if (
-    //   config.method === "post" ||
-    //   config.method === "put" ||
-    //   config.method === "delete"
-    // ) {
-    //   // 搴忓垪鍖�
-    //   // config.data = qs.stringify(config.data);
-    //   // config.data = qs.stringify(Object.assign(Public, config.data));
-    // } else {
-    //   config.method = "get";
-    //   config.params = Object.assign(Public, config.data);
-    // }
-    // config.headers = {
-    //   "X-Requested-With": "XMLHttpRequest",
-    //   Accept: "application/json",
-    //   "Content-Type": "application/json; charset=UTF-8"
-    // };
+  (config) => {
+    if ((config.method === "post" && sessionStorage.getItem("clusterId")) || sessionStorage.getItem("devId")) {
+      if (!config.data) {
+        config.data = {}
+      }
+
+      if (typeof config.data == "object") {
+        config.data.clusterId = sessionStorage.getItem("clusterId")
+        config.data.devId = sessionStorage.getItem("devId")
+      }
+
+      if (config.url === "/saas/api-s/camera/rule/getLinkRulesByCameraIds") {
+        config.data.devId = sessionStorage.getItem("cameraDevId")
+      }
+
+      //鍚庨棬
+      if (config.url === "/saas/api-d/device/userClusterInfo") {
+        config.data.clusterId = ""
+      }
+
+      if (config.url === "/saas/api-s/es/saveEsConfig") {
+        delete config.data.clusterId
+        delete config.data.devId
+      }
+    }
 
     // 鑻ユ槸鏈夊仛閴存潈token , 灏辩粰澶撮儴甯︿笂token
-    let token =
-      sessionStorage.getItem('loginedInfo') &&
-      JSON.parse(sessionStorage.getItem('loginedInfo')).access_token
+
+    let token = sessionStorage.getItem("loginedInfo") && JSON.parse(sessionStorage.getItem("loginedInfo")).access_token
     if (token != undefined) {
       config.headers.Authorization = token
     }
     return config
   },
-  error => {
+  (error) => {
+    console.log("璇锋眰閿欒", error)
+
     /*  Message({
       showClose: true,
       message: "鎻愪氦鍑洪敊锛岃鑱旂郴绠$悊鍛橈紒",
@@ -53,13 +59,13 @@
 
 /* //杩斿洖鐘舵�佸垽鏂�(娣诲姞鍝嶅簲鎷︽埅鍣�) */
 Axios.interceptors.response.use(
-  res => {
+  (res) => {
     /* //瀵瑰搷搴旀暟鎹仛浜涗簨 */
-    if (res.data && res.statusText !== 'OK' && res.status !== 200) {
+    if (res.data && res.statusText !== "OK" && res.status !== 200) {
       Notification({
-        title: '',
+        title: "",
         message: res.data.message,
-        type: 'error'
+        type: "error"
       })
       return Promise.reject(res.data)
     }
@@ -78,28 +84,41 @@
     //   window.sessionStorage.setItem('policeCameravideoIsLoginTimeout', JSON.stringify(true))
     // }
 
+    var disposition = res.headers["content-disposition"]
+    if (disposition) {
+      var fileName = disposition.substring(disposition.indexOf("=") + 1)
+
+      return {
+        fileName: fileName,
+        body: res
+      }
+    }
+
     return res.data ? res.data : {}
 
     /* //return res.data ? res.data : {}; */
   },
-  error => {
+  (error) => {
+    console.log("鍝嶅簲閿欒", error)
     let errJson: any = {
       success: false
+    }
+    if (error && error.response && error.response.status == 404) {
+      return
     }
     // 涓嬮潰鏄帴鍙e洖璋冪殑satus ,鍥犱负鎴戝仛浜嗕竴浜涢敊璇〉闈�,鎵�浠ラ兘浼氭寚鍚戝搴旂殑鎶ラ敊椤甸潰
     if (error && error.response) {
       switch (error.response.status) {
         case 400:
           errJson.status = error.response.status
-          errJson.message = '璇锋眰閿欒(400)'
+          errJson.message = "璇锋眰閿欒(400)"
           break
         case 401:
           errJson.status = error.response.status
-          errJson.message = '鏈巿鏉冿紝璇烽噸鏂扮櫥褰�(401)'
-          window.parent.postMessage({
-            msg: "logout"
-          }, '*')
-          // console.log("鏍囧織浣嶏細",AuthData.isLoginout)
+          errJson.message = "鏈巿鏉冿紝璇烽噸鏂扮櫥褰�(401)"
+          router.push({
+            path: "/login"
+          })
           // if (!AuthData.isLoginout) {
           //   Notification({
           //     title:"",
@@ -117,58 +136,50 @@
           break
         case 403:
           errJson.status = error.response.status
-          errJson.message = '鎷掔粷璁块棶(403)'
+          errJson.message = "鎷掔粷璁块棶(403)"
           break
         case 404:
           errJson.status = error.response.status
-          errJson.message = '鎵句笉鍒拌姹傝矾寰�(404)'
+          errJson.message = "鎵句笉鍒拌姹傝矾寰�(404)"
           break
         case 408:
           errJson.status = error.response.status
-          errJson.message = '璇锋眰瓒呮椂(408)'
+          errJson.message = "璇锋眰瓒呮椂(408)"
           break
         case 500:
           errJson = error.response.data
           break
-        // case 501:
-        //   errJson.status = error.response.status;
-        //   errJson.message = "鏈嶅姟鏈疄鐜�(501)";
-        //   break;
-        // case 502:
-        //   errJson.status = error.response.status;
-        //   errJson.message = "缃戠粶閿欒(502)";
-        //   break;
-        // case 503:
-        //   errJson.status = error.response.status;
-        //   errJson.message = "鏈嶅姟涓嶅彲鐢�(503)";
-        //   break;
-        // case 504:
-        //   errJson.status = error.response.status;
-        //   errJson.message = "缃戠粶瓒呮椂(504)";
-        //   break;
-        // case 505:
-        //   errJson.status = error.response.status;
-        //   errJson.message = "HTTP鐗堟湰涓嶅彈鏀寔(505)";
-        //   break;
+
         default:
           errJson.status = error.response.status
           errJson.message = `杩炴帴鍑洪敊(${error.response.status})!`
       }
-
     } else {
-      errJson.message = '杩炴帴鏈嶅姟鍣ㄥけ璐�!'
-      Notification({
-        title: '',
-        showClose: true,
-        message: '杩炴帴鏈嶅姟鍣ㄥけ璐�!',
-        type: 'error'
-      })
+      errJson.message = "杩炴帴鏈嶅姟鍣ㄥけ璐�!"
+
       // router.push({
       //   path: '/login'
       // });
     }
+
+    if (error.response && error.response.data && !error.response.data.success) {
+      errJson.message = error.response.data.msg
+    }
+
+    if (error.response.status == 401) {
+      return
+    }
+
+    Notification({
+      title: "閿欒",
+      showClose: true,
+      message: errJson.message,
+      type: "error"
+    })
     // 杩斿洖 response 閲岀殑閿欒淇℃伅
     return Promise.reject(errJson)
   }
 )
+
+Axios.defaults.timeout = 60 * 1000 * 2
 export default Axios

--
Gitblit v1.8.0