This modules is used for saving customer group prices into storage and contains plugins for reading them.
composer req valantic-spryker/price-product-customer-group-storage
src/Pyz/Zed/Event/EventDependencyProvider.php
use ValanticSpryker\Zed\PriceProductCustomerGroupStorage\Communication\Plugin\Event\Subscriber\PriceProductCustomerGroupStorageEventSubscriber;
...
public function getEventSubscriberCollection()
{
...
$eventSubscriberCollection->add(new PriceProductCustomerGroupStorageEventSubscriber());
...
}
src/Pyz/Zed/Synchronization/SynchronizationDependencyProvider.php
use \ValanticSpryker\Zed\PriceProductCustomerGroupStorage\Communication\Plugin\Synchronization\PriceProductAbstractCustomerGroupSynchronizationDataBulkPlugin
use \ValanticSpryker\Zed\PriceProductCustomerGroupStorage\Communication\Plugin\Synchronization\PriceProductConcreteCustomerGroupSynchronizationDataBulkPlugin
...
protected function getSynchronizationDataPlugins(): array
{
return [
...
new PriceProductAbstractCustomerGroupSynchronizationDataBulkPlugin(),
new PriceProductConcreteCustomerGroupSynchronizationDataBulkPlugin(),
];
}
src/Pyz/Client/PriceProductStorage/PriceProductStorageDependencyProvider.php
use ValanticSpryker\Client\PriceProductCustomerGroupStorage\Plugin\PriceProductStorageExtension\PriceProductCustomerGroupStorageDimensionPlugin;
...
public function getPriceDimensionStorageReaderPlugins(): array
{
return [
...
new PriceProductCustomerGroupStorageDimensionPlugin(),
];
}
src/Pyz/Zed/EventBehavior/EventBehaviorDependencyProvider.php
use ValanticSpryker\Zed\PriceProductCustomerGroupStorage\Communication\Plugin\Event\PriceProductAbstractCustomerGroupEventResourceBulkRepositoryPlugin;
use ValanticSpryker\Zed\PriceProductCustomerGroupStorage\Communication\Plugin\Event\PriceProductConcreteCustomerGroupEventResourceBulkRepositoryPlugin;
...
protected function getEventTriggerResourcePlugins()
{
return [
...
new PriceProductAbstractCustomerGroupEventResourceBulkRepositoryPlugin(),
new PriceProductConcreteCustomerGroupEventResourceBulkRepositoryPlugin(),
];
}
src/Pyz/Zed/PriceProductCustomerGroupStorage/PriceProductCustomerGroupStorageConfig.php
<?php
declare(strict_types = 1);
namespace Pyz\Zed\PriceProductCustomerGroupStorage;
use Pyz\Zed\Synchronization\SynchronizationConfig;
use ValanticSpryker\Zed\PriceProductCustomerGroupStorage\PriceProductCustomerGroupStorageConfig as VsyPriceProductCustomerGroupStorageConfig;
class PriceProductCustomerGroupStorageConfig extends VsyPriceProductCustomerGroupStorageConfig
{
/**
* @return string|null
*/
public function getPriceProductConcreteCustomerGroupSynchronizationPoolName(): ?string
{
return SynchronizationConfig::DEFAULT_SYNCHRONIZATION_POOL_NAME;
}
/**
* @return string|null
*/
public function getPriceProductAbstractCustomerGroupSynchronizationPoolName(): ?string
{
return SynchronizationConfig::DEFAULT_SYNCHRONIZATION_POOL_NAME;
}
}
src/Pyz/Zed/PriceProductCustomerGroup/Persistence/Propel/Schema/vsy_price_product_customer_group.schema.xml
<?xml version="1.0"?>
<database
xmlns="spryker:schema-01"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
name="zed"
xsi:schemaLocation="spryker:schema-01 https://static.spryker.com/schema-01.xsd"
namespace="Orm\Zed\PriceProductCustomerGroup\Persistence"
package="src.Orm.Zed.PriceProductCustomerGroup.Persistence"
>
<table name="vsy_price_product_customer_group">
<behavior name="event">
<parameter name="vsy_price_product_customer_group_all" column="*"/>
</behavior>
</table>
</database>
propel:install
, transfer:generate