setono/sylius-reserve-stock-plugin

Sylius 保留库存插件。

安装数: 17,787

依赖者: 0

建议者: 0

安全: 0

星标: 6

关注者: 2

分支: 4

公开问题: 12

类型:sylius-plugin

v1.3.1 2022-02-03 10:49 UTC

README

Latest Version on Packagist Software License Build Status Quality Score

此插件将在指定时间内保留客户购物车中的商品。

安装

1. Composer

composer require setono/sylius-reserve-stock-plugin

2. 加载包

将包添加到 config/bundles.php 中的包列表中

<?php

return [
    // ...
    Setono\SyliusReserveStockPlugin\SetonoSyliusReserveStockPlugin::class => ['all' => true],
    // ...
];

3. 配置

默认配置将自动应用。要查找可调整的设置,请运行

bin/console config:dump-reference SetonoSyliusReserveStockPlugin

默认配置为

setono_sylius_reserve_stock:

    # Define the Time To Live (TTL) for a product reservation.
    ttl: 3600 # Example: 1800

4. 包含存储库

选项 1:通过配置加载存储库

如果尚未扩展 OrderItem 存储库,则适用此选项。

sylius_order:
    resources:
        order_item:
            classes:
                repository: Setono\SyliusReserveStockPlugin\Repository\OrderItemRepository

选项 2:在存储库中包含属性

如果已扩展 OrderItem 存储库,则适用此选项。将属性添加到如下示例中的存储库类。该包还包含一个接口(InCartQuantityForProductVariantOrderItemRepositoryAwareInterface),您可以选择加载。

<?php

declare(strict_types=1);

namespace App\Repository\OrderItemRepository;

use Setono\SyliusReserveStockPlugin\Repository\InCartQuantityForProductVariantOrderItemRepositoryAwareInterface;
use Setono\SyliusReserveStockPlugin\Repository\ProductVariantCartOrderItem;
use Sylius\Bundle\OrderBundle\Doctrine\ORM\OrderItemRepository as BaseOrderItemRepository;

final class OrderItemRepository extends BaseOrderItemRepository implements InCartQuantityForProductVariantOrderItemRepositoryAwareInterface
{
    use ProductVariantCartOrderItem; // Load trait here
}