/** * @Given I have a new address with :street :city :region :zip :country */ public function iHaveANewAddressWith($street, $city, $region, $zip, $country) { $countryId = $this->getCountryId($country); $region = $this->loadRegionByName($region, $countryId); $address = $this->addressFactory->create()->setStreet((array) $street)->setCity($city)->setPostcode($zip)->setCountryId($countryId)->setRegion($region)->setRegionId($region->getRegionId())->setFirstname($this->customer->getFirstname())->setLastname($this->customer->getLastname())->setTelephone('555-555-5555')->setCustomerId($this->customer->getId()); $this->customerAddress = $address; }
/** * Creates a collection item that represents a customer for the customer Grid. * * @param CustomerInterface $customer Input data for creating the item. * @return \Magento\Framework\Object Collection item that represents a customer */ protected function createCustomerItem(CustomerInterface $customer) { $customerNameParts = [$customer->getPrefix(), $customer->getFirstname(), $customer->getMiddlename(), $customer->getLastname(), $customer->getSuffix()]; $customerItem = new \Magento\Framework\Object(); $customerItem->setId($customer->getId()); $customerItem->setEntityId($customer->getId()); // All parts of the customer name must be displayed in the name column of the grid $customerItem->setName(implode(' ', array_filter($customerNameParts))); $customerItem->setEmail($customer->getEmail()); $customerItem->setWebsiteId($customer->getWebsiteId()); $customerItem->setCreatedAt($customer->getCreatedAt()); $customerItem->setGroupId($customer->getGroupId()); $billingAddress = null; foreach ($customer->getAddresses() as $address) { if ($address->isDefaultBilling()) { $billingAddress = $address; break; } } if ($billingAddress !== null) { $customerItem->setBillingTelephone($billingAddress->getTelephone()); $customerItem->setBillingPostcode($billingAddress->getPostcode()); $customerItem->setBillingCountryId($billingAddress->getCountryId()); $region = $billingAddress->getRegion() === null ? '' : $billingAddress->getRegion()->getRegion(); $customerItem->setBillingRegion($region); } return $customerItem; }
/** * @param CustomerInterface $customer * @return \Openpay\Client\Type\OpenpayCustomerType * @throws LocalizedException */ public function save(CustomerInterface $customer) { $params = ['name' => $customer->getFirstname(), 'last_name' => $customer->getLastname(), 'email' => $customer->getEmail(), 'requires_account' => self::CUSTOMER_REQUIRES_ACCOUNT, 'external_id' => $customer->getId()]; try { $openpayCustomer = $this->customerAdapter->store($params); } catch (OpenpayException $e) { throw new LocalizedException(__($e->getDescription()), $e); } return $openpayCustomer; }
public function _populateQuoteAddrShipping(\Magento\Quote\Model\Quote $quote, \Magento\Customer\Api\Data\CustomerInterface $customerDo) { /** @var \Magento\Quote\Model\Quote\Address $addr */ $addr = $this->_manObj->create(\Magento\Quote\Model\Quote\Address::class); $addr->setFirstname($customerDo->getFirstname()); $addr->setLastname($customerDo->getLastname()); $addr->setEmail($customerDo->getEmail()); $addr->setTelephone('23344556'); $addr->setStreet('Liela iela'); $addr->setCity('Riga'); $addr->setRegionId(362); // Riga region $addr->setPostcode('1010'); $addr->setCountryId('LV'); $quote->setShippingAddress($addr); return $quote; }
/** * Concatenate all customer name parts into full customer name. * * @param CustomerInterface $customerData * @return string */ public function getCustomerName(CustomerInterface $customerData) { $name = ''; $prefixMetadata = $this->_customerMetadataService->getAttributeMetadata('prefix'); if ($prefixMetadata->isVisible() && $customerData->getPrefix()) { $name .= $customerData->getPrefix() . ' '; } $name .= $customerData->getFirstname(); $middleNameMetadata = $this->_customerMetadataService->getAttributeMetadata('middlename'); if ($middleNameMetadata->isVisible() && $customerData->getMiddlename()) { $name .= ' ' . $customerData->getMiddlename(); } $name .= ' ' . $customerData->getLastname(); $suffixMetadata = $this->_customerMetadataService->getAttributeMetadata('suffix'); if ($suffixMetadata->isVisible() && $customerData->getSuffix()) { $name .= ' ' . $customerData->getSuffix(); } return $name; }
/** * Validate customer attribute values. * * @param \Magento\Customer\Api\Data\CustomerInterface $customer * @throws InputException * @return void * @SuppressWarnings(PHPMD.CyclomaticComplexity) * @SuppressWarnings(PHPMD.NPathComplexity) */ private function validate(\Magento\Customer\Api\Data\CustomerInterface $customer) { $exception = new InputException(); if (!\Zend_Validate::is(trim($customer->getFirstname()), 'NotEmpty')) { $exception->addError(__(InputException::REQUIRED_FIELD, ['fieldName' => 'firstname'])); } if (!\Zend_Validate::is(trim($customer->getLastname()), 'NotEmpty')) { $exception->addError(__(InputException::REQUIRED_FIELD, ['fieldName' => 'lastname'])); } $isEmailAddress = \Zend_Validate::is($customer->getEmail(), 'EmailAddress'); if (!$isEmailAddress) { $exception->addError(__(InputException::INVALID_FIELD_VALUE, ['fieldName' => 'email', 'value' => $customer->getEmail()])); } $dob = $this->getAttributeMetadata('dob'); if ($dob !== null && $dob->isRequired() && '' == trim($customer->getDob())) { $exception->addError(__(InputException::REQUIRED_FIELD, ['fieldName' => 'dob'])); } $taxvat = $this->getAttributeMetadata('taxvat'); if ($taxvat !== null && $taxvat->isRequired() && '' == trim($customer->getTaxvat())) { $exception->addError(__(InputException::REQUIRED_FIELD, ['fieldName' => 'taxvat'])); } $gender = $this->getAttributeMetadata('gender'); if ($gender !== null && $gender->isRequired() && '' == trim($customer->getGender())) { $exception->addError(__(InputException::REQUIRED_FIELD, ['fieldName' => 'gender'])); } if ($exception->wasErrorAdded()) { throw $exception; } }