本文整理匯總了PHP中Magento\Customer\Api\AccountManagementInterface::createAccountWithPasswordHash方法的典型用法代碼示例。如果您正苦於以下問題:PHP AccountManagementInterface::createAccountWithPasswordHash方法的具體用法?PHP AccountManagementInterface::createAccountWithPasswordHash怎麽用?PHP AccountManagementInterface::createAccountWithPasswordHash使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Magento\Customer\Api\AccountManagementInterface
的用法示例。
在下文中一共展示了AccountManagementInterface::createAccountWithPasswordHash方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: populateCustomerInfo
/**
* Populate customer model
*
* @param Quote $quote
* @return void
*/
public function populateCustomerInfo(QuoteEntity $quote)
{
$customer = $quote->getCustomer();
if (!$customer->getId()) {
$customer = $this->accountManagement->createAccountWithPasswordHash($customer, $quote->getPasswordHash());
$quote->setCustomer($customer);
} else {
$this->customerRepository->save($customer);
}
if (!$quote->getBillingAddress()->getId() && $customer->getDefaultBilling()) {
$quote->getBillingAddress()->importCustomerAddressData($this->customerAddressRepository->getById($customer->getDefaultBilling()));
$quote->getBillingAddress()->setCustomerAddressId($customer->getDefaultBilling());
}
if (!$quote->getShippingAddress()->getSameAsBilling() && !$quote->getBillingAddress()->getId() && $customer->getDefaultShipping()) {
$quote->getShippingAddress()->importCustomerAddressData($this->customerAddressRepository->getById($customer->getDefaultShipping()));
$quote->getShippingAddress()->setCustomerAddressId($customer->getDefaultShipping());
}
}
示例2: testCreateNewCustomerWithPasswordHash
/**
* @magentoDbIsolation enabled
*/
public function testCreateNewCustomerWithPasswordHash()
{
$email = 'email@example.com';
$storeId = 1;
$firstname = 'Tester';
$lastname = 'McTest';
$groupId = 1;
$newCustomerEntity = $this->customerFactory->create()->setStoreId($storeId)->setEmail($email)->setFirstname($firstname)->setLastname($lastname)->setGroupId($groupId);
/** @var \Magento\Framework\Math\Random $mathRandom */
$password = $this->objectManager->get('Magento\\Framework\\Math\\Random')->getRandomString(AccountManagement::MIN_PASSWORD_LENGTH);
/** @var \Magento\Framework\Encryption\EncryptorInterface $encryptor */
$encryptor = $this->objectManager->get('Magento\\Framework\\Encryption\\EncryptorInterface');
$passwordHash = $encryptor->getHash($password, true);
$savedCustomer = $this->accountManagement->createAccountWithPasswordHash($newCustomerEntity, $passwordHash);
$this->assertNotNull($savedCustomer->getId());
$this->assertEquals($email, $savedCustomer->getEmail());
$this->assertEquals($storeId, $savedCustomer->getStoreId());
$this->assertEquals($firstname, $savedCustomer->getFirstname());
$this->assertEquals($lastname, $savedCustomer->getLastname());
$this->assertEquals($groupId, $savedCustomer->getGroupId());
$this->assertTrue(!$savedCustomer->getSuffix());
$this->assertEquals($savedCustomer->getId(), $this->accountManagement->authenticate($email, $password)->getId());
}