You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
apply-assistant-v3/utils/ajax.js

203 lines
6.1 KiB
JavaScript

// let ajaxUrl = "https://test.renminshitang.com.cn/daotian/api_dev";
let ajaxUrl = "https://daotian.matripe.com.cn";
let data = {
ajaxUrl: ajaxUrl,
Get ($url = '', $parmas = {}, callback = () => { }, failback = () => { }) {
let that = this,
params = {};
let promise = new Promise((resolve, reject) => {
params = $parmas;
resolve();
});
promise.then(() => {
that.postData($url, params, callback, failback, 'GET');
}).catch();
},
Post ($url = '', $parmas = {}, callback = () => { }, failback = () => { }) {
let that = this,
params = {};
let promise = new Promise((resolve, reject) => {
params = $parmas;
resolve();
});
promise.then(() => {
that.postData($url, params, callback, failback, 'POST');
}).catch();
},
Put ($url = '', $parmas = {}, callback = () => { }, failback = () => { }) {
let that = this,
params = {};
let promise = new Promise((resolve, reject) => {
params = $parmas;
resolve();
});
promise.then(() => {
that.postData($url, params, callback, failback, 'PUT');
}).catch();
},
setPublicParams () {
let that = this,
params = {};
let uuid_new = "";
// #ifdef APP-PLUS
// let mainActivity = plus.android.runtimeMainActivity();
// let Settings = plus.android.importClass("android.provider.Settings");
if (uni.getSystemInfoSync().osName == "android") {
uuid_new = "from_android_applyAssistantUniapp"
} else {
uuid_new = "from_ios_applyAssistantUniapp"
}
// let uuid = Settings.Secure.getString(mainActivity.getContentResolver(),Settings.Secure.ANDROID_ID);
// #endif
params = {
// #ifdef APP-PLUS
'g-open-env': 'APP-PLUS',
appId: uuid_new,
// 请求来源标识 1.小程序 2.app 3.网页
appClassify: 2,
appName: encodeURIComponent('发单助手')
// #endif
// #ifdef H5
'g-open-env': 'H5',
appId: '',
appClassify: 3,
appName: encodeURIComponent('发单助手')
// #endif
// #ifdef MP-WEIXIN
'g-open-env': 'MP-MINI',
appId: uni.getAccountInfoSync().miniProgram.appId,
appClassify: 1,
appName: encodeURIComponent('发单助手')
// #endif
// #ifdef MP-TOUTIAO
'g-open-env': 'MP-TOUTIAO',
appId: tt.getEnvInfoSync().microapp.appId,
subAppId: uni.getStorageSync('subAppId'),
appClassify: 1,
appName: encodeURIComponent('发单助手')
// #endif
// #ifdef MP-KUAISHOU
'g-open-env': 'MP-KUAISHOU',
appId: "",
appClassify: 1,
appName: encodeURIComponent('发单助手')
// #endif
}
return params
},
// 发送请求
postData ($url = '', $parmas = {}, callback = () => { }, failback = () => { }, $method) {
let that = this,
$header = {};
if (uni.getStorageSync("apply-token")) {
$header.Authorization = 'Bearer ' + uni.getStorageSync("apply-token");
}
if (uni.getStorageSync("apply-agencyId")) {
// console.log('uni.getStorageSync("apply-agencyId")', uni.getStorageSync("apply-agencyId"));
$header.Agencyid = uni.getStorageSync("apply-agencyId");
}
if ($parmas == '') {
$parmas = {};
}
if ($parmas.formdata || $method == "POST" || $method == "PUT") {
$header['content-type'] = 'application/x-www-form-urlencoded; charset=UTF-8';
}
console.log("公共参数,+++++", Object.assign($parmas, that.setPublicParams()));
uni.request({
url: ajaxUrl + $url,
data: Object.assign($parmas, that.setPublicParams()),
header: Object.assign($header, that.setPublicParams()),
method: $method,
success: (res) => {
// console.log('测试报错123123123123123123',res);
// console.log('测试报错123123123123123123$url',$url);
let resData = res.data;
if (resData.status == 200) {// 正常
callback(resData.data, resData.msg);
} else if (resData.status == 9999) {// 登录过期或者身份变动等需要登录的场景
uni.showToast({
title: resData.msg,
icon: "none"
});
setTimeout(() => {
uni.reLaunch({
url: '/pages/login/index?path=' + that.getPathCopy().path + '&level=' + that.getPathCopy().level
});
}, 1500);
} else if (resData.status == 500 || resData.status == 502) {// 某种原因导致接口提示该状态码
if (resData.msg == '系统异常,请稍后') {
uni.reLaunch({
url: '/root/other/error'
});
} else {
uni.showToast({
title: resData.msg,
icon: "none"
});
failback(resData.msg);
}
} else if (resData.status == 2002) {
uni.showToast({
title: resData.msg,
icon: "none"
});
setTimeout(() => {
uni.reLaunch({
url: '/pages/login/index?path=' + that.getPathCopy().path + '&level=' + that.getPathCopy().level
});
}, 1500);
} else {// 其他异常
uni.showToast({
title: resData.msg,
icon: "none"
});
failback(resData.msg);
}
},
fail (error) {
uni.showToast({
title: error.errMsg,
icon: "none"
})
failback(error);
}
});
},
// 头像上传
uploadFile ($file, callback = () => { }) {
let that = this;
uni.uploadFile({
url: ajaxUrl + '/user/changeUserImgsrc',
filePath: $file,
name: 'uploadFile',
header: Object.assign({
Authorization: 'Bearer ' + uni.getStorageSync("apply-token")
}, that.setPublicParams()),
formData: that.setPublicParams(),
success: (uploadFileRes) => {
callback(JSON.parse(uploadFileRes.data).data.url);
}
});
},
/* 获取当前path
*/
getPathCopy () {
const pages = getCurrentPages();
if (pages.length > 0) {
let _path = pages[pages.length - 1].route;
return {
path: _path,
level: _path.slice(0, 4)
}
} else {
return {
path: '',
level: ''
};
}
},
};
export default data;