2024-09-01 21:51:50 +01:00

340 lines
7.5 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

var token_name = "kyd_wx_access_token";
var cartName = "kyd_wx_products";
let BaseUrl = 'http://wy.cortruth.com/wybc_wx';
var back_url = location.href;
var LOGIN_URL;
var isWxLogin = false;
var flag='uuu'
if(isWxLogin)
LOGIN_URL = BaseUrl + "/open/jxs/wxLogin?backUrl=" + back_url;
else
LOGIN_URL = BaseUrl + '/static/login.html';
const nullHeadImg = "http://kyd.cortruth.com/kyd_wx/static/images/zw1.jpg";
const rootUrl = "http://kyd.cortruth.com/kyd_wx/";
// 后加载js 无回调
function loadJS(url) {
loadJS(url, function() {});
}
// 后加载js 有回调
function loadJS(url, callback) {
var script = document.createElement('script'),
fn = callback || function() {};
script.type = 'text/javascript';
// IE
if(script.readyState) {
script.onreadystatechange = function() {
if(script.readyState == 'loaded' || script.readyState == 'complete') {
script.onreadystatechange = null;
fn();
}
};
} else {
// 其他浏览器
script.onload = function() {
fn();
};
}
script.src = url + "?" + Math.random();
document.getElementsByTagName('head')[0].appendChild(script);
}
function ajaxW(isLoading, url, submitType, param, successFunction) {
var code = getRequestParam("statusCode");
if(code == null || code == '') {
if(isLoading) {
mui.showLoading("正在加载..", "div"); // 加载文字和类型plus环境中类型为div时强制以div方式显示
}
param.access_token = getToken()
mui.ajax({
url: BaseUrl + url,
type: submitType,
dataType: "json",
// contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
data: param,
success: function(data) {
if(isLoading) {
mui.hideLoading();
}
successFunction(data);
},
error: function(data) {
if(isLoading) {
mui.hideLoading();
}
console.log('error', data);
var httpCode = data.status;
if(httpCode == 500) {
mui.toast('系统异常');
return;
}
// var code = data.responseJSON.code;
var responseJSON = data.response;
console.log('responseJSON', responseJSON)
responseJSON = JSON.parse(responseJSON);
console.log(responseJSON);
var code = responseJSON.code;
if(code == 401) {
localStorage.removeItem(token_name);
mui.toast('登录状态异常,请重新登录');
location.href = LOGIN_URL;
return;
} else if(code == 402) {
localStorage.removeItem(token_name);
mui.toast('登录状态过期,请重新登录');
location.href = LOGIN_URL;
return;
} else if(code == 403) {
mui.toast('权限不足');
return;
} else {
location.href = LOGIN_URL;
}
}
})
} else {
if(code == '408') {
ajaxN(true, '/open/jxs/oauthToken', 'post', {}, function(d) {
if(!d.success) {
mui.alert(d.message)
return;
}
setToken(d.details.token.access_token)
localStorage.role = d.details.role_name;
if(!d.details.role_name) {
mui.toast('获取角色失败!')
return
}
setTimeout(function() {
location.href = back_url.substr(0, back_url.indexOf('statusCode=') - 1);
}, 1000)
})
}
if(code == '407') {
mui.alert('该微信号未与经销商绑定');
location.href = rootUrl + 'login.html';
return
}
if(code == '405') {
mui.alert('该经销商已被冻结');
return
}
if(code == '403') {
mui.alert('权限不足');
return
}
if(code == '402') {
mui.alert('令牌过期');
return
}
if(code == '401') {
mui.alert('令牌错误');
return
}
}
}
// 判断是否有登陆token是否正确
function ajaxP(isLoading, url, submitType, param, successFunction, errorFunction) {
if(isLoading) {
mui.showLoading("正在加载..", "div"); // 加载文字和类型plus环境中类型为div时强制以div方式显示
}
param.access_token = getToken()
mui.ajax({
url: BaseUrl + url,
type: submitType,
dataType: "json",
// contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
data: param,
success: function(data) {
if(isLoading) {
mui.hideLoading();
}
successFunction(data);
},
error: function(data) {
if(isLoading) {
mui.hideLoading();
}
errorFunction(data);
}
})
}
function ajaxN(isLoading, url, submitType, param, successFunction) {
if(isLoading) {
mui.showLoading("正在加载..", "div"); // 加载文字和类型plus环境中类型为div时强制以div方式显示
}
mui.ajax({
url: BaseUrl + url,
type: submitType,
dataType: "json",
// contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
data: param,
success: function(data) {
if(isLoading) {
mui.hideLoading();
}
successFunction(data);
},
error: function(data) {
if(isLoading) {
mui.hideLoading();
}
console.log('error', data);
var httpCode = data.status;
if(httpCode == 500) {
mui.toast('系统异常');
return;
}
}
})
}
// ----获取url带的参数-------
function getRequestParam(key) {
// http://ip:port/xxx.html?key1=value1&key2=value2&key3=value3
if(location.href.indexOf('?') == -1) {
// 不带任何参数
return '';
}
var params = location.href.split('?')[1];
// key1=value1&key2=value2&key3=value3
if(params.indexOf(key + '=') == -1) {
return '';
}
var paramVal = params.split(key + '=')[1];
// value2&key3=value3
return paramVal.split('&')[0];
}
// 全局定义滚动事件
function scrollP(scrollFn) {
Vue.directive('scroll', {
bind: (el, binding, vnode) => {
scrollFn(el, binding);
}
})
}
function goPage(url) {
location.href = url;
}
var yanzheng = {
mail: function(a) {
return /^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/.test(a)
},
phone: function(a) {
return a.match(/^1[1-9][0-9]{9}$/) && 11 == a.length
}
};
function setIndex(i) {
if(i == 0) {
goPage('index.html')
}
if(i == 1) {
goPage('product.html')
}
if(i == 2) {
goPage('cart.html')
}
if(i == 3) {
goPage('news.html')
}
if(i == 4) {
var token = getToken()
if(!token) {
goPage('login.html')
return;
}
if(localStorage.role == 'ROLE_ADMIN') {
goPage('admin.html');
} else if(localStorage.role == 'ROLE_JXS') {
goPage('my.html');
}
}
}
// 返回判断
function goBack() {
if(localStorage.role == 'ROLE_ADMIN') {
goPage('../../admin.html');
} else if(localStorage.role == 'ROLE_JXS') {
goPage('../../my.html')
}
}
// 包含微信分享的页面返回判断
function goBackWithShare() {
if(getRequestParam('from')) {
goPage("../../index.html")
} else {
window.history.back();
}
}
// token
function setToken(val) {
localStorage.setItem(token_name, val)
}
function getToken() {
return localStorage.getItem(token_name);
}
function setCartName(val) {
localStorage.setItem(cartName, val)
}
function getCartName() {
return localStorage.getItem(cartName);
}
// 手机正则
function telRegular(text) {
const reg = /^1[1-9][0-9]{9}$/;
var state = reg.test(text)
if(!state) {
// mui.toast('手机号码格式不正确!')
}
return state
}
// 身份证正则
function IDRegular(text) {
const reg = /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/;
var state = reg.test(text)
if(!state) {
// mui.toast('身份证格式不正确!')
}
return state
}
// input只能输入整数
function changeFn(event) {
let val = event.target.value.trim()
// 只能是正整数或空,可根据需求修改正则
// item = e.target.value.replace(/[^\d]/g,'')
if(/^[1-9]\d*$|^$/.test(val)) {
return val
}
}
// input只能输入两位小数
function decimal(val) {
var value = (val.match(/^\d*(\.?\d{0,2})/g)[0]) || null
return value
}