保誠-保戶業務員媒合平台
Mila
2021-12-22 f284035d9725911d5f9bf2c3fbfbbeb61c3e97b9
Merge branch 'master' of https://192.168.0.10:8443/r/pcalife/PAM
刪除1個檔案
修改3個檔案
新增1個檔案
80 ■■■■ 已變更過的檔案
PAMapp/pages/consultantLogin/index.vue 10 ●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
PAMapp/pages/login/index.vue 8 ●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
PAMapp/shared/errorService.ts 25 ●●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
PAMapp/shared/services/httpClient.ts 7 ●●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
PAMapp/shared/services/message-box.service.ts 30 ●●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
PAMapp/pages/consultantLogin/index.vue
@@ -59,7 +59,7 @@
  import { Vue, Component , namespace } from 'nuxt-property-decorator';
  import { AxiosError } from 'axios';
  import { Role } from '~/shared/models/enum/role';
  import ErrorMessageBox from '~/shared/errorService';
  import messageBoxService from '~/shared/services/message-box.service';
  import loginService from '~/shared/services/login.service'
  const roleStorage = namespace('localStorage');
@@ -103,7 +103,7 @@
    }
    public sendInfo():void{
      this.isAlreadyDone ? this.verify() : ErrorMessageBox('請確認帳號、密碼以及驗證碼是否填寫完畢');
      this.isAlreadyDone ? this.verify() : messageBoxService.showErrorMessage('請確認帳號、密碼以及驗證碼是否填寫完畢');
    }
@@ -123,7 +123,7 @@
        }else{
          this.clearValue();
          this.regenerateImgOfVerification();
          ErrorMessageBox('驗證碼輸入錯誤');
          messageBoxService.showErrorMessage('驗證碼輸入錯誤');
        }
      });
    }
@@ -145,11 +145,11 @@
      switch (error.response.status) {
        case 401:
          const errorMsg = error.response.data.detail;
          ErrorMessageBox(errorMsg);
          messageBoxService.showErrorMessage(errorMsg);
          break;
        default:
          ErrorMessageBox('',error);
          messageBoxService.showErrorMessage('',error);
          break;
      }
    }
PAMapp/pages/login/index.vue
@@ -335,7 +335,6 @@
<script lang="ts">
import { namespace } from 'nuxt-property-decorator';
import { Vue, Component, Ref } from 'vue-property-decorator';
import ErrorMessageBox from '~/shared/errorService';
import { OtpErrorCode } from '~/shared/models/enum/otpErrorCode';
import { Role } from '~/shared/models/enum/role';
import { LoginRequest } from '~/shared/models/loginRequest.model';
@@ -343,6 +342,7 @@
import { OtpInfo } from '~/shared/models/otpInfo.model';
import { RegisterInfo } from '~/shared/models/registerInfo';
import loginService from '~/shared/services/login.service';
import messageBoxService from '~/shared/services/message-box.service';
const roleStorage = namespace('localStorage');
@@ -474,7 +474,7 @@
        this.startOtpCount(type);
      } else {
        const errorMsg = OtpErrorCode[otpInfo.failCode] ? OtpErrorCode[otpInfo.failCode]:'OTP系統錯誤';
        ErrorMessageBox(errorMsg);
        messageBoxService.showErrorMessage(errorMsg);
      }
    });
  };
@@ -543,7 +543,7 @@
    switch (error.response.status) {
        case 401:
          const errorMsg = OtpErrorCode[error.response?.data?.detail] ? OtpErrorCode[error.response?.data?.detail]:'OTP系統錯誤';
          ErrorMessageBox(errorMsg);
          messageBoxService.showErrorMessage(errorMsg);
          break;
        case 403:
          this.registerDialogVisible = true;
@@ -555,7 +555,7 @@
          }, 1000);
          break;
        default:
          ErrorMessageBox('',error);
          messageBoxService.showErrorMessage('',error);
          break;
      }
  }
PAMapp/shared/errorService.ts
Àɮפw§R°£
PAMapp/shared/services/httpClient.ts
@@ -1,7 +1,8 @@
import { AxiosRequestConfig, AxiosError, AxiosResponse} from 'axios';
import ErrorMessageBox from '../errorService';
import axios from 'axios';
import _ from 'lodash';
import messageBoxService from './message-box.service';
const notRequireInterceptorErrorUrl = [
  '/otp/verify',
@@ -59,13 +60,13 @@
    if (!_.includes(notRequireInterceptorErrorUrl, error.config.url)) {
      switch (error.response.status) {
        case 401:
          Promise.all([ErrorMessageBox('登入逾時'), window.$nuxt.$store.dispatch('localStorage/actionStorageClear')]).then(() => {
          Promise.all([messageBoxService.showErrorMessage('登入逾時'), window.$nuxt.$store.dispatch('localStorage/actionStorageClear')]).then(() => {
            _.isEqual(window.$nuxt.$route.name, 'index') ? location.reload() : window.$nuxt.$router.push('/');
          });
          break;
        default:
          ErrorMessageBox('', error);
          messageBoxService.showErrorMessage('', error);
          break;
      }
    }
PAMapp/shared/services/message-box.service.ts
¤ñ¹ï·sÀÉ®×
@@ -0,0 +1,30 @@
import { MessageBox } from 'element-ui';
import { MessageBoxData } from "element-ui/types/message-box";
import _ from "lodash";
class MessageBoxService {
  showErrorMessage(errorMsg?:string, errorObj?: any): Promise<MessageBoxData> {
    const messageBoxConfig = {
      message: errorMsg
      ? `${this.breakTextByComma(errorMsg)}`
      : `<div class="message-header"> ç³»çµ±ç™¼ç”ŸéŒ¯èª¤: ${errorObj?.response?.status} </div>
          <div class="message-content">${errorObj?.response?.data?.detail}</div>`,
      dangerouslyUseHTMLString: true,
      showClose:false,
      showConfirmButton:true,
      confirmButtonText:'確認',
      customClass:'pam-message-box',
      closeOnClickModal:false,
    };
    return MessageBox(messageBoxConfig);
  }
  // æš«æ™‚用逗號去斷行
  private breakTextByComma(errorMsg:string):string{
    return _.split(errorMsg,",").join('<br>');
  }
}
export default new MessageBoxService();