quasiris / quasiris-catching-category-events
捕捉关于产品的事件
dev-master
2020-07-03 19:07 UTC
This package is not auto-updated.
Last update: 2024-09-21 15:48:52 UTC
README
此库用于从分类(抽象、具体、分类)捕捉关于产品的事件,例如
- 分配,
- 取消分配
并发送到自定义API URL(POST方法)。
数据到达API
API_URL_MAIN: { "abstract": {}, "concrete": {}, "categories": { "categories": [] } } API_URL_TESTING: { "status": "SUCCESS", "params": { "date": "23.06.20 10:26:06", "listenerName": "QuasirisCatchingCategoryEventsListener", "eventName": "Product.product_abstract.after.update", "abstract": { }, "concrete": [], "categories": { "categories": [] }, "productId": "//id of product", "type": "products" }, "eventName": "Product.product_abstract.after.update", "request_form_params_main_api": "params with goes to api", "response_from_main_api": {}, "url_main_api": "API_URL_MAIN", "url_testing_api": "API_URL_TESTING", "product_id": "//id of product" }
安装
如果您没有安装Composer,请访问Composer网站并安装它。
在您的项目终端中输入
composer require quasiris/quasiris-catching-category-events
用法
安装后,转到 Pyz\Zed\Event\EventDependencyProvider.php;
导入订阅者
use Quasiris\Zed\QuasirisCatchingCategoryEvents\Communication\Plugins\Event\Subscriber\QuasirisCatchingCategoryEventsSubscriber;
在 getEventSubscriberCollection() 方法中,在 return $eventSubscriberCollection; 之上,注册要监视的事件
$eventSubscriberCollection->add(new QuasirisCatchingCategoryEventsSubscriber());
所有实现都在 Pyz\Zed\Event\EventDependencyProvider.php
<?php // Pyz\Zed\Event\EventDependencyProvider.php namespace Pyz\Zed\Event; use ...; . . . use Quasiris\Zed\QuasirisCatchingCategoryEvents\Communication\Plugins\Event\Subscriber\QuasirisCatchingCategoryEventsSubscriber; class EventDependencyProvider extends SprykerEventDependencyProvider { /** * @return \Spryker\Zed\Event\Dependency\EventCollectionInterface */ public function getEventListenerCollection() { return parent::getEventListenerCollection(); } /** * @return \Spryker\Zed\Event\Dependency\EventSubscriberCollectionInterface */ public function getEventSubscriberCollection() { . . . . . $eventSubscriberCollection->add(new QuasirisCatchingCategoryEventsSubscriber()); return $eventSubscriberCollection; } }
接下来,转到 config/Shared/config_default.php
从插件导入常量并添加常量
// config/Shared/config_default.php use Quasiris\Zed\QuasirisCatchingCategoryEvents\Shared\QuasirisCatchingCategoryEventsConstants; //create this $config[QuasirisCatchingCategoryEventsConstants::MY_SETTING] = [ 'API_URL_MAIN' => 'main url where data goes', 'API_URL_TESTING' => 'testing url where data goes with additional informations' ]; $config[KernelConstants::PROJECT_NAMESPACES] = [ 'Pyz', 'Quasiris', //add this in KernelConstants::PROJECT_NAMESPACES ];
信息:API_URL_MAIN 和 API_URL_TESTING 独立工作,您只需添加其中一个,例如。
// config/Shared/config_default.php use Quasiris\Zed\QuasirisCatchingCategoryEvents\Shared\QuasirisCatchingCategoryEventsConstants; $config[QuasirisCatchingCategoryEventsConstants::MY_SETTING] = [ 'API_URL_MAIN' => 'main url where data goes' ]; ------------------------ Different example ------------------------------ // config/Shared/config_default.php use Quasiris\Zed\QuasirisCatchingCategoryEvents\Shared\QuasirisCatchingCategoryEventsConstants; $config[QuasirisCatchingCategoryEventsConstants::MY_SETTING] = [ 'API_URL_TESTING' => 'testing url where data goes with additional informations' ];