OrderHook.php 671 B

123456789101112131415161718192021222324252627
  1. <?php
  2. declare(strict_types=1);
  3. namespace SixShop\Payment\Hook;
  4. use app\model\Order;
  5. use SixShop\Core\Attribute\Hook;
  6. use SixShop\Payment\Enum\PaymentBizEnum;
  7. use SixShop\Payment\Event\PaymentSuccessEvent;
  8. class OrderHook
  9. {
  10. #[Hook(PaymentSuccessEvent::class)]
  11. public function onPaymentSuccess(PaymentSuccessEvent $event): void
  12. {
  13. if ($event->bizType != PaymentBizEnum::ORDER_PAY) {
  14. return;
  15. }
  16. $order = Order::find($event->payment['order_id']);
  17. $order->save([
  18. 'pay_time' => date('Y-m-d H:i:s'),
  19. 'pay_status' => 1, //已支付
  20. 'order_status' => 20, //待发货
  21. ]);
  22. }
  23. }