2023-03-13 10:47:15 +08:00
|
|
|
|
let baseurl = "http://192.168.6.75";
|
|
|
|
|
let pathname = document.location.href;
|
2023-03-13 10:15:40 +08:00
|
|
|
|
|
|
|
|
|
function global_dev_fun(hots) {
|
2023-03-13 10:47:15 +08:00
|
|
|
|
if (hots.includes("test")) {
|
|
|
|
|
baseurl = "http://192.168.6.75";
|
|
|
|
|
return;
|
2023-03-13 10:15:40 +08:00
|
|
|
|
}
|
|
|
|
|
|
2023-03-13 10:47:15 +08:00
|
|
|
|
if (hots.includes("pre")) {
|
|
|
|
|
baseurl = "http://pre.marketapi.1688sup.com";
|
|
|
|
|
return;
|
2023-03-13 10:15:40 +08:00
|
|
|
|
}
|
|
|
|
|
|
2023-03-13 10:47:15 +08:00
|
|
|
|
if (
|
|
|
|
|
hots.includes("1688sup") ||
|
|
|
|
|
hots.includes("83323") ||
|
|
|
|
|
hots.includes("86885") ||
|
|
|
|
|
hots.includes("22233")
|
|
|
|
|
) {
|
2023-03-13 10:15:40 +08:00
|
|
|
|
baseurl = "https://marketapi.1688sup.com";
|
2023-03-13 10:47:15 +08:00
|
|
|
|
return;
|
|
|
|
|
}
|
2023-03-13 10:15:40 +08:00
|
|
|
|
}
|
|
|
|
|
|
2023-03-13 10:47:15 +08:00
|
|
|
|
global_dev_fun(pathname);
|
2023-03-13 10:15:40 +08:00
|
|
|
|
|
|
|
|
|
//统一请求
|
|
|
|
|
axios.interceptors.request.use((config) => {
|
|
|
|
|
// config.headers.Version = 'v1.3.0';
|
|
|
|
|
return config;
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
const req = {
|
|
|
|
|
//get请求
|
|
|
|
|
axiosGet(url, params) {
|
|
|
|
|
const obj = { method: "get", url: baseurl + url, params };
|
|
|
|
|
var result = axios(obj)
|
|
|
|
|
.then(function (res) {
|
|
|
|
|
return res.data;
|
|
|
|
|
})
|
|
|
|
|
.catch(function (error) {
|
|
|
|
|
return;
|
|
|
|
|
});
|
|
|
|
|
return result;
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
//获取key列表
|
|
|
|
|
axiosPostgetKey(url, data) {
|
|
|
|
|
let result = axios({
|
|
|
|
|
method: "post",
|
|
|
|
|
url: baseurl + url,
|
|
|
|
|
data: data,
|
|
|
|
|
header: {
|
|
|
|
|
"Content-type": "application/x-www-form-urlencoded",
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
.then((res) => {
|
|
|
|
|
return res;
|
|
|
|
|
})
|
|
|
|
|
.catch((error) => {
|
|
|
|
|
alert("服务器错误");
|
|
|
|
|
return "exception=" + error;
|
|
|
|
|
});
|
|
|
|
|
return result;
|
|
|
|
|
},
|
|
|
|
|
//post请求
|
|
|
|
|
axiosPost(url, data) {
|
|
|
|
|
let result = axios({
|
|
|
|
|
method: "post",
|
|
|
|
|
url: baseurl + url,
|
|
|
|
|
data: data,
|
|
|
|
|
header: {
|
|
|
|
|
"Content-type": "application/x-www-form-urlencoded",
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
.then((res) => {
|
|
|
|
|
return res.data;
|
|
|
|
|
})
|
|
|
|
|
.catch((error) => {
|
|
|
|
|
// return "exception=" + error
|
|
|
|
|
});
|
|
|
|
|
return result;
|
|
|
|
|
},
|
|
|
|
|
//put请求
|
|
|
|
|
axiosPut(url, data) {
|
|
|
|
|
let result = axios({
|
|
|
|
|
method: "put",
|
|
|
|
|
url: baseurl + url,
|
|
|
|
|
data: data,
|
|
|
|
|
header: {
|
|
|
|
|
"Content-type": "application/x-www-form-urlencoded",
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
.then((res) => {
|
|
|
|
|
return res.data;
|
|
|
|
|
})
|
|
|
|
|
.catch((error) => {
|
|
|
|
|
alert("服务器错误");
|
|
|
|
|
return "exception=" + error;
|
|
|
|
|
});
|
|
|
|
|
return result;
|
|
|
|
|
},
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
//图形验证码
|
|
|
|
|
function captchaimg() {
|
|
|
|
|
let parmas = {};
|
|
|
|
|
let customsessionid = "";
|
|
|
|
|
const xhr = new XMLHttpRequest();
|
|
|
|
|
xhr.open("GET", baseurl + "/auth/login/verify");
|
|
|
|
|
// xhr.setRequestHeader('Version', 'v1.1.0');
|
|
|
|
|
xhr.responseType = "arraybuffer";
|
|
|
|
|
xhr.onreadystatechange = function (response) {
|
|
|
|
|
response.header = {
|
|
|
|
|
Accept: "application/json",
|
|
|
|
|
"Content-Type": "application/x-www-form-urlencoded;charset=utf-8",
|
|
|
|
|
};
|
|
|
|
|
var img = document.getElementById("captcha_img");
|
|
|
|
|
var byteArray = new Uint8Array(response.target.response);
|
|
|
|
|
var binary = "";
|
|
|
|
|
for (var i = 0; i < byteArray.byteLength; i++) {
|
|
|
|
|
binary += String.fromCharCode(byteArray[i]);
|
|
|
|
|
}
|
|
|
|
|
let str = "data:image/png;base64," + window.btoa(binary);
|
|
|
|
|
img.src = str;
|
|
|
|
|
customsessionid = xhr.getResponseHeader("Unique-Str");
|
|
|
|
|
sessionStorage.setItem("unique_str", customsessionid);
|
|
|
|
|
};
|
|
|
|
|
xhr.send();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*公共方法提取 */
|
|
|
|
|
//商品的各种异常状态。1是可以兑换,不作提示
|
|
|
|
|
const product_status = (status, row) => {
|
|
|
|
|
let obj = {
|
|
|
|
|
2: "还没开始哟,兑换时间为" + row.begin_time + "至" + row.end_time, //未开始
|
|
|
|
|
3: "当前商品兑换已结束", //作废key批次
|
|
|
|
|
4: "亲,仅可兑换一次哦!", //仅兑换一次
|
|
|
|
|
5: "当前商品兑换次数达到上限", //累计次数达到上限
|
|
|
|
|
6: "暂无库存,看看其他商品吧~", //无库存
|
|
|
|
|
7: "当前商品不可兑换", //其他商品处于兑换中
|
|
|
|
|
8: "当前商品正在兑换中", //已兑换次数
|
|
|
|
|
10: "该商品暂无法兑换", //商品暂停
|
|
|
|
|
11: "兑换已过期,兑换时间为" + row.begin_time + "至" + row.end_time, //正常过期
|
|
|
|
|
22: "您有未支付的订单",
|
|
|
|
|
};
|
|
|
|
|
if (row.type == 2) {
|
|
|
|
|
//type:1 兑换码 2:立减金
|
|
|
|
|
obj["20"] =
|
|
|
|
|
"该立减金商品不在生效时间范围内,生效时间为" +
|
|
|
|
|
row.entity.time_limit.effect_time.start_time +
|
|
|
|
|
"至" +
|
|
|
|
|
row.entity.time_limit.effect_time.end_time; //不在生效时间范围内
|
|
|
|
|
obj["21"] =
|
|
|
|
|
"该立减金商品不在领取时间段内,领取时间段为" +
|
|
|
|
|
row.entity.time_limit.receive_time.start_time +
|
|
|
|
|
"至" +
|
|
|
|
|
row.entity.time_limit.receive_time.end_time; //不在领取时间范围内
|
|
|
|
|
}
|
|
|
|
|
return obj[status];
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/* 周天排序 */
|
|
|
|
|
function sortWeeks(weeks) {
|
|
|
|
|
var _weeks = []; //创建临时排序的数组
|
|
|
|
|
for (var i = 0; i < weeks.length; i++) {
|
|
|
|
|
if (weeks[i] == "周一") {
|
|
|
|
|
var _week = {};
|
|
|
|
|
_week["id"] = 1;
|
|
|
|
|
_week["name"] = "周一";
|
|
|
|
|
_weeks.push(_week);
|
|
|
|
|
}
|
|
|
|
|
if (weeks[i] == "周二") {
|
|
|
|
|
var _week = {};
|
|
|
|
|
_week["id"] = 2;
|
|
|
|
|
_week["name"] = "周二";
|
|
|
|
|
_weeks.push(_week);
|
|
|
|
|
}
|
|
|
|
|
if (weeks[i] == "周三") {
|
|
|
|
|
var _week = {};
|
|
|
|
|
_week["id"] = 3;
|
|
|
|
|
_week["name"] = "周三";
|
|
|
|
|
_weeks.push(_week);
|
|
|
|
|
}
|
|
|
|
|
if (weeks[i] == "周四") {
|
|
|
|
|
var _week = {};
|
|
|
|
|
_week["id"] = 4;
|
|
|
|
|
_week["name"] = "周四";
|
|
|
|
|
_weeks.push(_week);
|
|
|
|
|
}
|
|
|
|
|
if (weeks[i] == "周五") {
|
|
|
|
|
var _week = {};
|
|
|
|
|
_week["id"] = 5;
|
|
|
|
|
_week["name"] = "周五";
|
|
|
|
|
_weeks.push(_week);
|
|
|
|
|
}
|
|
|
|
|
if (weeks[i] == "周六") {
|
|
|
|
|
var _week = {};
|
|
|
|
|
_week["id"] = 6;
|
|
|
|
|
_week["name"] = "周六";
|
|
|
|
|
_weeks.push(_week);
|
|
|
|
|
}
|
|
|
|
|
if (weeks[i] == "周日") {
|
|
|
|
|
var _week = {};
|
|
|
|
|
_week["id"] = 7;
|
|
|
|
|
_week["name"] = "周日";
|
|
|
|
|
_weeks.push(_week);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
_weeks.sort(function (a, b) {
|
|
|
|
|
return a.id - b.id;
|
|
|
|
|
});
|
|
|
|
|
//将weeks清空并将排序好的值赋给weeks
|
|
|
|
|
const weeksData = [];
|
|
|
|
|
if (isContinuityNum(_weeks.map((item) => item.id)) && _weeks.length > 1) {
|
|
|
|
|
weeksData.push(`${_weeks[0].name} 至 ${_weeks[_weeks.length - 1].name}`);
|
|
|
|
|
} else {
|
|
|
|
|
for (var i = 0; i < _weeks.length; i++) {
|
|
|
|
|
weeksData.push(_weeks[i].name);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return weeksData;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//判断一串数字是否是连续的
|
|
|
|
|
function isContinuityNum(num) {
|
|
|
|
|
let array = [];
|
|
|
|
|
if (num instanceof Array) {
|
|
|
|
|
array = [...num];
|
|
|
|
|
} else {
|
|
|
|
|
array = Array.from(num.toString()); //转换为数组
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var i = array[0];
|
|
|
|
|
var isContinuation = true;
|
|
|
|
|
for (var e in array) {
|
|
|
|
|
if (array[e] != i) {
|
|
|
|
|
isContinuation = false;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
i++;
|
|
|
|
|
}
|
|
|
|
|
return isContinuation;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//判断是不是微信
|
|
|
|
|
function isWx() {
|
|
|
|
|
var ua = window.navigator.userAgent.toLowerCase();
|
|
|
|
|
//判断是不是微信
|
|
|
|
|
if (ua.match(/MicroMessenger/i) == "micromessenger") {
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//判断是不是微信小程序环境打开
|
|
|
|
|
function isWxminiprogram() {
|
|
|
|
|
const ua = navigator.userAgent.toLowerCase();
|
|
|
|
|
const isWeixin = ua.indexOf("micromessenger") != -1;
|
|
|
|
|
if (isWeixin) {
|
|
|
|
|
if (window.__wxjs_environment == "miniprogram") {
|
|
|
|
|
return true;
|
|
|
|
|
} else {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
}
|