k-zakhariy / mobidel-laravel
此包已被放弃且不再维护。未建议替代包。
Service mobidel 的 Laravel 包
0.2
2019-07-20 01:05 UTC
Requires
- php: ^7.1.3
- barryvdh/laravel-cors: ^0.11.2
- guzzlehttp/guzzle: ^6.3
- illuminate/support: 5.6.*
Requires (Dev)
- orchestra/testbench: 3.6.*
- phpunit/phpunit: ~7.0
This package is auto-updated.
Last update: 2022-09-20 08:42:06 UTC
README
初始化
只需为每个观察者注册您想要监听的事件
<?php namespace App\Providers; class AppServiceProvider extends ServiceProvider{ public function boot(){ MobidelCallback::subscribeToEvents(app()->make(MobidelCallbackListener::class), [ ChangeOrderEvent::getEventName() ]); } }
然后在观察者内部实现方法,例如 onChangeOrder
- 一旦回调执行 - 您将收到数据
<?php namespace App\Listeners; use App\Models\Order; use Zakhariy\MobidelLaravel\Events\ChangeOrderEvent; use Zakhariy\MobidelLaravel\MobidelApi; class MobidelCallbackListener { private $order = null; private $mobidelOrder = null; private $mobidelApi; /** * MobidelCallbackListener constructor. * @param $mobidelApi */ public function __construct(MobidelApi $mobidelApi) { $this->mobidelApi = $mobidelApi; } public function onChangeOrder(ChangeOrderEvent $event) { $callbackResponse = $event->getCallbackResponse(); if (!isset(Order::CRM_STATUSES[$callbackResponse->getStatus()])) { return; } // Do anything you want with data $orderData = $this->mobidelApi->getOrder($callbackResponse->getOrderID()); } }