3declare(strict_types=1);
413 if (is_null($this->
id)) {
415 $data = $this->
raw(self::FIELD_ID);
416 if (is_null($data)) {
419 $this->
id = (string) $data;
433 if (is_null($this->version)) {
435 $data = $this->
raw(self::FIELD_VERSION);
436 if (is_null($data)) {
439 $this->version = (int) $data;
453 if (is_null($this->createdAt)) {
455 $data = $this->
raw(self::FIELD_CREATED_AT);
456 if (is_null($data)) {
459 $data = DateTimeImmutable::createFromFormat(MapperFactory::DATETIME_FORMAT, $data);
460 if (
false === $data) {
463 $this->createdAt = $data;
477 if (is_null($this->lastModifiedAt)) {
479 $data = $this->
raw(self::FIELD_LAST_MODIFIED_AT);
480 if (is_null($data)) {
483 $data = DateTimeImmutable::createFromFormat(MapperFactory::DATETIME_FORMAT, $data);
484 if (
false === $data) {
487 $this->lastModifiedAt = $data;
501 if (is_null($this->key)) {
503 $data = $this->
raw(self::FIELD_KEY);
504 if (is_null($data)) {
507 $this->key = (string) $data;
521 if (is_null($this->customerId)) {
523 $data = $this->
raw(self::FIELD_CUSTOMER_ID);
524 if (is_null($data)) {
527 $this->customerId = (string) $data;
541 if (is_null($this->customerEmail)) {
543 $data = $this->
raw(self::FIELD_CUSTOMER_EMAIL);
544 if (is_null($data)) {
547 $this->customerEmail = (string) $data;
561 if (is_null($this->customerGroup)) {
563 $data = $this->
raw(self::FIELD_CUSTOMER_GROUP);
564 if (is_null($data)) {
582 if (is_null($this->anonymousId)) {
584 $data = $this->
raw(self::FIELD_ANONYMOUS_ID);
585 if (is_null($data)) {
588 $this->anonymousId = (string) $data;
602 if (is_null($this->businessUnit)) {
604 $data = $this->
raw(self::FIELD_BUSINESS_UNIT);
605 if (is_null($data)) {
609 $this->businessUnit = BusinessUnitKeyReferenceModel::of($data);
623 if (is_null($this->store)) {
625 $data = $this->
raw(self::FIELD_STORE);
626 if (is_null($data)) {
644 if (is_null($this->lineItems)) {
646 $data = $this->
raw(self::FIELD_LINE_ITEMS);
647 if (is_null($data)) {
664 if (is_null($this->customLineItems)) {
666 $data = $this->
raw(self::FIELD_CUSTOM_LINE_ITEMS);
667 if (is_null($data)) {
684 if (is_null($this->totalLineItemQuantity)) {
686 $data = $this->
raw(self::FIELD_TOTAL_LINE_ITEM_QUANTITY);
687 if (is_null($data)) {
690 $this->totalLineItemQuantity = (int) $data;
706 if (is_null($this->totalPrice)) {
708 $data = $this->
raw(self::FIELD_TOTAL_PRICE);
709 if (is_null($data)) {
713 $this->totalPrice = CentPrecisionMoneyModel::of($data);
731 if (is_null($this->taxedPrice)) {
733 $data = $this->
raw(self::FIELD_TAXED_PRICE);
734 if (is_null($data)) {
752 if (is_null($this->taxedShippingPrice)) {
754 $data = $this->
raw(self::FIELD_TAXED_SHIPPING_PRICE);
755 if (is_null($data)) {
773 if (is_null($this->discountOnTotalPrice)) {
775 $data = $this->
raw(self::FIELD_DISCOUNT_ON_TOTAL_PRICE);
776 if (is_null($data)) {
794 if (is_null($this->taxMode)) {
796 $data = $this->
raw(self::FIELD_TAX_MODE);
797 if (is_null($data)) {
800 $this->taxMode = (string) $data;
814 if (is_null($this->taxRoundingMode)) {
816 $data = $this->
raw(self::FIELD_TAX_ROUNDING_MODE);
817 if (is_null($data)) {
820 $this->taxRoundingMode = (string) $data;
834 if (is_null($this->taxCalculationMode)) {
836 $data = $this->
raw(self::FIELD_TAX_CALCULATION_MODE);
837 if (is_null($data)) {
840 $this->taxCalculationMode = (string) $data;
854 if (is_null($this->inventoryMode)) {
856 $data = $this->
raw(self::FIELD_INVENTORY_MODE);
857 if (is_null($data)) {
860 $this->inventoryMode = (string) $data;
874 if (is_null($this->cartState)) {
876 $data = $this->
raw(self::FIELD_CART_STATE);
877 if (is_null($data)) {
880 $this->cartState = (string) $data;
894 if (is_null($this->billingAddress)) {
896 $data = $this->
raw(self::FIELD_BILLING_ADDRESS);
897 if (is_null($data)) {
901 $this->billingAddress = AddressModel::of($data);
915 if (is_null($this->shippingAddress)) {
917 $data = $this->
raw(self::FIELD_SHIPPING_ADDRESS);
918 if (is_null($data)) {
922 $this->shippingAddress = AddressModel::of($data);
936 if (is_null($this->shippingMode)) {
938 $data = $this->
raw(self::FIELD_SHIPPING_MODE);
939 if (is_null($data)) {
942 $this->shippingMode = (string) $data;
956 if (is_null($this->shippingKey)) {
958 $data = $this->
raw(self::FIELD_SHIPPING_KEY);
959 if (is_null($data)) {
962 $this->shippingKey = (string) $data;
976 if (is_null($this->shippingInfo)) {
978 $data = $this->
raw(self::FIELD_SHIPPING_INFO);
979 if (is_null($data)) {
1003 if (is_null($this->shippingRateInput)) {
1005 $data = $this->
raw(self::FIELD_SHIPPING_RATE_INPUT);
1006 if (is_null($data)) {
1010 $this->shippingRateInput = $className::of($data);
1024 if (is_null($this->shippingCustomFields)) {
1026 $data = $this->
raw(self::FIELD_SHIPPING_CUSTOM_FIELDS);
1027 if (is_null($data)) {
1031 $this->shippingCustomFields = CustomFieldsModel::of($data);
1045 if (is_null($this->shipping)) {
1047 $data = $this->
raw(self::FIELD_SHIPPING);
1048 if (is_null($data)) {
1066 if (is_null($this->itemShippingAddresses)) {
1068 $data = $this->
raw(self::FIELD_ITEM_SHIPPING_ADDRESSES);
1069 if (is_null($data)) {
1072 $this->itemShippingAddresses = AddressCollection::fromArray($data);
1086 if (is_null($this->discountCodes)) {
1088 $data = $this->
raw(self::FIELD_DISCOUNT_CODES);
1089 if (is_null($data)) {
1106 if (is_null($this->directDiscounts)) {
1108 $data = $this->
raw(self::FIELD_DIRECT_DISCOUNTS);
1109 if (is_null($data)) {
1126 if (is_null($this->refusedGifts)) {
1128 $data = $this->
raw(self::FIELD_REFUSED_GIFTS);
1129 if (is_null($data)) {
1132 $this->refusedGifts = CartDiscountReferenceCollection::fromArray($data);
1146 if (is_null($this->paymentInfo)) {
1148 $data = $this->
raw(self::FIELD_PAYMENT_INFO);
1149 if (is_null($data)) {
1167 if (is_null($this->country)) {
1169 $data = $this->
raw(self::FIELD_COUNTRY);
1170 if (is_null($data)) {
1173 $this->country = (string) $data;
1187 if (is_null($this->locale)) {
1189 $data = $this->
raw(self::FIELD_LOCALE);
1190 if (is_null($data)) {
1193 $this->locale = (string) $data;
1207 if (is_null($this->origin)) {
1209 $data = $this->
raw(self::FIELD_ORIGIN);
1210 if (is_null($data)) {
1213 $this->origin = (string) $data;
1227 if (is_null($this->custom)) {
1229 $data = $this->
raw(self::FIELD_CUSTOM);
1230 if (is_null($data)) {
1234 $this->custom = CustomFieldsModel::of($data);
1248 if (is_null($this->discountTypeCombination)) {
1250 $data = $this->
raw(self::FIELD_DISCOUNT_TYPE_COMBINATION);
1251 if (is_null($data)) {
1255 $this->discountTypeCombination = $className::of($data);
1269 if (is_null($this->deleteDaysAfterLastModification)) {
1271 $data = $this->
raw(self::FIELD_DELETE_DAYS_AFTER_LAST_MODIFICATION);
1272 if (is_null($data)) {
1275 $this->deleteDaysAfterLastModification = (int) $data;
1289 if (is_null($this->lastModifiedBy)) {
1291 $data = $this->
raw(self::FIELD_LAST_MODIFIED_BY);
1292 if (is_null($data)) {
1296 $this->lastModifiedBy = LastModifiedByModel::of($data);
1310 if (is_null($this->createdBy)) {
1312 $data = $this->
raw(self::FIELD_CREATED_BY);
1313 if (is_null($data)) {
1317 $this->createdBy = CreatedByModel::of($data);
1677 #[\ReturnTypeWillChange]
1688 return (
object) $data;
__construct(?string $id=null, ?int $version=null, ?DateTimeImmutable $createdAt=null, ?DateTimeImmutable $lastModifiedAt=null, ?string $key=null, ?string $customerId=null, ?string $customerEmail=null, ?CustomerGroupReference $customerGroup=null, ?string $anonymousId=null, ?BusinessUnitKeyReference $businessUnit=null, ?StoreKeyReference $store=null, ?LineItemCollection $lineItems=null, ?CustomLineItemCollection $customLineItems=null, ?int $totalLineItemQuantity=null, ?CentPrecisionMoney $totalPrice=null, ?TaxedPrice $taxedPrice=null, ?TaxedPrice $taxedShippingPrice=null, ?DiscountOnTotalPrice $discountOnTotalPrice=null, ?string $taxMode=null, ?string $taxRoundingMode=null, ?string $taxCalculationMode=null, ?string $inventoryMode=null, ?string $cartState=null, ?Address $billingAddress=null, ?Address $shippingAddress=null, ?string $shippingMode=null, ?string $shippingKey=null, ?ShippingInfo $shippingInfo=null, ?ShippingRateInput $shippingRateInput=null, ?CustomFields $shippingCustomFields=null, ?ShippingCollection $shipping=null, ?AddressCollection $itemShippingAddresses=null, ?DiscountCodeInfoCollection $discountCodes=null, ?DirectDiscountCollection $directDiscounts=null, ?CartDiscountReferenceCollection $refusedGifts=null, ?PaymentInfo $paymentInfo=null, ?string $country=null, ?string $locale=null, ?string $origin=null, ?CustomFields $custom=null, ?DiscountTypeCombination $discountTypeCombination=null, ?int $deleteDaysAfterLastModification=null, ?LastModifiedBy $lastModifiedBy=null, ?CreatedBy $createdBy=null)