$('.pay_info .row_left').eq(0).html('桔子链账号');
var wxChannel = null; // 微信支付
var aliChannel = null; // 支付宝支付
var channel = null; //支付通道
mui.init();
mui.plusReady(function() {
window.addEventListener('setAddress', function(e) {
var addressId = localStorage.getItem('addressId') ? localStorage.getItem('addressId') : 0;
if(addressId == 0) {
return;
}
mui.ajax(hyhUrl('app/useraddress/getById'), {
data: {
addressId: addressId
},
dataType: 'json', //服务器返回json格式数据
type: 'post', //HTTP请求类型
timeout: 10000, //超时时间设置为10秒;
success: function(data) { //服务器返回响应,根据响应结果,分析是否登录成功;
data = toJson(data);
if(data.status == 1) {
data = data.data;
// for(i in data.data){
// console.log(i)
// console.log(data.data[i])
// }
var html = '
收货人:' + data.userName + '
' + data.userPhone + '
收货地址:' + data.areaName + ' ' + data.userAddress + '
';
$('.address').html(html);
$('.address').attr('data-addressId', data.addressId);
$('.address').attr('data-areaId', data.areaId2);
} else {
alert(data.msg);
// location.reload();
}
},
error: function(xhr, type, errorThrown) { //异常处理;
// alert(type);
}
});
});
$('.con').on('tap', '.address', function() {
var addressId = $(this).attr('data-addressId');
localStorage.setItem('addressId', addressId);
var isOrder = true;
mui.openWindow({
url: 'setting_address.html',
id: 'setting_address.html',
styles: {
top: '0px', //新页面顶部位置
bottom: '0px', //新页面底部位置
width: '100%', //新页面宽度,默认为100%
height: '100%' //新页面高度,默认为100%
},
extras: {
data_addressId: addressId,
data_isOrder: isOrder
// data_href: data_href
// ..... //自定义扩展参数,可以用来处理页面间传值
},
createNew: false, //是否重复创建同样id的webview,默认为false:不重复创建,直接显示
show: {
// autoShow: true, //页面loaded事件发生后自动显示,默认为true
// aniShow: animationType, //页面显示动画,默认为”slide-in-right“;
// duration: animationTime, //页面动画持续时间,Android平台默认100毫秒,iOS平台默认200毫秒;
// event: 'titleUpdate', //页面显示时机,默认为titleUpdate事件时显示
// extras: {} //窗口动画是否使用图片加速
},
waiting: {
autoShow: true, //自动显示等待框,默认为true
title: '正在加载...', //等待对话框上显示的提示内容
options: {
// width: waiting - dialog - widht, //等待框背景区域宽度,默认根据内容自动计算合适宽度
// height: waiting - dialog - height, //等待框背景区域高度,默认根据内容自动计算合适高度
// ......
}
}
})
})
//支付插件
plus.payment.getChannels(function(channels) {
for(var i in channels) {
if(channels[i].id == "wxpay") {
wxChannel = channels[i];
} else {
aliChannel = channels[i];
}
}
}, function(e) {
alert("获取支付通道失败:" + e.message);
});
// var ALIPAYSERVER = 'http://demo.dcloud.net.cn/helloh5/payment/alipay.php?total=';
var ALIPAYSERVER = hyhUrl('app/Alipays/toAlipay?isBatch=1&orderNo=');
// 2. 发起支付请求
function pay(id, orderNo) {
// 从服务器请求支付订单
var PAYSERVER = '';
if(id == 'alipay') {
PAYSERVER = ALIPAYSERVER;
channel = aliChannel;
} else if(id == 'wxpay') {
PAYSERVER = WXPAYSERVER;
channel = wxChannel;
} else {
plus.nativeUI.alert("不支持此支付通道!", null, "捐赠");
return;
}
var xhr = new XMLHttpRequest();
// var amount = 1;
xhr.onreadystatechange = function() {
switch(xhr.readyState) {
case 4:
if(xhr.status == 200) {
plus.payment.request(channel, xhr.responseText, function(result) {
plus.nativeUI.alert("支付成功!", function() {
// back();
});
}, function(error) {
// plus.nativeUI.alert("支付失败:" + error.code);
plus.webview.getWebviewById('confirmOrder.html').close();
});
} else {
alert("获取订单信息失败!");
console.log(xhr.status)
}
break;
default:
break;
}
}
xhr.open('GET', PAYSERVER + orderNo);
xhr.send();
}
var self = plus.webview.currentWebview();
var type = self.type;
var data_1 = {};
var isUseScore = 0;
var orderNo;
var priceT = 0;
var payCode = '';
// console.log(type)
mui.ajax(hyhUrl('app/carts/settlement'), {
data: {
type: type
},
dataType: 'json', //服务器返回json格式数据
type: 'post', //HTTP请求类型
timeout: 10000, //超时时间设置为10秒;
success: function(data) { //服务器返回响应,根据响应结果,分析是否登录成功;
// console.log(data)
var data = toJson(data);
if(data.status == 1) {
var allallnum = 0;
data = data.data;
data_1 = data;
if(data.userAddress.addressId) {
var html = '收货人:' + data.userAddress.userName + '
' + data.userAddress.userPhone + '
收货地址:' + data.userAddress.areaName + ' ' + data.userAddress.userAddress + '
';
} else {
var html = '';
}
$.each(data.carts, function() {
var allNum = 0;
html += '';
$.each(this.list, function() {
allNum += this.cartNum;
var price = '';
if(this.isWhsle == 1) {
price = this.whslePrice;
} else if(this.specPrice != 'null') {
price = this.shopPrice;
} else {
price = this.specPrice;
}
var specNames = '';
for(var i in this.specNames[0]) {
if(i == "catName") {
specNames = this.specNames[0][i] + ':';
} else if(i == "itemName") {
specNames += this.specNames[0][i]
}
}
html += '
 + ')
' + this.goodsName + '
';
$.each(this.specNames, function() {
html += this.catName + ':' + this.itemName + ';';
});
html += '
¥' + price + '
¥' + this.marketPrice + 'x' + this.cartNum + ''
});
allallnum += allNum;
html += '
';
html += '
选择优惠券:
共' + allNum + '件商品 小计:¥' + this.goodsMoney + ' + 运费:¥' + this.shippingMoney + '
';
});
html += '';
// if(data.ect_pay == 0) {
html += '
木吉抵用 可抵用木吉:' + data.useOrderScore + '
'
// }
html += '
';
priceT = (Math.floor((+data.goodsTotalMoney - (+data.promotionMoney)) * 100)) / 100;
priceT = priceT >= 0 ? priceT : 0;
var html1 = '共' + allallnum + '件商品 合计:¥' + priceT + ' ';
// if(data.ect_pay == 1) {
var htmlpay = 'ECT余额:' + data.userECT + '
限时9.5折 ';
$('#pay_way .con_1').append(htmlpay);
// $('.pay_info .con_1 .row').eq(0).attr('style','display: none;');
// $('.pay_info .con_1 .row').eq(1).remove();
// };
$('.con_').html(html);
$('.js_r').html(html1);
$('#loginName').html(data.loginName);
$('.userMoney').html(data.userMoney);
$('#goodsTotalMoney').html(priceT);
} else {
alert(data.msg);
// location.reload();
}
},
error: function(xhr, type, errorThrown) { //异常处理;
// alert(type);
}
});
$('.con').on('change', 'select', function() {
var couponIds = [];
$('select').each(function() {
couponIds.push($(this).attr('data-shopId') + ':' + $(this).val());
})
// var addressId = $('.address').attr('data-addressId')
var areaId2 = $('.address').attr('data-areaId2')
var couponIdsArr = couponIds.join(',');
mui.ajax(hyhUrl('app/carts/getMoney'), {
data: {
type: type,
areaId2: addressId,
isUseScore: isUseScore,
useScore: data_1.useOrderScore,
couponIds: couponIdsArr
},
dataType: 'json', //服务器返回json格式数据
type: 'post', //HTTP请求类型
timeout: 10000, //超时时间设置为10秒;
success: function(data) { //服务器返回响应,根据响应结果,分析是否登录成功;
// console.log(data)
data = toJson(data);
// console.log(data.msg)
if(data.status == 1) {
$('.js_r span j').html('¥' + data.data.realTotalMoney)
$('#goodsTotalMoney').html(data.data.realTotalMoney);
} else {
alert('发生错误请刷新后重试!');
// location.reload();
}
},
error: function(xhr, type, errorThrown) { //异常处理;
// alert(errorThrown);
}
});
});
$('.con').on('tap', '.checkout', function() {
$(this).toggleClass('on');
if($(this).hasClass('on')) {
isUseScore = 1;
} else {
isUseScore = 0;
}
var couponIds = [];
$('select').each(function() {
couponIds.push($(this).attr('data-shopId') + ':' + $(this).val());
})
var couponIdsArr = couponIds.join(',');
var areaId2 = $('.address').attr('data-areaId2');
// console.log(areaId2)
// console.log(couponIdsArr)
// console.log(data_1.userAddress.areaId2)
// console.log(data_1.userAddress)
mui.ajax(hyhUrl('app/carts/getMoney'), {
data: {
type: type,
areaId2: areaId2,
isUseScore: isUseScore,
useScore: data_1.useOrderScore,
couponIds: couponIdsArr
},
dataType: 'json', //服务器返回json格式数据
type: 'post', //HTTP请求类型
timeout: 10000, //超时时间设置为10秒;
success: function(data) { //服务器返回响应,根据响应结果,分析是否登录成功;
// console.log(data)
data = toJson(data);
// console.log(data.msg)
if(data.status == 1) {
// console.log(data)
// console.log(data.data.shopFreight)
// for(i in data.data){
// console.log(i)
// console.log(data.data[i])
// }
$('.js_r span j').html('¥' + data.data.realTotalMoney)
priceT = data.data.realTotalMoney;
$('#goodsTotalMoney').html(data.data.realTotalMoney);
} else {
alert('发生错误请刷新后重试!');
// location.reload();
}
},
error: function(xhr, type, errorThrown) { //异常处理;
// alert(errorThrown);
}
});
})
$('.footer').on('tap', '.btn_tj', function() {
payCode = $('.select_payway').attr('data-payCode');
var that = $(this);
var addressId = $('.address').attr('data-addressId');
if(addressId) {
$('.bg').css('display', 'block');
$(".pay").slideDown(300);
} else {
alert('未设置收货地址!')
}
})
$('.bg').on('tap', '.mui-icon-left-nav', function() {
$('.pay').css('display', 'block');
$('.pay_way').css('display', 'none');
})
$('.bg').on('tap', '.mui-icon-closeempty', function() {
$('.bg').css('display', 'none');
$(".pay").slideUp(300, function() {
});
})
$('#pay_way').on('tap', '.row', function() {
$('#pay_way .row .mui-icon').removeClass('mui-icon-checkmarkempty');
$(this).children('.mui-icon').addClass('mui-icon-checkmarkempty');
$('.select_payway .row_right o').html($(this).children('.row_left').html());
$('.select_payway').attr('data-payCode', $(this).attr('data-payCode'))
$('.pay').css('display', 'block');
$('#pay_way').css('display', 'none');
})
$('.pay').on('tap', '.select_payway', function() {
//if($(this).attr('data-payCode') == 'ect') {} else {
$('.pay').css('display', 'none');
$('#pay_way').css('display', 'block');
//}
})
$('.pay_btn').on('tap', function() {
var addressId = $('.address').attr('data-addressId');
var areaId = $('.address').attr('data-areaId');
var that = $(this);
payCode = $('.select_payway').attr('data-payCode');
var data_send = {
type: type,
s_addressId: addressId,
s_areaId: areaId,
payCode: payCode,
payType: 1,
isUseScore: isUseScore,
useScore: data_1.useOrderScore,
deliverType: 0,
isInvoice: 0,
invoiceId: 0,
invoiceClient: ''
}
$('.remark').each(function() {
data_send['remark_' + ($(this).attr('data-shopid'))] = $(this).val();
});
$('select').each(function() {
data_send['couponId_' + ($(this).attr('data-shopid'))] = $(this).val();
})
console.log(priceT)
if(payCode == 'ect') {
that.attr('disabled', 'disabled');
mui.ajax(hyhUrl('app/ect/getToEctNum'), {
data: {
total_money: priceT
},
dataType: 'json', //服务器返回json格式数据
type: 'post', //HTTP请求类型
timeout: 10000, //超时时间设置为10秒;
success: function(data) { //服务器返回响应,根据响应结果,分析是否登录成功;
var data = toJson(data);
if(data.status == 1) {
var btnArray = ['是', '否'];
mui.confirm(data.msg, 'ECT确认支付', btnArray, function(e) {
if(e.index == 1) {
that.removeAttr('disabled');
return;
} else {
mui.ajax(hyhUrl('app/orders/submit'), {
data: data_send,
dataType: 'json', //服务器返回json格式数据
type: 'post', //HTTP请求类型
timeout: 10000, //超时时间设置为10秒;
success: function(data) { //服务器返回响应,根据响应结果,分析是否登录成功;
// console.log(data.status)
data = toJson(data);
if(data.status == 1) {
orderNo = data.data;
if(payCode == 'wallets' || payCode == 'ect') {
//跳输入密码的页面
mui.ajax(hyhUrl('app/' + payCode + '/payment'), {
data: {
orderNo: data.data,
isBatch: 1
},
dataType: 'json', //服务器返回json格式数据
type: 'post', //HTTP请求类型
timeout: 10000, //超时时间设置为10秒;
success: function(data) { //服务器返回响应,根据响应结果,分析是否登录成功;
var data = toJson(data);
if(data.status == 1) {
$('.pay').css('display', 'none');
$('#pay_pwd').css('display', 'block');
if(data.data.payPwd == '0') {
alert('还未设置支付密码请先设置支付密码!');
var url = 'setting_fogetPayPwd';
mui.openWindow({
url: url + '.html',
id: url + '.html',
styles: {
top: '0px', //新页面顶部位置
bottom: '0px', //新页面底部位置
width: '100%', //新页面宽度,默认为100%
height: '100%' //新页面高度,默认为100%
},
extras: {
// data_href: data_href
// ..... //自定义扩展参数,可以用来处理页面间传值
},
createNew: false, //是否重复创建同样id的webview,默认为false:不重复创建,直接显示
show: {
// autoShow: true, //页面loaded事件发生后自动显示,默认为true
// aniShow: animationType, //页面显示动画,默认为”slide-in-right“;
// duration: animationTime, //页面动画持续时间,Android平台默认100毫秒,iOS平台默认200毫秒;
// event: 'titleUpdate', //页面显示时机,默认为titleUpdate事件时显示
// extras: {} //窗口动画是否使用图片加速
},
waiting: {
autoShow: true, //自动显示等待框,默认为true
title: '正在加载...', //等待对话框上显示的提示内容
options: {
// width: waiting - dialog - widht, //等待框背景区域宽度,默认根据内容自动计算合适宽度
// height: waiting - dialog - height, //等待框背景区域高度,默认根据内容自动计算合适高度
// ......
}
}
})
}
}
},
error: function(xhr, type, errorThrown) { //异常处理;
// alert(type);
}
});
} else if(payCode == 'alipays') {
pay('alipay', data.data);
// plus.nativeUI.showWaiting();
// mui.post(hyhUrl('app/Alipays/payment'), {
// orderNo: data.data,
// isBatch: 1
// var ALIPAYSERVER = hyhUrl('app/Alipays/payment?orderNo=' + data.data + '&isBatch=1');
}
that.removeAttr('disabled');
} else {
alert(data.msg);
// that.removeAttr('disabled');
// location.reload();
}
},
error: function(xhr, type, errorThrown) { //异常处理;
// alert(errorThrown);
}
})
that.removeAttr('disabled');
}
})
} else {
alert(data.msg);
return;
}
}
})
} else {
mui.ajax(hyhUrl('app/orders/submit'), {
data: data_send,
dataType: 'json', //服务器返回json格式数据
type: 'post', //HTTP请求类型
timeout: 10000, //超时时间设置为10秒;
success: function(data) { //服务器返回响应,根据响应结果,分析是否登录成功;
// console.log(data.status)
data = toJson(data);
if(data.status == 1) {
orderNo = data.data;
if(payCode == 'wallets' || payCode == 'ect') {
//跳输入密码的页面
mui.ajax(hyhUrl('app/' + payCode + '/payment'), {
data: {
orderNo: data.data,
isBatch: 1
},
dataType: 'json', //服务器返回json格式数据
type: 'post', //HTTP请求类型
timeout: 10000, //超时时间设置为10秒;
success: function(data) { //服务器返回响应,根据响应结果,分析是否登录成功;
var data = toJson(data);
if(data.status == 1) {
$('.pay').css('display', 'none');
$('#pay_pwd').css('display', 'block');
if(data.data.payPwd == '0') {
alert('还未设置支付密码请先设置支付密码!');
var url = 'setting_fogetPayPwd';
mui.openWindow({
url: url + '.html',
id: url + '.html',
styles: {
top: '0px', //新页面顶部位置
bottom: '0px', //新页面底部位置
width: '100%', //新页面宽度,默认为100%
height: '100%' //新页面高度,默认为100%
},
extras: {
// data_href: data_href
// ..... //自定义扩展参数,可以用来处理页面间传值
},
createNew: false, //是否重复创建同样id的webview,默认为false:不重复创建,直接显示
show: {
// autoShow: true, //页面loaded事件发生后自动显示,默认为true
// aniShow: animationType, //页面显示动画,默认为”slide-in-right“;
// duration: animationTime, //页面动画持续时间,Android平台默认100毫秒,iOS平台默认200毫秒;
// event: 'titleUpdate', //页面显示时机,默认为titleUpdate事件时显示
// extras: {} //窗口动画是否使用图片加速
},
waiting: {
autoShow: true, //自动显示等待框,默认为true
title: '正在加载...', //等待对话框上显示的提示内容
options: {
// width: waiting - dialog - widht, //等待框背景区域宽度,默认根据内容自动计算合适宽度
// height: waiting - dialog - height, //等待框背景区域高度,默认根据内容自动计算合适高度
// ......
}
}
})
}
}
},
error: function(xhr, type, errorThrown) { //异常处理;
// alert(type);
}
});
} else if(payCode == 'alipays') {
pay('alipay', data.data);
// plus.nativeUI.showWaiting();
// mui.post(hyhUrl('app/Alipays/payment'), {
// orderNo: data.data,
// isBatch: 1
// var ALIPAYSERVER = hyhUrl('app/Alipays/payment?orderNo=' + data.data + '&isBatch=1');
}
that.removeAttr('disabled');
} else {
alert(data.msg);
// that.removeAttr('disabled');
// location.reload();
}
},
error: function(xhr, type, errorThrown) { //异常处理;
// alert(errorThrown);
}
})
}
})
$('#pay_pwd').on('tap', '.p9', function() {
var url = 'setting_fogetPayPwd';
mui.openWindow({
url: url + '.html',
id: url + '.html',
styles: {
top: '0px', //新页面顶部位置
bottom: '0px', //新页面底部位置
width: '100%', //新页面宽度,默认为100%
height: '100%' //新页面高度,默认为100%
},
extras: {
// data_href: data_href
// ..... //自定义扩展参数,可以用来处理页面间传值
},
createNew: false, //是否重复创建同样id的webview,默认为false:不重复创建,直接显示
show: {
// autoShow: true, //页面loaded事件发生后自动显示,默认为true
// aniShow: animationType, //页面显示动画,默认为”slide-in-right“;
// duration: animationTime, //页面动画持续时间,Android平台默认100毫秒,iOS平台默认200毫秒;
// event: 'titleUpdate', //页面显示时机,默认为titleUpdate事件时显示
// extras: {} //窗口动画是否使用图片加速
},
waiting: {
autoShow: true, //自动显示等待框,默认为true
title: '正在加载...', //等待对话框上显示的提示内容
options: {
// width: waiting - dialog - widht, //等待框背景区域宽度,默认根据内容自动计算合适宽度
// height: waiting - dialog - height, //等待框背景区域高度,默认根据内容自动计算合适高度
// ......
}
}
})
})
$('#pay_pwd').on('tap', '.pay_btn_pwd', function() {
var payPwd = $('#payPwd').val();
if(payPwd == '') {
alert('支付密码不能为空!');
}
var that = $(this);
that.attr('disabled', 'disabled');
var srcc = ''
if(payCode == 'ect') {
srcc = 'payByEct';
} else {
srcc = 'payByWallet';
}
mui.ajax(hyhUrl('app/' + payCode + '/' + srcc), {
data: {
orderNo: orderNo,
isBatch: 1,
payPwd: payPwd
},
dataType: 'json', //服务器返回json格式数据
type: 'post', //HTTP请求类型
timeout: 10000, //超时时间设置为10秒;
success: function(data) { //服务器返回响应,根据响应结果,分析是否登录成功;
// console.log(data.data.goodsFavoritesNum)
var data = toJson(data);
alert(data.msg);
if(data.status == 1) {
// mui.back();
mui.openWindow({
url: 'indent.html',
id: 'indent.html',
styles: {
top: '0px', //新页面顶部位置
bottom: '0px', //新页面底部位置
width: '100%', //新页面宽度,默认为100%
height: '100%' //新页面高度,默认为100%
},
extras: {
data_href: 'waitDeliver'
// ..... //自定义扩展参数,可以用来处理页面间传值
},
createNew: false, //是否重复创建同样id的webview,默认为false:不重复创建,直接显示
show: {
// autoShow: true, //页面loaded事件发生后自动显示,默认为true
// aniShow: animationType, //页面显示动画,默认为”slide-in-right“;
// duration: animationTime, //页面动画持续时间,Android平台默认100毫秒,iOS平台默认200毫秒;
// event: 'titleUpdate', //页面显示时机,默认为titleUpdate事件时显示
// extras: {} //窗口动画是否使用图片加速
},
waiting: {
autoShow: false, //自动显示等待框,默认为true
title: '正在加载...', //等待对话框上显示的提示内容
options: {
// width: waiting - dialog - widht, //等待框背景区域宽度,默认根据内容自动计算合适宽度
// height: waiting - dialog - height, //等待框背景区域高度,默认根据内容自动计算合适高度
// ......
}
}
})
setTimeout(function() {
plus.webview.getWebviewById('confirmOrder.html').close();
}, 500)
} else {
mui.openWindow({
url: 'indent.html',
id: 'indent.html',
styles: {
top: '0px', //新页面顶部位置
bottom: '0px', //新页面底部位置
width: '100%', //新页面宽度,默认为100%
height: '100%' //新页面高度,默认为100%
},
extras: {
data_href: 'waitPay'
// ..... //自定义扩展参数,可以用来处理页面间传值
},
createNew: false, //是否重复创建同样id的webview,默认为false:不重复创建,直接显示
show: {
// autoShow: true, //页面loaded事件发生后自动显示,默认为true
// aniShow: animationType, //页面显示动画,默认为”slide-in-right“;
// duration: animationTime, //页面动画持续时间,Android平台默认100毫秒,iOS平台默认200毫秒;
// event: 'titleUpdate', //页面显示时机,默认为titleUpdate事件时显示
// extras: {} //窗口动画是否使用图片加速
},
waiting: {
autoShow: false, //自动显示等待框,默认为true
title: '正在加载...', //等待对话框上显示的提示内容
options: {
// width: waiting - dialog - widht, //等待框背景区域宽度,默认根据内容自动计算合适宽度
// height: waiting - dialog - height, //等待框背景区域高度,默认根据内容自动计算合适高度
// ......
}
}
})
setTimeout(function() {
plus.webview.getWebviewById('confirmOrder.html').close();
}, 500)
}
that.removeAttr('disabled')
},
error: function(xhr, type, errorThrown) { //异常处理;
alert(errorThrown);
}
});
})
})