From a7b7bc7f3a29dd6d435ff3320211e7edbba81bdf Mon Sep 17 00:00:00 2001
From: 劉鈞霖 <benson@gmail.com>
Date: 星期三, 01 十二月 2021 11:34:15 +0800
Subject: [PATCH] [ Update ] : 修正錯誤訊息 css ,新增顧問登入查看帳號資訊

---
 PAMapp/assets/ts/api/share.ts |   53 ++++++++++++++++++++++++++++++++---------------------
 1 files changed, 32 insertions(+), 21 deletions(-)

diff --git a/PAMapp/assets/ts/api/share.ts b/PAMapp/assets/ts/api/share.ts
index 29b7444..cd6084e 100644
--- a/PAMapp/assets/ts/api/share.ts
+++ b/PAMapp/assets/ts/api/share.ts
@@ -1,10 +1,19 @@
-import axios from 'axios';
 import { AxiosRequestConfig, AxiosError, AxiosResponse } from 'axios';
-import { MessageBox } from 'element-ui';
+import ErrorMessageBox from '../errorService';
+import axios from 'axios';
+import _ from 'lodash';
+
+const notRequireInterceptorErrorUrl=[
+  '/otp/verify',
+  '/eService/authenticate',
+  '/login/validate/get_img_code',
+  '/login/validate/verify_img_code',
+];
 
 export const service = axios.create({
-    baseURL: process.env.BASE_URL
-})
+  baseURL: process.env.BASE_URL,
+  withCredentials: true
+});
 
 service.interceptors.request.use(
   (config:AxiosRequestConfig)=>{
@@ -20,30 +29,32 @@
   },
   (error:AxiosError)=>{
     loadingFinish();
-    if (error.config.url !== '/otp/verify') {
-      openErrorMessage();
-    }
+    showErrorMessageBox(error)
     return Promise.reject(error);
   }
 );
 
-
-
 function loadingStart(): void {
     window.$nuxt.$loading.start();
-}
+};
 
 function loadingFinish(): void {
     window.$nuxt.$loading.finish();
-}
+};
 
-function openErrorMessage():void{
-  MessageBox({
-    message: '蝟餌絞���隤�',
-    showClose:false,
-    showConfirmButton:true,
-    confirmButtonText:'蝣箄��',
-    customClass:'pam-message-box',
-    closeOnClickModal:false,
-  });
-}
\ No newline at end of file
+function showErrorMessageBox(error:any):void{
+  // console.log('error', error, error.response);
+  if(!_.includes(notRequireInterceptorErrorUrl,error.config.url)){
+    switch (error.response.status) {
+      case 401:
+        Promise.all([ErrorMessageBox('���暹��'),window.$nuxt.$store.dispatch('localStorage/actionStorageClear')]).then(()=>{
+          location.href='/';
+        });
+        break;
+
+      default:
+        ErrorMessageBox('', error);
+        break;
+    }
+  }
+};

--
Gitblit v1.8.0