From a10e10435ee2d6aab8e2475d8a268dd6cf8e6d28 Mon Sep 17 00:00:00 2001 From: songshankun <songshankun@foxmail.com> Date: 星期五, 03 十一月 2023 14:49:43 +0800 Subject: [PATCH] feat: 接入 jwt token --- src/views/overview/AddOverviewDialog.vue | 10 +- src/views/reportForm/inventoryReport/index.vue | 4 src/views/warehouseManage/bussinessType/AddBussinessType.vue | 4 src/views/warehouseManage/warehouse/index.vue | 6 +- src/common/untils/request.js | 61 ++++++++++++++++++- src/views/overview/index.vue | 8 +- src/api/warehouseManage/warehouse.js | 13 ++- src/api/common/other.js | 8 +- src/components/makepager/CommonFormTableView.vue | 4 src/api/reportForm/inventoryRwport.js | 7 +- src/api/overview/overview.js | 13 ++- src/views/warehouseManage/bussinessType/index.vue | 6 +- 12 files changed, 102 insertions(+), 42 deletions(-) diff --git a/src/api/common/other.js b/src/api/common/other.js index 08db148..733ab2b 100644 --- a/src/api/common/other.js +++ b/src/api/common/other.js @@ -1,9 +1,11 @@ // import request from "@/common/untils/request.js" -import axios from "axios" +import request from "@/common/untils/request"; // 鏌ヨ鍏徃鍒楄〃 -export const getCompanyList = async (data) => { - return await axios.get(`/api-wms/v1/company/company`, { +export const getCompanyList = (data) => { + return request({ + url: "/api-wms/v1/company/company", + method: "get", params: data }) } diff --git a/src/api/overview/overview.js b/src/api/overview/overview.js index 3e2190b..2420df3 100644 --- a/src/api/overview/overview.js +++ b/src/api/overview/overview.js @@ -1,15 +1,18 @@ import request from "@/common/untils/request.js" -import axios from "axios" // 鏌ヨ涓氬姟绫诲瀷鍒楄〃 -export const getOperationType = async (data) => { - return await axios.get(`/api-wms/v1/operationType/operationType`, { +export const getOperationType = (data) => { + return request({ + url: "/api-wms/v1/operationType/operationType", + method: "get", params: data }) } // 鏌ヨ涓氬姟绫诲瀷鍒楄〃--鍐呴儴璋冩嫧 -export const getListTransfer = async (data) => { - return await axios.get(`/api-wms/v1/operationType/listTransfer`, { +export const getListTransfer = (data) => { + return request({ + url: "/api-wms/v1/operationType/listTransfer", + method: "get", params: data }) } diff --git a/src/api/reportForm/inventoryRwport.js b/src/api/reportForm/inventoryRwport.js index 114eb10..68eaa3a 100644 --- a/src/api/reportForm/inventoryRwport.js +++ b/src/api/reportForm/inventoryRwport.js @@ -1,6 +1,5 @@ // 搴撳瓨鎶ヨ〃 import request from "@/common/untils/request.js" -import axios from "axios" // 鑾峰彇搴撳瓨鎶ヨ〃 @@ -13,8 +12,10 @@ } // 浠撳簱绫诲瀷鍒楄〃 -export const getWarehouseList = async (data) => { - return await axios.get(`/api-wms/v1/warehouse/warehouse`, { +export const getWarehouseList = (data) => { + return request({ + url: "/api-wms/v1/warehouse/warehouse", + method: "get", params: data }) } diff --git a/src/api/warehouseManage/warehouse.js b/src/api/warehouseManage/warehouse.js index 94ce3d5..d9b2874 100644 --- a/src/api/warehouseManage/warehouse.js +++ b/src/api/warehouseManage/warehouse.js @@ -1,9 +1,10 @@ import request from "@/common/untils/request.js" -import axios from "axios" // 浠撳簱鍒楄〃 -export const getWarehouseList = async (data) => { - return await axios.get(`/api-wms/v1/warehouse/warehouse`, { +export const getWarehouseList = (data) => { + return request({ + url: "/api-wms/v1/warehouse/warehouse", + method: "get", params: data }) } @@ -32,8 +33,10 @@ }) } // 涓氬姟绫诲瀷 鍒楄〃 -export const getOperationTypeList = async (data) => { - return await axios.get(`/api-wms/v1/operationType/operationType`, { +export const getOperationTypeList = (data) => { + return request({ + url: "/api-wms/v1/operationType/operationType", + method: "get", params: data }) } diff --git a/src/common/untils/request.js b/src/common/untils/request.js index 9270bbc..ef8fcc9 100644 --- a/src/common/untils/request.js +++ b/src/common/untils/request.js @@ -3,6 +3,35 @@ // import router from '@/router' +// 寮�鍙戠幆澧冧笅灏嗚嚜宸辩殑token澶嶅埗鍒拌繖閲�, 涔熷彲浠ュ湪娴忚鍣ㄤ腑鎵嬪姩娣诲姞token鍒癱ookie涓�,cookie涓殑token浼樺厛 +const DEV_TOKEN = '' +function environmentType(){ + let type + if (location.href.includes('192.168.20.119')) { + type = 'test' + } else if (location.href.includes('192.168') || location.href.includes('localhost')) { + type = 'dev' + } else { + type = 'prod' + } + + return type +} +const isDev = environmentType() === 'dev' + +const getApsPage = () => { + // 棣栭〉閮ㄧ讲鍦ㄥ悇涓幆澧冪殑绔彛 + const loginPathMap = { + prod:`//${window.location.hostname}:9080`, + test:`//192.168.20.119:9080`, + // 鎯宠烦鍒版湰鍦板惎鍔ㄧ殑鐧诲綍椤电殑璇濋渶瑕佹妸dev鏀规垚浣犳湰鍦伴」鐩矾寰� + dev: `//192.168.20.124:8081` + } + + return loginPathMap[environmentType()] +} + + const Axios = axios.create({ responseType: "json", withCredentials: true // 鏄惁鍏佽甯ookie杩欎簺 @@ -11,11 +40,16 @@ /* //POST浼犲弬搴忓垪鍖�(娣诲姞璇锋眰鎷︽埅鍣�) */ Axios.interceptors.request.use( (config) => { - // 鑻ユ槸鏈夊仛閴存潈token , 灏辩粰澶撮儴甯︿笂token - // let token = util.cookies.get("token"); - // if (token != undefined) { - // config.headers.Authorization = "Bearer " + token; - // } + let token = document.cookie.replace( + /(?:(?:^|.*;\s*)token\s*=\s*([^;]*).*$)|^.*$/, + "$1", + ); + if (isDev){ + token = token || DEV_TOKEN + } + if (token) { + config.headers.Authorization = "Bearer " + token; + } return config }, @@ -30,6 +64,14 @@ /* //瀵瑰搷搴旀暟鎹仛浜涗簨 */ if (res.data.code === 200) { return res.data ? res.data : {} + }else if([2012,2013,2014,2015].includes(res.data.code)){ + if (isDev){ + alert("JWT澶辨晥") + }else { + // JWT閴存潈澶辨晥 璺宠浆鍒扮櫥褰曢〉 + window.location = getApsPage()+'/login' + } + return Promise.reject(res.data) } else { Message({ message: res.data.msg, @@ -40,6 +82,15 @@ } }, (error) => { + if (error.response.status === 401){ + if (isDev){ + alert("JWT澶辨晥") + }else { + // JWT閴存潈澶辨晥 璺宠浆鍒扮櫥褰曢〉 + window.location = getApsPage()+'/login' + } + } + let { message } = error if (message === "Network Error") { message = "鍚庣鎺ュ彛杩炴帴寮傚父" diff --git a/src/components/makepager/CommonFormTableView.vue b/src/components/makepager/CommonFormTableView.vue index 39f484e..d2d5e5b 100644 --- a/src/components/makepager/CommonFormTableView.vue +++ b/src/components/makepager/CommonFormTableView.vue @@ -504,8 +504,8 @@ async getCompanyList() { await getCompanyList().then((res) => { console.log(res) - if (res.data.code === 200) { - this.companyOptions = res.data.data + if (res.code === 200) { + this.companyOptions = res.data } }) }, diff --git a/src/views/overview/AddOverviewDialog.vue b/src/views/overview/AddOverviewDialog.vue index 19c0ba2..e11476a 100644 --- a/src/views/overview/AddOverviewDialog.vue +++ b/src/views/overview/AddOverviewDialog.vue @@ -365,8 +365,8 @@ async getCompanyList() { await getCompanyList().then((res) => { console.log(res) - if (res.data.code === 200) { - this.companyOptions = res.data.data + if (res.code === 200) { + this.companyOptions = res.data } }) }, @@ -391,9 +391,9 @@ page: 0, pageSize: 0 }).then((res) => { - console.log(res.data.data) - if (res.data.code === 200) { - const list = res.data.data.map((item) => { + console.log(res.data) + if (res.code === 200) { + const list = res.data.map((item) => { return { name: item.name, id: item.id diff --git a/src/views/overview/index.vue b/src/views/overview/index.vue index 68f17c7..a4b17f1 100644 --- a/src/views/overview/index.vue +++ b/src/views/overview/index.vue @@ -99,15 +99,15 @@ page: this.pagerOptions.currPage, pageSize: this.pagerOptions.pageSize }).then((res) => { - console.log(res.data.data) - if (res.data.code === 200) { - const list = res.data.data.map((item) => { + console.log(res.data) + if (res.code === 200) { + const list = res.data.map((item) => { return { ...item } }) this.tableList = list || [] - this.pagerOptions.totalCount = res.data.total + this.pagerOptions.totalCount = res.total } }) }, diff --git a/src/views/reportForm/inventoryReport/index.vue b/src/views/reportForm/inventoryReport/index.vue index d3b066d..eaef51d 100644 --- a/src/views/reportForm/inventoryReport/index.vue +++ b/src/views/reportForm/inventoryReport/index.vue @@ -399,8 +399,8 @@ page: this.pagerOptions.currPage, pageSize: this.pagerOptions.pageSize }).then((res) => { - if (res.data.code === 200) { - this.warehouseList = res.data.data + if (res.code === 200) { + this.warehouseList = res.data } }) } diff --git a/src/views/warehouseManage/bussinessType/AddBussinessType.vue b/src/views/warehouseManage/bussinessType/AddBussinessType.vue index 39d532e..b3d2827 100644 --- a/src/views/warehouseManage/bussinessType/AddBussinessType.vue +++ b/src/views/warehouseManage/bussinessType/AddBussinessType.vue @@ -280,8 +280,8 @@ page: 0, pageSize: 0 }).then((res) => { - if (res.data.code == 200) { - this.warehouseList = res.data.data ? res.data.data : [] + if (res.code == 200) { + this.warehouseList = res.data ? res.data : [] } }) }, diff --git a/src/views/warehouseManage/bussinessType/index.vue b/src/views/warehouseManage/bussinessType/index.vue index 3f6eeea..679d229 100644 --- a/src/views/warehouseManage/bussinessType/index.vue +++ b/src/views/warehouseManage/bussinessType/index.vue @@ -108,10 +108,10 @@ page: this.pagerOptions.currPage, pageSize: this.pagerOptions.pageSize }).then((res) => { - if (res.data.code === 200) { - const list = res.data.data + if (res.code === 200) { + const list = res.data this.tableList.tableInfomation = list || [] - this.pagerOptions.totalCount = res.data.data.total + this.pagerOptions.totalCount = res.total } }) }, diff --git a/src/views/warehouseManage/warehouse/index.vue b/src/views/warehouseManage/warehouse/index.vue index 3cacba9..03e589f 100644 --- a/src/views/warehouseManage/warehouse/index.vue +++ b/src/views/warehouseManage/warehouse/index.vue @@ -125,10 +125,10 @@ page: this.pagerOptions.currPage, pageSize: this.pagerOptions.pageSize }).then((res) => { - if (res.data.code == 200) { - const list = res.data.data?res.data.data:[] + if (res.code == 200) { + const list = res.data?res.data:[] this.tableList.tableInfomation = list - this.pagerOptions.totalCount = res.data.total + this.pagerOptions.totalCount = res.total } }) }, -- Gitblit v1.8.0