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.

257 lines
7.1 KiB
JavaScript

import { back, showModal } from "./traoAPI";
import { WCUserLogin } from "./Interface";
import { getGlobalData, setGlobalData } from "./global";
import Taro from "@tarojs/taro";
import formdata from "./wx-formdata/formData";
export const Ajax = (params) => {
const app = Taro.getApp();
// const domain = getGlobalData("domain")
const domain = getGlobalData("domain") || "http://192.168.10.147:80";
// console.log("Ajaxdomain", app, domain);
// Taro.showLoading({
// title: '请求中...',
// mask: true
// });
// 防止多次点击
const requestUrlList = getGlobalData("requestUrlList") || [];
const whiteList = []; // 白名单
if (
requestUrlList.indexOf(params.url) > -1 &&
whiteList.indexOf(params.url) < 0
) {
return;
} else {
requestUrlList.push(params.url);
}
return new Promise((reslove, reject) => {
Taro.request({
url: domain + params.url,
method: params.method || "GET",
header: {
// Authorization: "Bearer " + getGlobalData("token") || "",
Authorization: "Bearer " + Taro.getStorageSync("token"),
...params.header,
},
data: params.data,
success(res) {
if (res.statusCode !== 200) {
if (res.statusCode == 403) {
showModal({
t2: "登录已过期,请重新登录",
btn1show: false,
}).then((res) => {
setGlobalData("token", null);
Taro.reLaunch({
// url: "/pages/login/login",
url: "/pages/initiate/initiate",
});
});
return;
}
showModal({
t2: String("错误码:" + res.statusCode),
btn1show: false,
});
return false;
}
if (params.url == "/Api/ReadFileInstrument") {
reslove(res);
return false;
}
if (res.data.code !== 200) {
let msg =
typeof res.data.msg == "string" ? res.data.msg : "没内容提示";
if (msg == "请不要操作太快哦") {
reject(res);
return false;
}
const noTipsCodes = [5001, 5002, 5003];
if (noTipsCodes.indexOf(res.data.code) == -1) {
showModal({
t2: msg,
btn1show: false,
}).then(() => {
reject(res);
if (res.data.code == 403 || res.data.msg === "登录状态已过期") {
setGlobalData("token", null);
Taro.reLaunch({
// url: "/pages/login/login",
url: "/pages/initiate/initiate",
});
}
});
} else {
reject(res);
}
return false;
}
reslove(res);
},
fail(err) {
console.log(err);
Taro.showModal({
title: "提示",
content: "请检查网络是否连接",
showCancel: false,
});
},
complete() {
Taro.hideLoading();
const requestUrlList = getGlobalData("requestUrlList");
const newRequestUrlList = requestUrlList.splice(
requestUrlList.indexOf(params.url),
1
);
},
});
});
};
export const AjaxuploadFile = (params) => {
const app = getApp();
const domain = getGlobalData("domain");
// Taro.showLoading({
// title: "请求中...",
// mask: true,
// });
return new Promise((reslove, reject) => {
Taro.uploadFile({
filePath: params.filePath,
name: "file",
url: domain + params.url,
formData: {
type: "api",
},
header: {
token: getGlobalData("token") || Taro.getStorageSync("token"),
},
success(res) {
let o = JSON.parse(res.data);
Taro.hideLoading();
if (res.statusCode !== 200) {
Taro.showModal({
title: "提示",
content: "上传出错",
showCancel: false,
});
return false;
}
if (o.code !== 200) {
let msg = typeof o.msg == "string" ? o.msg : "没内容提示";
Taro.showModal({
title: "提示",
content: msg,
showCancel: false,
});
return false;
}
reslove(o);
},
fail() {
Taro.hideLoading();
Taro.showModal({
title: "提示",
content: "请检查网络是否连接",
showCancel: false,
});
},
});
});
};
export const AjaxFormData = (params) => {
const app = Taro.getApp();
const domain = getGlobalData("domain");
// 防止多次点击
const requestUrlList = getGlobalData("requestUrlList") || [];
const whiteList = ["/Api/MessageList"];
if (
requestUrlList.indexOf(params.url) > -1 &&
whiteList.indexOf(params.url) < 0
) {
return;
} else {
requestUrlList.push(params.url);
}
return new Promise((reslove, reject) => {
Taro.request({
url: domain + params.url,
method: params.method || "GET",
header: {
// Authorization: "Bearer " + getGlobalData("token") || "",
Authorization: "Bearer " + Taro.getStorageSync("token"),
...params.header,
"content-type": params.data.contentType,
},
data: params.data.buffer,
success(res) {
if (res.statusCode !== 200) {
if (res.statusCode == 403) {
showModal({
t2: "登录已过期,请重新登录",
btn1show: false,
}).then((res) => {
setGlobalData("token", null);
Taro.reLaunch({
url: "/pages/initiate/initiate",
});
});
return;
}
showModal({
t2: String("错误码:" + res.statusCode),
btn1show: false,
});
return false;
}
if (res.data.code !== 200) {
let msg =
typeof res.data.msg == "string" ? res.data.msg : "没内容提示";
if (msg == "请不要操作太快哦") {
reject(res);
return false;
}
const noTipsCodes = [5001, 5002, 5003];
if (noTipsCodes.indexOf(res.data.code) == -1) {
showModal({
t2: msg,
btn1show: false,
}).then(() => {
reject(res);
if (res.data.code == 403 || res.data.msg === "登录状态已过期") {
setGlobalData("token", null);
Taro.reLaunch({
url: "/pages/initiate/initiate",
});
}
});
} else {
reject(res);
}
return false;
}
reslove(res);
},
fail(err) {
console.log(err);
Taro.showModal({
title: "提示",
content: "请检查网络是否连接",
showCancel: false,
});
},
complete() {
Taro.hideLoading();
const requestUrlList = getGlobalData("requestUrlList");
const newRequestUrlList = requestUrlList.splice(
requestUrlList.indexOf(params.url),
1
);
},
});
});
};