Menu

7.6. 完善支付后逻辑

支付后逻辑

前两个章节我们已经完成了订单支付的部分,接下来我们还要补充一些逻辑,比如支付之后要给订单中的商品增加销量,比如我们要发邮件给用户告知订单支付成功。

商品增加销量和发送邮件并不会影响到订单的支付状态,即使这两个操作失败了也不影响我们后续的业务流程,对于此类需求我们通常使用异步事件来解决。

支付成功事件

接下来我们来创建一个支付成功的事件:

$ php artisan make:event OrderPaid

app/Events/OrderPaid.php

use App\Models\Order;
.
.
.
class OrderPaid
{
    use Dispatchable, InteractsWithSockets, SerializesModels;

    protected $order;

    public function __construct(Order $order)
    {
        $this->order = $order;
    }

    public function getOrder()
    {
        return $this->order;
    }
}

事件本身不需要有逻辑,只需要包含相关的信息即可,在我们这个场景里就只需要一个订单对象。

接下来我们在支付成功的服务器端回调里触发这个事...

本文章首发在 Laravel China 社区

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
讨论数量: 3

Curry
更新商品销量疑问?
0 个点赞 | 3 个回复 | 问答
Gebriel
对 OrderPaid 事件监听代码疑问????
0 个点赞 | 1 个回复 | 问答
刻意练习,每日精进。
6
点赞
528
浏览
3
讨论