From 5888e32fb99675ac64a4c25ee66d1909083b1c02 Mon Sep 17 00:00:00 2001 From: zuozhengqing <a13193816592@163.com> Date: 星期三, 20 十二月 2023 19:34:24 +0800 Subject: [PATCH] jwt为空时跳转至aps登录页 --- src/views/supplierManage/supplier/index.vue | 1 src/common/untils/request.js | 56 +++++++++++++++++++++++++--- src/views/purchaseManage/purchase/components/AddPurchase.vue | 7 ++- src/components/layout/components/appsidebar/index.vue | 8 ++++ 4 files changed, 64 insertions(+), 8 deletions(-) diff --git a/src/common/untils/request.js b/src/common/untils/request.js index a69a0ae..3e507c4 100644 --- a/src/common/untils/request.js +++ b/src/common/untils/request.js @@ -2,11 +2,36 @@ import { Message } from "element-ui" // 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 Axios = axios.create({ responseType: "json", withCredentials: true // 鏄惁鍏佽甯ookie杩欎簺 }) +const getApsPage = () => { + // 棣栭〉閮ㄧ讲鍦ㄥ悇涓幆澧冪殑绔彛 + const loginPathMap = { + prod:`//${window.location.hostname}:9080`, + test:`//192.168.20.119:9080`, + dev: `//192.168.8.107:8080` + } + return loginPathMap[environmentType()] +} /* //POST浼犲弬搴忓垪鍖�(娣诲姞璇锋眰鎷︽埅鍣�) */ Axios.interceptors.request.use( @@ -20,6 +45,9 @@ /(?:(?:^|.*;\s*)token\s*=\s*([^;]*).*$)|^.*$/, "$1", ); + if (isDev){ + token = token || DEV_TOKEN + } if (token) { config.headers.Authorization = "Bearer " + token; } @@ -36,16 +64,32 @@ /* //瀵瑰搷搴旀暟鎹仛浜涗簨 */ if (res.data.code === 200) { return res.data ? res.data : {} - } else { - Message({ - message: res.data.msg, - type: "error", - duration: 5 * 1000 - }) + } else if([2012,2013,2014,2015].includes(res.data.code)){ + if (isDev){ + alert("JWT澶辨晥,鍗冲皢璺宠浆鑷崇櫥褰曢〉..") + window.location = getApsPage()+'/login' + }else { + // JWT閴存潈澶辨晥 璺宠浆鍒扮櫥褰曢〉 + window.location = getApsPage()+'/login' + } + // Message({ + // message: res.data.msg, + // type: "error", + // duration: 5 * 1000 + // }) return Promise.reject(res.data) } }, (error) => { + if(error.response.status === 401){ + if (isDev){ + alert("JWT澶辨晥,鍗冲皢璺宠浆鑷崇櫥褰曢〉..") + window.location = getApsPage()+'/login' + }else { + // JWT閴存潈澶辨晥 璺宠浆鍒扮櫥褰曢〉 + window.location = getApsPage()+'/login' + } + } let { message } = error if (message === "Network Error") { message = "鍚庣鎺ュ彛杩炴帴寮傚父" diff --git a/src/components/layout/components/appsidebar/index.vue b/src/components/layout/components/appsidebar/index.vue index 4eacae5..0087b25 100644 --- a/src/components/layout/components/appsidebar/index.vue +++ b/src/components/layout/components/appsidebar/index.vue @@ -25,6 +25,7 @@ </el-submenu> </el-menu> + <el-empty v-if="this.menus===null||this.menus===undefined||this.menus.length===0" :image-size="130" description="娌℃湁渚ф爮鑿滃崟"></el-empty> </div> </div> </template> @@ -61,4 +62,11 @@ <!-- Add "scoped" attribute to limit CSS to this component only --> <style lang="scss" scoped> @import "./index.scss"; +::v-deep .el-empty{ + .el-empty__description{ + p{ + color: #dddd; + } + } +} </style> diff --git a/src/views/purchaseManage/purchase/components/AddPurchase.vue b/src/views/purchaseManage/purchase/components/AddPurchase.vue index f782552..066be0a 100644 --- a/src/views/purchaseManage/purchase/components/AddPurchase.vue +++ b/src/views/purchaseManage/purchase/components/AddPurchase.vue @@ -54,7 +54,7 @@ > <el-option v-for="ele in plcBrandList" - :key="ele.name" + :key="ele.purchaseTypeId" :label="ele.name" :value="ele.id" ></el-option> @@ -373,6 +373,7 @@ } }, created() { + console.log(this.editConfig,"鍙傛暟") this.handleGetBomKindDictList() this.$store.dispatch("getSupplier") this.formInfo() @@ -446,13 +447,15 @@ this.plcBrandList = res.data this.setTableForm() if (val) { + // this.plcBrandList.map((item)=>{ + // item.purchaseTypeId=item.id + // }) for (let i in this.plcBrandList) { if (this.plcBrandList[i][this.editRow.isDefault]) { this.editConfig.infomation.purchaseTypeId = this.editConfig.infomation.purchaseTypeId ? this.editConfig.infomation.purchaseTypeId : this.plcBrandList[i].id this.$set(this.editConfig.infomation, "purchaseTypeId", this.editConfig.infomation.purchaseTypeId) - break } } diff --git a/src/views/supplierManage/supplier/index.vue b/src/views/supplierManage/supplier/index.vue index 279bc87..c17d048 100644 --- a/src/views/supplierManage/supplier/index.vue +++ b/src/views/supplierManage/supplier/index.vue @@ -447,6 +447,7 @@ this.editPurchaseConfig.title = "鏂板缓" this.editPurchaseConfig.infomation = { supplierId: this.selectRow.id, + purchaseTypeId:"2", supplierName: this.selectRow.name } } -- Gitblit v1.8.0