3declare(strict_types=1);
299 if (is_null($this->
id)) {
301 $data = $this->
raw(self::FIELD_ID);
302 if (is_null($data)) {
305 $this->
id = (string) $data;
319 if (is_null($this->version)) {
321 $data = $this->
raw(self::FIELD_VERSION);
322 if (is_null($data)) {
325 $this->version = (int) $data;
339 if (is_null($this->createdAt)) {
341 $data = $this->
raw(self::FIELD_CREATED_AT);
342 if (is_null($data)) {
345 $data = DateTimeImmutable::createFromFormat(MapperFactory::DATETIME_FORMAT, $data);
346 if (
false === $data) {
349 $this->createdAt = $data;
363 if (is_null($this->lastModifiedAt)) {
365 $data = $this->
raw(self::FIELD_LAST_MODIFIED_AT);
366 if (is_null($data)) {
369 $data = DateTimeImmutable::createFromFormat(MapperFactory::DATETIME_FORMAT, $data);
370 if (
false === $data) {
373 $this->lastModifiedAt = $data;
387 if (is_null($this->key)) {
389 $data = $this->
raw(self::FIELD_KEY);
390 if (is_null($data)) {
393 $this->key = (string) $data;
408 if (is_null($this->customerNumber)) {
410 $data = $this->
raw(self::FIELD_CUSTOMER_NUMBER);
411 if (is_null($data)) {
414 $this->customerNumber = (string) $data;
428 if (is_null($this->externalId)) {
430 $data = $this->
raw(self::FIELD_EXTERNAL_ID);
431 if (is_null($data)) {
434 $this->externalId = (string) $data;
448 if (is_null($this->lastModifiedBy)) {
450 $data = $this->
raw(self::FIELD_LAST_MODIFIED_BY);
451 if (is_null($data)) {
455 $this->lastModifiedBy = LastModifiedByModel::of($data);
469 if (is_null($this->createdBy)) {
471 $data = $this->
raw(self::FIELD_CREATED_BY);
472 if (is_null($data)) {
476 $this->createdBy = CreatedByModel::of($data);
491 if (is_null($this->email)) {
493 $data = $this->
raw(self::FIELD_EMAIL);
494 if (is_null($data)) {
497 $this->email = (string) $data;
511 if (is_null($this->password)) {
513 $data = $this->
raw(self::FIELD_PASSWORD);
514 if (is_null($data)) {
517 $this->password = (string) $data;
531 if (is_null($this->firstName)) {
533 $data = $this->
raw(self::FIELD_FIRST_NAME);
534 if (is_null($data)) {
537 $this->firstName = (string) $data;
551 if (is_null($this->lastName)) {
553 $data = $this->
raw(self::FIELD_LAST_NAME);
554 if (is_null($data)) {
557 $this->lastName = (string) $data;
571 if (is_null($this->middleName)) {
573 $data = $this->
raw(self::FIELD_MIDDLE_NAME);
574 if (is_null($data)) {
577 $this->middleName = (string) $data;
591 if (is_null($this->title)) {
593 $data = $this->
raw(self::FIELD_TITLE);
594 if (is_null($data)) {
597 $this->title = (string) $data;
611 if (is_null($this->dateOfBirth)) {
613 $data = $this->
raw(self::FIELD_DATE_OF_BIRTH);
614 if (is_null($data)) {
617 $data = DateTimeImmutable::createFromFormat(MapperFactory::DATE_FORMAT, $data);
618 if (
false === $data) {
621 $this->dateOfBirth = $data;
635 if (is_null($this->companyName)) {
637 $data = $this->
raw(self::FIELD_COMPANY_NAME);
638 if (is_null($data)) {
641 $this->companyName = (string) $data;
655 if (is_null($this->vatId)) {
657 $data = $this->
raw(self::FIELD_VAT_ID);
658 if (is_null($data)) {
661 $this->vatId = (string) $data;
675 if (is_null($this->addresses)) {
677 $data = $this->
raw(self::FIELD_ADDRESSES);
678 if (is_null($data)) {
681 $this->addresses = AddressCollection::fromArray($data);
695 if (is_null($this->defaultShippingAddressId)) {
697 $data = $this->
raw(self::FIELD_DEFAULT_SHIPPING_ADDRESS_ID);
698 if (is_null($data)) {
701 $this->defaultShippingAddressId = (string) $data;
715 if (is_null($this->shippingAddressIds)) {
717 $data = $this->
raw(self::FIELD_SHIPPING_ADDRESS_IDS);
718 if (is_null($data)) {
721 $this->shippingAddressIds = $data;
735 if (is_null($this->defaultBillingAddressId)) {
737 $data = $this->
raw(self::FIELD_DEFAULT_BILLING_ADDRESS_ID);
738 if (is_null($data)) {
741 $this->defaultBillingAddressId = (string) $data;
755 if (is_null($this->billingAddressIds)) {
757 $data = $this->
raw(self::FIELD_BILLING_ADDRESS_IDS);
758 if (is_null($data)) {
761 $this->billingAddressIds = $data;
775 if (is_null($this->isEmailVerified)) {
777 $data = $this->
raw(self::FIELD_IS_EMAIL_VERIFIED);
778 if (is_null($data)) {
781 $this->isEmailVerified = (bool) $data;
795 if (is_null($this->customerGroup)) {
797 $data = $this->
raw(self::FIELD_CUSTOMER_GROUP);
798 if (is_null($data)) {
802 $this->customerGroup = CustomerGroupReferenceModel::of($data);
816 if (is_null($this->custom)) {
818 $data = $this->
raw(self::FIELD_CUSTOM);
819 if (is_null($data)) {
823 $this->custom = CustomFieldsModel::of($data);
837 if (is_null($this->locale)) {
839 $data = $this->
raw(self::FIELD_LOCALE);
840 if (is_null($data)) {
843 $this->locale = (string) $data;
857 if (is_null($this->salutation)) {
859 $data = $this->
raw(self::FIELD_SALUTATION);
860 if (is_null($data)) {
863 $this->salutation = (string) $data;
881 if (is_null($this->stores)) {
883 $data = $this->
raw(self::FIELD_STORES);
884 if (is_null($data)) {
887 $this->stores = StoreKeyReferenceCollection::fromArray($data);
901 if (is_null($this->authenticationMode)) {
903 $data = $this->
raw(self::FIELD_AUTHENTICATION_MODE);
904 if (is_null($data)) {
907 $this->authenticationMode = (string) $data;
921 if (is_null($this->customerGroupAssignments)) {
923 $data = $this->
raw(self::FIELD_CUSTOMER_GROUP_ASSIGNMENTS);
924 if (is_null($data)) {
1183 #[\ReturnTypeWillChange]
1198 return (
object) $data;