1.1.2 2020-03-03 10:58 UTC

README

license

从结账过程中移除客户注册。每个客户在下单后都会被保存。在下另一个订单表单时,将匹配相同的客户的电子邮件地址。因此,您可以在ZED中获得同一客户的全部订单历史。

您需要实现3个包

  • fond-of-spryker/checkout-page
  • fond-of-spryker/customer-page
  • fond-of-spryker/customer

安装

所有包都相互依赖

composer require fond-of-spryker/customer

配置

扩展现有的CheckoutPageDependencyProvider,并添加来自fond-of-spryker/checkout-page的新提供者

namespace Pyz\Yves\CheckoutPage;;

use FondOfSpryker\Yves\CheckoutPage\CheckoutPageDependencyProvider as FondOfSprykerCheckoutPageDependencyProvider;

class CheckoutPageDependencyProvider extends FondOfSprykerCheckoutPageDependencyProvider

转到YvesBootstrap.php,并替换提供者插件

use SprykerShop\Yves\CheckoutPage\Plugin\Provider\CheckoutPageControllerProvider;
use FondOfSpryker\Yves\CheckoutPage\Plugin\Provider\CheckoutPageControllerProvider;

接下来,对CustomerPageDependencyProvider执行相同的操作

namespace Pyz\Yves\CustomerPage;

use FondOfSpryker\Yves\CustomerPage\CustomerPageDependencyProvider as FondOfSprykerCustomerPageDependencyProvider;

class CustomerPageDependencyProvider extends FondOfSprykerCustomerPageDependencyProvider

至少我们需要配置ZED

namespace Pyz\Zed\Customer;

use Generated\Shared\Transfer\SequenceNumberSettingsTransfer;
use FondOfSpryker\Shared\Customer\CustomerConstants;
use Spryker\Zed\Customer\CustomerConfig as BaseCustomerConfig;

class CustomerConfig extends BaseCustomerConfig
{
    /**
     * @return \Generated\Shared\Transfer\SequenceNumberSettingsTransfer
     */
    public function getCustomerReferenceDefaults()
    {
        $sequenceNumberSettingsTransfer = new SequenceNumberSettingsTransfer();

        $sequenceNumberSettingsTransfer->setName(CustomerConstants::NAME_CUSTOMER_REFERENCE);

        $sequenceNumberPrefixParts = [];
        $sequenceNumberPrefixParts[] = $this->get(CustomerConstants::CUSTOMER_REFERENCE_PREFIX);

        $prefix = implode($this->getUniqueIdentifierSeparator(), $sequenceNumberPrefixParts) . $this->getUniqueIdentifierSeparator();

        $sequenceNumberSettingsTransfer->setPrefix($prefix);
        $sequenceNumberSettingsTransfer->setOffset($this->get(CustomerConstants::CUSTOMER_REFERENCE_OFFSET));

        return $sequenceNumberSettingsTransfer;
    }
}