Commit e84a3b32 by qinjianhui

feat: 供应商

parent 6cd1367e
window.apiHostSetting = {
VUE_APP_API_URL: '/',
VUE_APP_BASE_URL: '/',
VUE_APP_ZIMG_URL: '/',
VUE_APP_WS_URL: '/',
VUE_APP_TITLE: '九猫ERP',
VSRSION: '1.0.1',
UPDATE_DESCRIPTION: ``,
}
[
{
"id": 1,
"code": "Women Clothing",
"name": "女装"
},
{
"id": 3,
"code": "home",
"name": "家居",
"children": [
{
"id": 2,
"code": "home",
"name": "家居用品"
}
]
}
]
\ No newline at end of file
import axios from '../utils/axios.js'
export function getCategory() {
return axios.get('/json/category.js')
}
import Axios from 'axios'
// import { getToken } from '@/utils/auth'
import Vue from 'vue'
import router from '@/router'
const axios = Axios.create({
baseURL: window.apiHostSetting.VUE_APP_BASE_URL + '/api',
timeout: 30 * 1000,
})
axios.interceptors.request.use((config) => {
if (config.data && typeof config.data === 'object') {
const data = config.data
for (const key in data) {
if (data[key] === '') {
data[key] = null
}
}
config.data = data
}
// config.headers['jwt-token'] = getToken()
return config
})
axios.interceptors.response.use(
(res) => {
if (res.status === 200) {
if (res.data.code === 401) {
// token过期
Vue.prototype.$message({
type: 'error',
message: res.data.message,
})
sessionStorage.setItem('active', 'true')
// router
// .replace({
// name: 'login',
// })
// .catch((err) => {
// console.log(err)
// })
return Promise.reject(res.data)
} else if (res.data.code === 402) {
Vue.prototype.$message({
message: res.data.message,
type: 'warning',
})
return Promise.reject(res.data)
} else if (res.data.code === 403) {
console.log(Vue)
// token过期
Vue.prototype.$message({
type: 'error',
message: res.data.message,
})
router
.replace({
name: 'login',
})
.catch((err) => {
console.log(err)
})
return Promise.reject(res.data)
} else if (res.data.code === 500) {
Vue.prototype.$alert(
'<div style="max-height:500px;overflow:auto">' +
res.data.message +
'</div>',
'错误提示',
{
dangerouslyUseHTMLString: true,
}
)
}
} else {
if (res.status === 400) {
if (res.data) {
const fileReader = new FileReader()
fileReader.readAsText(res.data)
fileReader.onload = function (ev) {
console.log(ev.target.result)
Vue.prototype.$alert(ev.target.result, '提示', {
confirmButtonText: '确定',
callback: () => {},
})
}
} else {
Vue.prototype.$alert('请求参数有误', '提示', {
confirmButtonText: '确定',
callback: () => {},
})
}
} else if (res.status === 404) {
Vue.prototype.$alert('请求不存在', '提示', {
confirmButtonText: '确定',
callback: () => {},
})
}
}
return res.data
},
// 服务器状态码不是200的情况
(error) => {
Vue.prototype.$alert(error.message, 'Error', {
confirmButtonText: '确定',
callback: () => {},
})
return Promise.reject(error)
}
)
export default axios
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment