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

238 lines
7.3 KiB
JavaScript

3 months ago
import common from './common.js'
console.log('common',common);
4 months ago
// let ajaxUrl = "http://192.168.3.83:8001";
3 months ago
// let ajaxUrl = "https://daotian.matripe.com.cn";
let ajaxUrl = common.store().baseUrl;
6 months ago
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
if (uni.getSystemInfoSync().osName == "android") {
uuid_new = "from_android_applyAssistantUniapp"
} else {
uuid_new = "from_ios_applyAssistantUniapp"
}
// #endif
params = {
3 months ago
'requestComeFrom': 'assistant_miniapp',
6 months ago
// #ifdef APP-PLUS
'g-open-env': 'APP-PLUS',
appId: uuid_new,
6 months ago
// 请求来源标识 1.小程序 2.app 3.网页
appClassify: 2,
appName: encodeURIComponent('报名助手')
6 months ago
// #endif
// #ifdef H5
'g-open-env': 'H5',
appId: '',
6 months ago
appClassify: 3,
appName: encodeURIComponent('报名助手')
6 months ago
// #endif
// #ifdef MP-WEIXIN
'g-open-env': 'MP-MINI',
appId: uni.getAccountInfoSync().miniProgram.appId,
6 months ago
appClassify: 1,
appName: encodeURIComponent('报名助手')
6 months ago
// #endif
// #ifdef MP-TOUTIAO
'g-open-env': 'MP-TOUTIAO',
appId: tt.getEnvInfoSync().microapp.appId,
subAppId: uni.getStorageSync('subAppId'),
6 months ago
appClassify: 1,
appName: encodeURIComponent('报名助手')
6 months ago
// #endif
// #ifdef MP-KUAISHOU
'g-open-env': 'MP-KUAISHOU',
appId: "",
6 months ago
appClassify: 1,
appName: encodeURIComponent('报名助手')
6 months ago
// #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';
}
6 months ago
for (const k in $parmas) {
if ($parmas[k] == undefined || $parmas[k] == 'undefined') {
$parmas[k] = ''
}
}
3 months ago
// console.log("公共参数,+++++", Object.assign($parmas, that.setPublicParams()));
3 months ago
uni.getNetworkType({
success: function (res) {
console.log('resresresres networkType',res);
if (res.networkType !== 'none') {
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;
3 months ago
3 months ago
if (resData.status == 200) {// 正常
callback(resData.data, resData.msg);
} else if (resData.status == 9999) {// 登录过期或者身份变动等需要登录的场景
uni.showToast({
title: resData.msg,
icon: "none"
});
failback(resData);
setTimeout(() => {
uni.reLaunch({
url: '/root/person/loginIndex?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,
// title:'系统异常,请稍后',
icon: "none"
});
failback(resData.msg);
// }
} else if (resData.status == 2002) {
uni.showToast({
title: '已切换团队,需要重新登录',
icon: "none"
});
setTimeout(() => {
uni.reLaunch({
url: '/root/person/loginIndex?path=/pages/home/index&level=' + that.getPathCopy().level
});
}, 1500);
} else {// 其他异常
if ($url == '/yishoudan/user/apply/order/V2/details') {
3 months ago
3 months ago
} else {
uni.showToast({
title: resData.msg,
icon: "none"
});
}
3 months ago
3 months ago
failback(resData.msg);
}
},
fail (error) {
uni.showToast({
// title: error.errMsg,
title: '系统异常,请稍后',
icon: "none"
})
failback(error);
}
});
6 months ago
}
},
3 months ago
})
6 months ago
},
// 头像上传
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: ''
};
}
},
3 months ago
//监听用户的页面点击
watchUserPage (path) {
let that = this;
try {
if (uni.getStorageSync("apply-userinfo")) {
that.Post("/common/user/browsing/history/addRecord", { browsingUrl: path }, (res) => { });
}
} catch (error) {
console.log("error", error);
}
},
6 months ago
};
export default data;