setono / sylius-peak-wms-plugin
Integrate your store with Peak WMS
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 1
Type:sylius-plugin
Requires
- php: >=8.1
- doctrine/orm: ^2.15
- doctrine/persistence: ^2.5 || ^3.2
- knplabs/knp-menu: ^3.4
- ocramius/doctrine-batch-utils: ^2.4
- psr/event-dispatcher: ^1.0
- setono/composite-compiler-pass: ^1.1
- setono/doctrine-orm-trait: ^1.1
- setono/peak-wms-php-sdk: dev-master
- sylius/core: ^1.0
- sylius/core-bundle: ^1.0
- sylius/grid-bundle: ^1.0
- sylius/order: ^1.0
- sylius/resource-bundle: ^1.0
- sylius/shipping-bundle: ^1.0
- sylius/ui-bundle: ^1.0
- symfony/config: ^5.4 || ^6.4
- symfony/console: ^5.4 || ^6.4
- symfony/dependency-injection: ^5.4 || ^6.4
- symfony/event-dispatcher: ^5.4 || ^6.4
- symfony/event-dispatcher-contracts: ^3.4
- symfony/form: ^5.4 || ^6.4
- symfony/framework-bundle: ^5.4 || ^6.4
- symfony/http-foundation: ^5.4 || ^6.4
- symfony/http-kernel: ^5.4 || ^6.4
- symfony/messenger: ^5.4 || ^6.4
- symfony/routing: ^5.4 || ^6.4
- symfony/string: ^5.4 || ^6.4
- symfony/validator: ^5.4 || ^6.4
- symfony/workflow: ^5.4 || ^6.4
- twig/twig: ^2.16 || ^3.8
- webmozart/assert: ^1.11
Requires (Dev)
- api-platform/core: ^2.7.16
- babdev/pagerfanta-bundle: ^3.8
- behat/behat: ^3.14
- beyondcode/expose: ^2.6
- doctrine/doctrine-bundle: ^2.11
- infection/infection: ^0.27.6
- jms/serializer-bundle: ^4.2
- lexik/jwt-authentication-bundle: ^2.16
- matthiasnoback/symfony-dependency-injection-test: ^4.3 || ^5.0
- nyholm/psr7: ^1.8
- phpspec/prophecy-phpunit: ^2.2
- phpunit/phpunit: ^9.6
- psalm/plugin-phpunit: ^0.18
- psalm/plugin-symfony: ^5.1
- setono/code-quality-pack: ^2.7.2
- sylius/sylius: ~1.12.13
- symfony/debug-bundle: ^5.4 || ^6.4
- symfony/dotenv: ^5.4 || ^6.4
- symfony/http-client: ^5.4 || ^6.4
- symfony/intl: ^5.4 || ^6.4
- symfony/property-info: ^5.4 || ^6.4
- symfony/serializer: ^5.4 || ^6.4
- symfony/web-profiler-bundle: ^5.4 || ^6.4
- symfony/webpack-encore-bundle: ^1.17
- willdurand/negotiation: ^3.1
This package is auto-updated.
Last update: 2024-06-17 13:50:32 UTC
README
Sylius plugin for Peak WMS
Installation
composer require setono/sylius-peak-wms-plugin
Add plugin class to your bundles.php
Make sure you add it before SyliusGridBundle
, otherwise you'll get
You have requested a non-existent parameter "setono_sylius_peak_wms.model.remote_event.class".
exception.
<?php $bundles = [ // ... Setono\SyliusPeakWMSPlugin\SetonoSyliusPeakWMSPlugin::class => ['all' => true], Sylius\Bundle\GridBundle\SyliusGridBundle::class => ['all' => true], // ... ];
Import routing
# config/routes/setono_sylius_peak_wms.yaml setono_sylius_peak_wms: resource: "@SetonoSyliusPeakWMSPlugin/Resources/config/routes.yaml"
or if your app doesn't use locales:
# config/routes/setono_sylius_peak_wms.yaml setono_sylius_peak_wms: resource: "@SetonoSyliusPeakWMSPlugin/Resources/config/routes_no_locale.yaml"
Add environment variables
Add the following variables to your .env
file:
###> setono/sylius-peak-wms-plugin ### PEAK_WMS_API_KEY=YOUR_API_KEY ###< setono/sylius-peak-wms-plugin ###
Extend entities
Order
entity
<?php # src/Entity/Order/Order.php declare(strict_types=1); namespace App\Entity\Order; use Setono\SyliusPeakWMSPlugin\Model\OrderInterface as PeakWMSOrderInterface; use Setono\SyliusPeakWMSPlugin\Model\OrderTrait as PeakWMSOrderTrait; use Sylius\Component\Core\Model\Order as BaseOrder; use Doctrine\ORM\Mapping as ORM; /** * @ORM\Entity * * @ORM\Table(name="sylius_order") */ class Order extends BaseOrder implements PeakWMSOrderInterface { use PeakWMSOrderTrait; }
Update your database:
php bin/console doctrine:migrations:diff php bin/console doctrine:migrations:migrate
Development
(cd tests/Application && yarn install) (cd tests/Application && yarn build) (cd tests/Application && bin/console assets:install) (cd tests/Application && bin/console doctrine:database:create) (cd tests/Application && bin/console doctrine:schema:create) (cd tests/Application && bin/console sylius:fixtures:load -n) (cd tests/Application && symfony serve -d) vendor/bin/expose token <your expose token> vendor/bin/expose default-server free # If you are not paying for Expose vendor/bin/expose share https://127.0.0.1:8000