aropixel/sylius-stock-alert-plugin

当您的产品库存达到特定阈值时获得通知

安装: 57

依赖: 0

建议者: 0

安全: 0

星级: 6

观察者: 2

分支: 0

开放问题: 0

类型:sylius-plugin


README

Aropixel logo

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 许可证