mirror of
https://github.com/bdnugget/magento2.git
synced 2026-11-07 17:27:36 +00:00
476 lines
9.2 KiB
PHP
476 lines
9.2 KiB
PHP
<?php
|
|
/**
|
|
* Copyright © Magento, Inc. All rights reserved.
|
|
* See COPYING.txt for license details.
|
|
*/
|
|
namespace Magento\Customer\Model\Data;
|
|
|
|
use Magento\Customer\Api\Data\RegionInterface;
|
|
use \Magento\Framework\Api\AttributeValueFactory;
|
|
|
|
/**
|
|
* Class Address Data Model implementing the Address interface
|
|
*
|
|
*
|
|
* @api
|
|
* @since 100.0.2
|
|
*/
|
|
class Address extends \Magento\Framework\Api\AbstractExtensibleObject implements
|
|
\Magento\Customer\Api\Data\AddressInterface
|
|
{
|
|
/**
|
|
* @var \Magento\Customer\Api\AddressMetadataInterface
|
|
*/
|
|
protected $metadataService;
|
|
|
|
/**
|
|
* @param \Magento\Framework\Api\ExtensionAttributesFactory $extensionFactory
|
|
* @param AttributeValueFactory $attributeValueFactory
|
|
* @param \Magento\Customer\Api\AddressMetadataInterface $metadataService
|
|
* @param array $data
|
|
*/
|
|
public function __construct(
|
|
\Magento\Framework\Api\ExtensionAttributesFactory $extensionFactory,
|
|
AttributeValueFactory $attributeValueFactory,
|
|
\Magento\Customer\Api\AddressMetadataInterface $metadataService,
|
|
$data = []
|
|
) {
|
|
$this->metadataService = $metadataService;
|
|
parent::__construct($extensionFactory, $attributeValueFactory, $data);
|
|
}
|
|
|
|
/**
|
|
* @inheritdoc
|
|
*/
|
|
protected function getCustomAttributesCodes()
|
|
{
|
|
if ($this->customAttributesCodes === null) {
|
|
$this->customAttributesCodes = $this->getEavAttributesCodes($this->metadataService);
|
|
}
|
|
return $this->customAttributesCodes;
|
|
}
|
|
|
|
/**
|
|
* Get id
|
|
*
|
|
* @return int|null
|
|
*/
|
|
public function getId()
|
|
{
|
|
return $this->_get(self::ID);
|
|
}
|
|
|
|
/**
|
|
* Get region
|
|
*
|
|
* @return \Magento\Customer\Api\Data\RegionInterface|null
|
|
*/
|
|
public function getRegion()
|
|
{
|
|
return $this->_get(self::REGION);
|
|
}
|
|
|
|
/**
|
|
* Get region ID
|
|
*
|
|
* @return int
|
|
*/
|
|
public function getRegionId()
|
|
{
|
|
return $this->_get(self::REGION_ID);
|
|
}
|
|
|
|
/**
|
|
* Get country id
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getCountryId()
|
|
{
|
|
return $this->_get(self::COUNTRY_ID);
|
|
}
|
|
|
|
/**
|
|
* Get street
|
|
*
|
|
* @return string[]|null
|
|
*/
|
|
public function getStreet()
|
|
{
|
|
return $this->_get(self::STREET);
|
|
}
|
|
|
|
/**
|
|
* Get company
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getCompany()
|
|
{
|
|
return $this->_get(self::COMPANY);
|
|
}
|
|
|
|
/**
|
|
* Get telephone number
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getTelephone()
|
|
{
|
|
return $this->_get(self::TELEPHONE);
|
|
}
|
|
|
|
/**
|
|
* Get fax number
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getFax()
|
|
{
|
|
return $this->_get(self::FAX);
|
|
}
|
|
|
|
/**
|
|
* Get postcode
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getPostcode()
|
|
{
|
|
return $this->_get(self::POSTCODE);
|
|
}
|
|
|
|
/**
|
|
* Get city name
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getCity()
|
|
{
|
|
return $this->_get(self::CITY);
|
|
}
|
|
|
|
/**
|
|
* Get first name
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getFirstname()
|
|
{
|
|
return $this->_get(self::FIRSTNAME);
|
|
}
|
|
|
|
/**
|
|
* Get last name
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getLastname()
|
|
{
|
|
return $this->_get(self::LASTNAME);
|
|
}
|
|
|
|
/**
|
|
* Get middle name
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getMiddlename()
|
|
{
|
|
return $this->_get(self::MIDDLENAME);
|
|
}
|
|
|
|
/**
|
|
* Get prefix
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getPrefix()
|
|
{
|
|
return $this->_get(self::PREFIX);
|
|
}
|
|
|
|
/**
|
|
* Get suffix
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getSuffix()
|
|
{
|
|
return $this->_get(self::SUFFIX);
|
|
}
|
|
|
|
/**
|
|
* Get Vat id
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getVatId()
|
|
{
|
|
return $this->_get(self::VAT_ID);
|
|
}
|
|
|
|
/**
|
|
* Get customer id
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getCustomerId()
|
|
{
|
|
return $this->_get(self::CUSTOMER_ID);
|
|
}
|
|
|
|
/**
|
|
* Get if this address is default shipping address.
|
|
*
|
|
* @return bool|null
|
|
*/
|
|
public function isDefaultShipping()
|
|
{
|
|
return $this->_get(self::DEFAULT_SHIPPING);
|
|
}
|
|
|
|
/**
|
|
* Get if this address is default billing address
|
|
*
|
|
* @return bool|null
|
|
*/
|
|
public function isDefaultBilling()
|
|
{
|
|
return $this->_get(self::DEFAULT_BILLING);
|
|
}
|
|
|
|
/**
|
|
* Set ID
|
|
*
|
|
* @param int $id
|
|
* @return $this
|
|
*/
|
|
public function setId($id)
|
|
{
|
|
return $this->setData(self::ID, $id);
|
|
}
|
|
|
|
/**
|
|
* Set customer ID
|
|
*
|
|
* @param int $customerId
|
|
* @return $this
|
|
*/
|
|
public function setCustomerId($customerId)
|
|
{
|
|
return $this->setData(self::CUSTOMER_ID, $customerId);
|
|
}
|
|
|
|
/**
|
|
* Set region
|
|
*
|
|
* @param \Magento\Customer\Api\Data\RegionInterface $region
|
|
* @return $this
|
|
*/
|
|
public function setRegion(RegionInterface $region = null)
|
|
{
|
|
return $this->setData(self::REGION, $region);
|
|
}
|
|
|
|
/**
|
|
* Set region ID
|
|
*
|
|
* @param int $regionId
|
|
* @return $this
|
|
*/
|
|
public function setRegionId($regionId)
|
|
{
|
|
return $this->setData(self::REGION_ID, $regionId);
|
|
}
|
|
|
|
/**
|
|
* Set country id
|
|
*
|
|
* @param string $countryId
|
|
* @return $this
|
|
*/
|
|
public function setCountryId($countryId)
|
|
{
|
|
return $this->setData(self::COUNTRY_ID, $countryId);
|
|
}
|
|
|
|
/**
|
|
* Set street
|
|
*
|
|
* @param string[] $street
|
|
* @return $this
|
|
*/
|
|
public function setStreet(array $street)
|
|
{
|
|
return $this->setData(self::STREET, $street);
|
|
}
|
|
|
|
/**
|
|
* Set company
|
|
*
|
|
* @param string $company
|
|
* @return $this
|
|
*/
|
|
public function setCompany($company)
|
|
{
|
|
return $this->setData(self::COMPANY, $company);
|
|
}
|
|
|
|
/**
|
|
* Set telephone number
|
|
*
|
|
* @param string $telephone
|
|
* @return $this
|
|
*/
|
|
public function setTelephone($telephone)
|
|
{
|
|
return $this->setData(
|
|
self::TELEPHONE,
|
|
is_string($telephone) && '' !== $telephone ? trim($telephone) : $telephone
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Set fax number
|
|
*
|
|
* @param string $fax
|
|
* @return $this
|
|
*/
|
|
public function setFax($fax)
|
|
{
|
|
return $this->setData(self::FAX, $fax);
|
|
}
|
|
|
|
/**
|
|
* Set postcode
|
|
*
|
|
* @param string $postcode
|
|
* @return $this
|
|
*/
|
|
public function setPostcode($postcode)
|
|
{
|
|
return $this->setData(self::POSTCODE, $postcode);
|
|
}
|
|
|
|
/**
|
|
* Set city name
|
|
*
|
|
* @param string $city
|
|
* @return $this
|
|
*/
|
|
public function setCity($city)
|
|
{
|
|
return $this->setData(self::CITY, $city);
|
|
}
|
|
|
|
/**
|
|
* Set first name
|
|
*
|
|
* @param string $firstName
|
|
* @return $this
|
|
*/
|
|
public function setFirstname($firstName)
|
|
{
|
|
return $this->setData(self::FIRSTNAME, $firstName);
|
|
}
|
|
|
|
/**
|
|
* Set last name
|
|
*
|
|
* @param string $lastName
|
|
* @return $this
|
|
*/
|
|
public function setLastname($lastName)
|
|
{
|
|
return $this->setData(self::LASTNAME, $lastName);
|
|
}
|
|
|
|
/**
|
|
* Set middle name
|
|
*
|
|
* @param string $middleName
|
|
* @return $this
|
|
*/
|
|
public function setMiddlename($middleName)
|
|
{
|
|
return $this->setData(self::MIDDLENAME, $middleName);
|
|
}
|
|
|
|
/**
|
|
* Set prefix
|
|
*
|
|
* @param string $prefix
|
|
* @return $this
|
|
*/
|
|
public function setPrefix($prefix)
|
|
{
|
|
return $this->setData(self::PREFIX, $prefix);
|
|
}
|
|
|
|
/**
|
|
* Set suffix
|
|
*
|
|
* @param string $suffix
|
|
* @return $this
|
|
*/
|
|
public function setSuffix($suffix)
|
|
{
|
|
return $this->setData(self::SUFFIX, $suffix);
|
|
}
|
|
|
|
/**
|
|
* Set Vat id
|
|
*
|
|
* @param string $vatId
|
|
* @return $this
|
|
*/
|
|
public function setVatId($vatId)
|
|
{
|
|
return $this->setData(self::VAT_ID, $vatId);
|
|
}
|
|
|
|
/**
|
|
* Set if this address is default shipping address.
|
|
*
|
|
* @param bool $isDefaultShipping
|
|
* @return $this
|
|
*/
|
|
public function setIsDefaultShipping($isDefaultShipping)
|
|
{
|
|
return $this->setData(self::DEFAULT_SHIPPING, $isDefaultShipping);
|
|
}
|
|
|
|
/**
|
|
* Set if this address is default billing address
|
|
*
|
|
* @param bool $isDefaultBilling
|
|
* @return $this
|
|
*/
|
|
public function setIsDefaultBilling($isDefaultBilling)
|
|
{
|
|
return $this->setData(self::DEFAULT_BILLING, $isDefaultBilling);
|
|
}
|
|
|
|
/**
|
|
* @inheritdoc
|
|
*
|
|
* @return \Magento\Customer\Api\Data\AddressExtensionInterface|null
|
|
*/
|
|
public function getExtensionAttributes()
|
|
{
|
|
return $this->_getExtensionAttributes();
|
|
}
|
|
|
|
/**
|
|
* @inheritdoc
|
|
*
|
|
* @param \Magento\Customer\Api\Data\AddressExtensionInterface $extensionAttributes
|
|
* @return $this
|
|
*/
|
|
public function setExtensionAttributes(\Magento\Customer\Api\Data\AddressExtensionInterface $extensionAttributes)
|
|
{
|
|
return $this->_setExtensionAttributes($extensionAttributes);
|
|
}
|
|
}
|