kmatulewicz/sylius-baselinker

Sylius 的 Baselinker API 插件。


README

此插件正在开发中,请不要将其用于其他目的,尤其是不要在生产环境中使用此插件。

如何测试插件

运行开发环境最快的方法是使用 docker

docker compose up -d
docker compose exec app make init

tests/Application/.env 中更改 BL_TOKEN。现在您可以在本地主机上的管理面板中设置插件:https:///admin,用户名是 sylius,密码与用户名相同。您可以运行同步命令

docker compose exec app make symfony baselinker:orders:add
docker compose exec app make symfony baselinker:orders:payments
docker compose exec app make symfony baselinker:orders:statuses

或测试

docker compose exec app make test

安装

此插件可以安装到现有或新的 sylius-standard 应用程序中。

  1. 运行

    composer require kmatulewicz/sylius-baselinker
  2. 检查 config/bundles.php 中是否存在插件条目

    SyliusBaselinkerPlugin\SyliusBaselinkerPlugin::class => ['all' => true],
    
  3. 添加到 config/packages/_sylius.yaml

    - { resource: "@SyliusBaselinkerPlugin/Resources/config/config.yml" }
  4. 添加到 config/routes.yaml

    sylius_baselinker:
        resource: "@SyliusBaselinkerPlugin/Resources/config/routing.yml"
  5. SyliusBaselinkerPlugin\Entity\OrderInterfaceSyliusBaselinkerPlugin\Entity\OrderTrait 添加到 src/Entity/Order/Order.php。最终结果应类似于

    // src/Entity/Order/Order.php
    // [...]
    use SyliusBaselinkerPlugin\Entity\OrderInterface;
    use SyliusBaselinkerPlugin\Entity\OrderTrait;
    // [...]
    class Order extends BaseOrder implements OrderInterface
    {
        use OrderTrait;
    }
  6. BL_TOKEN 添加到您的 .env 文件中。令牌可在 Baselinker > 我的账户 > API 中找到。如果您还没有令牌,请创建一个新的。最终结果应类似于

    BL_TOKEN=token_copied_from_baselinker
    
  7. 执行迁移

    bin/console doctrine:migrations:migrate
  8. 重新构建缓存以正确显示所有新翻译

    bin/console cache:clear
    bin/console cache:warmup
  9. 转到管理面板并在 Baselinker 部分设置订单来源和状态关联。

用法

此插件提供以下命令

  1. baselinker:orders:add 将未同步的商店订单添加到 Baselinker。
  2. baselinker:orders:payments 添加在最后同步后商店中完成的支付到 Baselinker。
  3. baselinker:orders:statuses 检查已同步订单的状态变化。将商店订单状态更改应用于相应的 Baselinker 状态。