|
|
<!DOCTYPE html>
|
|
|
<html lang="zh">
|
|
|
|
|
|
<head>
|
|
|
<meta charset="UTF-8" />
|
|
|
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
|
...
|
...
|
@@ -17,38 +16,31 @@ |
|
|
}
|
|
|
</style>
|
|
|
</head>
|
|
|
|
|
|
<body>
|
|
|
<div class="container">
|
|
|
<div class="head_adder">
|
|
|
<div class="adder_info">
|
|
|
<p class="adder_name">收货人:小龙女</p>
|
|
|
<p class="adder_tel">13888888888</p>
|
|
|
</div>
|
|
|
|
|
|
<div class="adder_res">
|
|
|
<i class="iconfont icon-icon_location"></i>
|
|
|
<p class="adder_res_info">收货地址:开远市东城龙苑雅居小区东门附近龙苑雅
|
|
|
居小区东门附近</p>
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
<div class="head">
|
|
|
<div class="head_adders"></div>
|
|
|
<div class="head" id="add_address">
|
|
|
<i class="iconfont icon-jia1"></i> 添加收获地址
|
|
|
</div>
|
|
|
<div class="order_res">
|
|
|
<img src="" class="order_res_logo" />
|
|
|
<div class="order_res_main">
|
|
|
<p class="main_title">原创发饰发簪步摇</p>
|
|
|
<p class="main_mintitle">旗袍发饰</p>
|
|
|
<p class="mian_priceGroup">
|
|
|
<span class="mian_price">¥150</span>
|
|
|
|
|
|
<span class="main_num">x2</span>
|
|
|
</p>
|
|
|
<input type="hidden" name="realname" value=""/>
|
|
|
<input type="hidden" name="mobile" value=""/>
|
|
|
<input type="hidden" name="province" value=""/>
|
|
|
<input type="hidden" name="city" value=""/>
|
|
|
<input type="hidden" name="region" value=""/>
|
|
|
<volist name="cartList" id="vo">
|
|
|
<input type="hidden" name="ids[]" value="{$vo.goods_id}"/>
|
|
|
<div class="order_res">
|
|
|
<img src="{:sp_get_image_preview_url($vo['thumb'])}" class="order_res_logo" />
|
|
|
<div class="order_res_main">
|
|
|
<p class="main_title">{$vo.goods_name}</p>
|
|
|
<p class="main_mintitle">{$vo.short_name}</p>
|
|
|
<p class="mian_priceGroup">
|
|
|
<span class="mian_price">¥{$vo.goods_price}</span>
|
|
|
<span class="main_num">x{$vo.num}</span>
|
|
|
</p>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
</volist>
|
|
|
<div class="pay_type">
|
|
|
<p class="type_title">
|
|
|
支付方式
|
...
|
...
|
@@ -64,11 +56,11 @@ |
|
|
<div class="pay_res">
|
|
|
<div class="pay_res_list">
|
|
|
<p class="pay_title">商品金额</p>
|
|
|
<p class="price">¥ 300.00</p>
|
|
|
<p class="price">¥ {$count_amount}</p>
|
|
|
</div>
|
|
|
<div class="pay_res_list">
|
|
|
<p class="pay_title">商品金额</p>
|
|
|
<p class="price">x 2</p>
|
|
|
<p class="pay_title">商品数量</p>
|
|
|
<p class="price">x {$count_amount}</p>
|
|
|
</div>
|
|
|
<div class="pay_res_list">
|
|
|
<p class="pay_title">运费</p>
|
...
|
...
|
@@ -81,14 +73,148 @@ |
|
|
</div>
|
|
|
<div class="footer">
|
|
|
<div class="footer_price">
|
|
|
合计:<span class="order_price">
|
|
|
¥450.00
|
|
|
</span>
|
|
|
合计:<span class="order_price">¥{$count_amount}</span>
|
|
|
</div>
|
|
|
<div class="ordre_sure">
|
|
|
<div class="ordre_sure" id="pay_confirm">
|
|
|
提交订单
|
|
|
</div>
|
|
|
</div>
|
|
|
</body>
|
|
|
|
|
|
<script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
|
|
|
<script>
|
|
|
wx.config({
|
|
|
debug: false,
|
|
|
appId: '{$signPackage.appId}',
|
|
|
timestamp: '{$signPackage.timestamp}',
|
|
|
nonceStr: '{$signPackage.nonceStr}',
|
|
|
signature: '{$signPackage.signature}',
|
|
|
jsApiList: [
|
|
|
'checkJsApi',
|
|
|
'openAddress'
|
|
|
]
|
|
|
});
|
|
|
/*
|
|
|
* 注意:
|
|
|
* 1. 所有的JS接口只能在公众号绑定的域名下调用,公众号开发者需要先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。
|
|
|
* 2. 如果发现在 Android 不能分享自定义内容,请到官网下载最新的包覆盖安装,Android 自定义分享接口需升级至 6.0.2.58 版本及以上。
|
|
|
* 3. 完整 JS-SDK 文档地址:http://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html
|
|
|
*
|
|
|
* 如有问题请通过以下渠道反馈:
|
|
|
* 邮箱地址:weixin-open@qq.com
|
|
|
* 邮件主题:【微信JS-SDK反馈】具体问题
|
|
|
* 邮件内容说明:用简明的语言描述问题所在,并交代清楚遇到该问题的场景,可附上截屏图片,微信团队会尽快处理你的反馈。
|
|
|
*/
|
|
|
wx.ready(function () {
|
|
|
// 1 判断当前版本是否支持指定 JS 接口,支持批量判断
|
|
|
wx.checkJsApi({
|
|
|
jsApiList: [
|
|
|
'openAddress'
|
|
|
],
|
|
|
success: function (res) {
|
|
|
//alert(JSON.stringify(res));
|
|
|
}
|
|
|
});
|
|
|
$('#add_address').click(function(){
|
|
|
wx.openAddress({
|
|
|
success: function (res) {
|
|
|
// var userName = res.userName; // 收货人姓名
|
|
|
// var postalCode = res.postalCode; // 邮编
|
|
|
// var provinceName = res.provinceName; // 国标收货地址第一级地址(省)
|
|
|
// var cityName = res.cityName; // 国标收货地址第二级地址(市)
|
|
|
// var countryName = res.countryName; // 国标收货地址第三级地址(国家)
|
|
|
// var detailInfo = res.detailInfo; // 详细收货地址信息
|
|
|
// var nationalCode = res.nationalCode; // 收货地址国家码
|
|
|
// var telNumber = res.telNumber; // 收货人手机号码
|
|
|
var html = '<div class="head_adder">' +
|
|
|
'<div class="adder_info">'+
|
|
|
'<p class="adder_name">'+ res.userName +'</p>'+
|
|
|
'<p class="adder_tel">'+ res.telNumber +'</p>'+
|
|
|
'</div>'+
|
|
|
'<div class="adder_res">'+
|
|
|
'<i class="iconfont icon-icon_location"></i>'+
|
|
|
'<p class="adder_res_info">'+ res.provinceName + res.cityName + res.detailInfo +'</p>'+
|
|
|
'</div> '+
|
|
|
'</div>';
|
|
|
$('input[name=realname]').val(res.userName);
|
|
|
$('input[name=mobile]').val(res.telNumber);
|
|
|
$('input[name=province]').val(res.provinceName);
|
|
|
$('input[name=city]').val(res.cityName);
|
|
|
$('input[name=region]').val(res.detailInfo);
|
|
|
$('.head_adders').html(html);
|
|
|
},
|
|
|
cancel: function () {
|
|
|
// 用户取消拉出地址
|
|
|
//alert('用户取消拉出地址');
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
// 确认订单
|
|
|
$('#pay_confirm').click(function(){
|
|
|
var btn = $(this);
|
|
|
var text = btn.text();
|
|
|
var realame = $('input[name=realname]').val();
|
|
|
var mobile = $('input[name=mobile]').val();
|
|
|
var province = $('input[name=province]').val();
|
|
|
var city = $('input[name=city]').val();
|
|
|
var region = $('input[name=region]').val();
|
|
|
var ids = [];
|
|
|
$('input[name="ids[]"]').each(function(){
|
|
|
ids.push($(this).val());
|
|
|
});
|
|
|
// if(!realame||!mobile||!province||!city||!region) {
|
|
|
// alert('请选择收货地址');
|
|
|
// return false;
|
|
|
// }
|
|
|
$.ajax({
|
|
|
url:"{:U('User/Cart/createOrder')}",
|
|
|
type:"POST",
|
|
|
data:{
|
|
|
ids:ids,
|
|
|
realame:realame,
|
|
|
mobile:mobile,
|
|
|
province:province,
|
|
|
city:city,
|
|
|
region:region,
|
|
|
sort:"{$sort}",
|
|
|
num:"{$num}"
|
|
|
},
|
|
|
dateType:"json",
|
|
|
beforeSend:function() {
|
|
|
btn.text('提交中...').attr('disabled', true);
|
|
|
},
|
|
|
success:function (data) {
|
|
|
console.log(data);
|
|
|
if(data.status) {
|
|
|
wx.chooseWXPay({
|
|
|
timestamp: data.data.timeStamp, // 支付签名时间戳,注意微信jssdk中的所有使用timestamp字段均为小写。但最新版的支付后台生成签名使用的timeStamp字段名需大写其中的S字符
|
|
|
nonceStr: data.data.nonceStr, // 支付签名随机串,不长于 32 位
|
|
|
package: data.data.package, // 统一支付接口返回的prepay_id参数值,提交格式如:prepay_id=\*\*\*)
|
|
|
signType: data.data.signType, // 签名方式,默认为'SHA1',使用新版支付需传入'MD5'
|
|
|
paySign: data.data.paySign, // 支付签名
|
|
|
success: function (res) {
|
|
|
// 支付成功后的回调函数
|
|
|
alert(1);
|
|
|
},
|
|
|
error: function (data, status, e) { //提交失败自动执行的处理函数
|
|
|
alert(e);
|
|
|
}
|
|
|
});
|
|
|
} else {
|
|
|
alert(data.msg);
|
|
|
}
|
|
|
},
|
|
|
error: function (data, status, e) { //提交失败自动执行的处理函数
|
|
|
alert(e);
|
|
|
},
|
|
|
complete: function () {
|
|
|
// Handle the complete event
|
|
|
btn.val(text).attr('disabled', false);
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
});
|
|
|
wx.error(function (res) {
|
|
|
alert(res.errMsg);
|
|
|
});
|
|
|
</script>
|
|
|
</html> |
|
|
\ No newline at end of file |
...
|
...
|
|