货无忧
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

146 lines
3.2 KiB

2 years ago
import store from "@/store/index.js";
import utils from '@/utils/utils.js'
import functions from '@/utils/functions.js'
import {
host,
APPKEY
} from "@/config/host";
2 years ago
import base64 from '@/utils/base64.js';
import {
hexMD5
} from '@/utils/md5.js'
// import {
// useUserStore
// } from "@/store/uaeUserStore";
// import {
// storeToRefs
// } from 'pinia';
// const userStore = useUserStore()
// const {
// HANDLE_ACCTOKEN,
// HANDLE_ISLOGIN,
// HANDLE_REFTOKEN,
// HANDLE_USERINFO
// } = userStore
2 years ago
const service = (params) => {
return new Promise((relove, reject) => {
let refresh_token = uni.getStorageSync('refresh_token')
let token = uni.getStorageSync('access_token')
let user = uni.getStorageSync('userinfo')
let header = {};
if (user && token && refresh_token) {
store.commit('updateislog', true)
store.commit('updaterftk', refresh_token)
store.commit('updatetk', token)
store.commit('updatauser', user)
header['Blade-Auth'] = `bearer ${store.state.access_token}`
} else {
if (!token && params.url.indexOf('oauth/token') == -1) {
2 years ago
uni.navigateTo({
url: '/pages/login/login'
2 years ago
})
functions.error('请登录')
}
}
header.Authorization = `Basic ${base64.encode(APPKEY)}`
2 years ago
// return
if (params.url.indexOf('blade-auth/oauth/token') != -1) {
header['Content-Type'] = 'application/x-www-form-urlencoded'
header['Tenant-Id'] = params.data.tenantId
params.data.password = hexMD5(params.data.password)
2 years ago
}
2 years ago
// uni.showLoading({
// title:'请求中',
// mask:true
// })
let urlhd = ''
if (uni.getStorageSync('setip')) {
urlhd = uni.getStorageSync('setip')
} else {
urlhd = host
}
function req() {
2 years ago
uni.request({
url: urlhd + params.url,
2 years ago
data: params.data,
method: params.method,
// dataType: "json",
header
}).then(res => {
// console.log(res);
uni.hideLoading()
if (res.statusCode == 200) {
2 years ago
let data = res.data;
// #ifdef APP
utils.ttsspke(data.audio || '')
2 years ago
// #endif
if (data.code != 200 && data?.msg) {
uni.showToast({
title: data?.msg || '',
icon: 'none'
})
} else if (data.audio) {
uni.showToast({
title: data.msg,
icon: 'none'
})
}
2 years ago
switch (data.code) {
case 200:
relove(data);
break;
case 203:
relove(data);
break;
default:
relove(data);
break;
2 years ago
}
2 years ago
} else {
if (res.statusCode == 400) {
2 years ago
relove({});
return
} else if (res.statusCode == 500) {
2 years ago
functions.error('接口出错,请联系后端开发人员')
// #ifdef APP
utils.ttsspke('接口出错,请联系后端开发人员')
// #endif
return
} else if (res.statusCode == 401) {
uni.navigateTo({
url: '/pages/login/login'
})
functions.error('请登录')
return
}
2 years ago
functions.error('连接服务器失败')
// #ifdef APP
utils.ttsspke('连接服务器失败')
// #endif
}
}).catch(err => {
2 years ago
console.log(err);
functions.error('请检查是否连接到无线网络')
// #ifdef APP
utils.ttsspke('请检查是否连接到无线网络')
// #endif
uni.hideLoading()
})
}
req()
})
}
export default service;