对于这个需求,我以前写过Laravel
版本的。今天想在TP5.1
中实现这个功能,但是网上基本没什么教程可供参考,所以写篇文章仅供大家学习。
一、前台
1、先来加载订单确认页面
当下单成功后,通过 js
跳转到订单确认页,在 checkout.html
中:
{
block name="js"}
<script>
$(function () {
//去付款,就是下单,跳到订单确认页
$("#pay").click(function () {
var address_id = $(".address").data('id');
if (address_id == '') {
alert('请先填写一个送货地址~');
return false;
}
$.ajax({
type: 'POST',
url: '/index/Order/store',
success: function (data) {
if (data.status == 0) {
alert(data.info);
location.href = '/index/Cart/index';
return false;
}
//微信支付
location.href = '/index/Order/pay/id/' + data.order_id;
}
})
});
});
</script>
{
/block}
2、在 Order.php
中增加对应方法,代码如下:
/***
* 订单确认页
* @param $id
*/
public function pay($id)
{
$order = \app\common\model\Order::with('address')->find($id);
return view('order/show_pay', compact('order'));
}
3、修改 show_pay.html
页面代码:
{
extend name="layout/app" /}
{
block name="content"}
<div id="wrapper">
<div class="page-order-pay" data-log="在线支付">
<div class="box box1">
<div class="p1"><span class="icon-checked"></span><span>订单提交成功</span></div