340 lines
7.5 KiB
JavaScript
340 lines
7.5 KiB
JavaScript
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
|
||
} |