aropixel / sylius-stock-alert-plugin
当您的产品库存达到特定阈值时获得通知
Requires
- php: ^7.3
- sylius/sylius: ^1.7
Requires (Dev)
- behat/behat: ^3.4
- behat/mink: ^1.7@dev
- behat/mink-browserkit-driver: ^1.3
- behat/mink-extension: ^2.2
- behat/mink-selenium2-driver: ^1.3
- friends-of-behat/page-object-extension: ^0.3
- friends-of-behat/suite-settings-extension: ^1.0
- friends-of-behat/symfony-extension: ^2.0
- friends-of-behat/variadic-extension: ^1.1
- lakion/mink-debug-extension: ^1.2.3
- phpspec/phpspec: ^6.0
- phpstan/phpstan-doctrine: ^0.11
- phpstan/phpstan-shim: ^0.11
- phpstan/phpstan-webmozart-assert: ^0.11
- phpunit/phpunit: ^8.0
- sensiolabs/security-checker: ^5.0
- sylius-labs/coding-standard: ^3.0
- symfony/browser-kit: ^3.4|^4.3
- symfony/debug-bundle: ^3.4|^4.3
- symfony/dotenv: ^4.3
- symfony/intl: ^3.4|^4.3
- symfony/web-profiler-bundle: ^3.4|^4.3
- symfony/web-server-bundle: ^4.4
This package is auto-updated.
Last update: 2024-09-19 02:37:45 UTC
README
Sylius 库存警报插件
当您的产品库存达到特定阈值时获得通知
目录
介绍
插件安装并配置后,您可以在管理员中为每个产品定义库存阈值,以及/或分类。当库存水平低于此阈值(无论是因为新订单、管理员中的库存修改或库存阈值修改)时,通知将在管理员仪表板中显示,并通过电子邮件发送。也可以轻松实现自定义通知器。
安装
在 Sylius 应用程序中
- 安装插件:
composer require aropixel/sylius-stock-alert-plugin
如果插件未在 config/bundles.php 文件中注册,请通过添加以下内容来注册:
Aropixel\SyliusStockAlertPlugin\AropixelSyliusStockAlertPlugin::class => ['all' => true],
- 在配置文件夹中创建一个 aropixel_sylius_stock_alert.yaml,并导入插件配置
imports:
- { resource: "@AropixelSyliusStockAlertPlugin/Resources/config/app/config.yml" }
-
确保 Sylius 邮件插件已配置(在您的 config/sylius_mailer.yaml 文件中)
-
如果您需要电子邮件库存警报,请启用它并在 aropixel_sylius_stock_alert.yaml 中配置它(您可以为电子邮件警报设置多个收件人)
aropixel_sylius_stock_alert:
mail_stock_notifier:
enabled: true
recipients: ['david@aropixel.com']
- 在您的产品Variant 实体中使用 ProductVariantTrait
...
use Aropixel\SyliusStockAlertPlugin\Entity\ProductVariantTrait as AropixelSyliusStockAlertProductVariantTrait;
...
/**
* @ORM\Entity
* @ORM\Table(name="sylius_product_variant")
*/
class ProductVariant extends BaseProductVariant
{
use AropixelSyliusStockAlertProductVariantTrait {
AropixelSyliusStockAlertProductVariantTrait::__construct as private __stockAlertTraitConstruct;
}
public function __construct()
{
$this->__stockAlertTraitConstruct();
parent::__construct();
}
...
}
- 在您的 Taxon 实体中使用 TaxonTrait
...
use Aropixel\SyliusStockAlertPlugin\Entity\TaxonTrait as AropixelSyliusStockAlertTaxonVariantTrait;
...
**
* @ORM\Entity
* @ORM\Table(name="sylius_taxon")
*/
class Taxon extends BaseTaxon implements Comparable
{
use AropixelSyliusStockAlertTaxonVariantTrait;
...
}
- 运行迁移
php bin/console doctrine:migrations:diff
php bin/console doctrine:migrations:migrate
- 安装资产
php bin/console assets:install
使用
您可以在产品管理员中定义库存阈值(“库存”选项卡),也可以在产品的分类中定义。产品中的库存阈值具有最高优先级:如果已定义,则不会被分类的库存阈值覆盖。如果产品中没有定义库存阈值,则插件将查看产品的所有分类,比较它们,并保留最低的(分类中限制最严格的库存阈值)。
每次库存或库存阈值发生变化时,插件都会更新仪表板通知。
每次完成订单时,插件都会查找所有实现的通知器(默认情况下仅电子邮件通知器),并发送相关通知。电子邮件通知器是插件中默认实现的通知器。如果您想实现其他通知器(如 SMS 等),您只需创建一个扩展 Aropixel\SyliusStockAlertPlugin\StockNotifier\StockNotifierInterface 的类,并实现 sendNotification() 方法。您的该方法将自动被调用。
许可证
Aropixel Blog Bundle 采用 MIT 许可证