3declare(strict_types=1);
445 if (is_null($this->
id)) {
447 $data = $this->
raw(self::FIELD_ID);
448 if (is_null($data)) {
451 $this->
id = (string) $data;
465 if (is_null($this->version)) {
467 $data = $this->
raw(self::FIELD_VERSION);
468 if (is_null($data)) {
471 $this->version = (int) $data;
485 if (is_null($this->createdAt)) {
487 $data = $this->
raw(self::FIELD_CREATED_AT);
488 if (is_null($data)) {
491 $data = DateTimeImmutable::createFromFormat(MapperFactory::DATETIME_FORMAT, $data);
492 if (
false === $data) {
495 $this->createdAt = $data;
509 if (is_null($this->lastModifiedAt)) {
511 $data = $this->
raw(self::FIELD_LAST_MODIFIED_AT);
512 if (is_null($data)) {
515 $data = DateTimeImmutable::createFromFormat(MapperFactory::DATETIME_FORMAT, $data);
516 if (
false === $data) {
519 $this->lastModifiedAt = $data;
533 if (is_null($this->key)) {
535 $data = $this->
raw(self::FIELD_KEY);
536 if (is_null($data)) {
539 $this->key = (string) $data;
553 if (is_null($this->customerId)) {
555 $data = $this->
raw(self::FIELD_CUSTOMER_ID);
556 if (is_null($data)) {
559 $this->customerId = (string) $data;
573 if (is_null($this->customerEmail)) {
575 $data = $this->
raw(self::FIELD_CUSTOMER_EMAIL);
576 if (is_null($data)) {
579 $this->customerEmail = (string) $data;
593 if (is_null($this->customerGroup)) {
595 $data = $this->
raw(self::FIELD_CUSTOMER_GROUP);
596 if (is_null($data)) {
614 if (is_null($this->anonymousId)) {
616 $data = $this->
raw(self::FIELD_ANONYMOUS_ID);
617 if (is_null($data)) {
620 $this->anonymousId = (string) $data;
634 if (is_null($this->businessUnit)) {
636 $data = $this->
raw(self::FIELD_BUSINESS_UNIT);
637 if (is_null($data)) {
641 $this->businessUnit = BusinessUnitKeyReferenceModel::of($data);
655 if (is_null($this->store)) {
657 $data = $this->
raw(self::FIELD_STORE);
658 if (is_null($data)) {
676 if (is_null($this->lineItems)) {
678 $data = $this->
raw(self::FIELD_LINE_ITEMS);
679 if (is_null($data)) {
696 if (is_null($this->customLineItems)) {
698 $data = $this->
raw(self::FIELD_CUSTOM_LINE_ITEMS);
699 if (is_null($data)) {
716 if (is_null($this->totalLineItemQuantity)) {
718 $data = $this->
raw(self::FIELD_TOTAL_LINE_ITEM_QUANTITY);
719 if (is_null($data)) {
722 $this->totalLineItemQuantity = (int) $data;
738 if (is_null($this->totalPrice)) {
740 $data = $this->
raw(self::FIELD_TOTAL_PRICE);
741 if (is_null($data)) {
745 $this->totalPrice = CentPrecisionMoneyModel::of($data);
763 if (is_null($this->taxedPrice)) {
765 $data = $this->
raw(self::FIELD_TAXED_PRICE);
766 if (is_null($data)) {
785 if (is_null($this->taxedShippingPrice)) {
787 $data = $this->
raw(self::FIELD_TAXED_SHIPPING_PRICE);
788 if (is_null($data)) {
806 if (is_null($this->discountOnTotalPrice)) {
808 $data = $this->
raw(self::FIELD_DISCOUNT_ON_TOTAL_PRICE);
809 if (is_null($data)) {
827 if (is_null($this->taxMode)) {
829 $data = $this->
raw(self::FIELD_TAX_MODE);
830 if (is_null($data)) {
833 $this->taxMode = (string) $data;
847 if (is_null($this->priceRoundingMode)) {
849 $data = $this->
raw(self::FIELD_PRICE_ROUNDING_MODE);
850 if (is_null($data)) {
853 $this->priceRoundingMode = (string) $data;
867 if (is_null($this->taxRoundingMode)) {
869 $data = $this->
raw(self::FIELD_TAX_ROUNDING_MODE);
870 if (is_null($data)) {
873 $this->taxRoundingMode = (string) $data;
887 if (is_null($this->taxCalculationMode)) {
889 $data = $this->
raw(self::FIELD_TAX_CALCULATION_MODE);
890 if (is_null($data)) {
893 $this->taxCalculationMode = (string) $data;
907 if (is_null($this->inventoryMode)) {
909 $data = $this->
raw(self::FIELD_INVENTORY_MODE);
910 if (is_null($data)) {
913 $this->inventoryMode = (string) $data;
927 if (is_null($this->cartState)) {
929 $data = $this->
raw(self::FIELD_CART_STATE);
930 if (is_null($data)) {
933 $this->cartState = (string) $data;
947 if (is_null($this->freezeStrategy)) {
949 $data = $this->
raw(self::FIELD_FREEZE_STRATEGY);
950 if (is_null($data)) {
953 $this->freezeStrategy = (string) $data;
967 if (is_null($this->billingAddress)) {
969 $data = $this->
raw(self::FIELD_BILLING_ADDRESS);
970 if (is_null($data)) {
974 $this->billingAddress = AddressModel::of($data);
988 if (is_null($this->shippingAddress)) {
990 $data = $this->
raw(self::FIELD_SHIPPING_ADDRESS);
991 if (is_null($data)) {
995 $this->shippingAddress = AddressModel::of($data);
1009 if (is_null($this->shippingMode)) {
1011 $data = $this->
raw(self::FIELD_SHIPPING_MODE);
1012 if (is_null($data)) {
1015 $this->shippingMode = (string) $data;
1029 if (is_null($this->shippingKey)) {
1031 $data = $this->
raw(self::FIELD_SHIPPING_KEY);
1032 if (is_null($data)) {
1035 $this->shippingKey = (string) $data;
1049 if (is_null($this->shippingInfo)) {
1051 $data = $this->
raw(self::FIELD_SHIPPING_INFO);
1052 if (is_null($data)) {
1076 if (is_null($this->shippingRateInput)) {
1078 $data = $this->
raw(self::FIELD_SHIPPING_RATE_INPUT);
1079 if (is_null($data)) {
1083 $this->shippingRateInput = $className::of($data);
1097 if (is_null($this->shippingCustomFields)) {
1099 $data = $this->
raw(self::FIELD_SHIPPING_CUSTOM_FIELDS);
1100 if (is_null($data)) {
1104 $this->shippingCustomFields = CustomFieldsModel::of($data);
1118 if (is_null($this->shipping)) {
1120 $data = $this->
raw(self::FIELD_SHIPPING);
1121 if (is_null($data)) {
1139 if (is_null($this->itemShippingAddresses)) {
1141 $data = $this->
raw(self::FIELD_ITEM_SHIPPING_ADDRESSES);
1142 if (is_null($data)) {
1145 $this->itemShippingAddresses = AddressCollection::fromArray($data);
1159 if (is_null($this->discountCodes)) {
1161 $data = $this->
raw(self::FIELD_DISCOUNT_CODES);
1162 if (is_null($data)) {
1179 if (is_null($this->directDiscounts)) {
1181 $data = $this->
raw(self::FIELD_DIRECT_DISCOUNTS);
1182 if (is_null($data)) {
1199 if (is_null($this->refusedGifts)) {
1201 $data = $this->
raw(self::FIELD_REFUSED_GIFTS);
1202 if (is_null($data)) {
1205 $this->refusedGifts = CartDiscountReferenceCollection::fromArray($data);
1219 if (is_null($this->paymentInfo)) {
1221 $data = $this->
raw(self::FIELD_PAYMENT_INFO);
1222 if (is_null($data)) {
1240 if (is_null($this->country)) {
1242 $data = $this->
raw(self::FIELD_COUNTRY);
1243 if (is_null($data)) {
1246 $this->country = (string) $data;
1260 if (is_null($this->locale)) {
1262 $data = $this->
raw(self::FIELD_LOCALE);
1263 if (is_null($data)) {
1266 $this->locale = (string) $data;
1280 if (is_null($this->origin)) {
1282 $data = $this->
raw(self::FIELD_ORIGIN);
1283 if (is_null($data)) {
1286 $this->origin = (string) $data;
1300 if (is_null($this->custom)) {
1302 $data = $this->
raw(self::FIELD_CUSTOM);
1303 if (is_null($data)) {
1307 $this->custom = CustomFieldsModel::of($data);
1321 if (is_null($this->discountTypeCombination)) {
1323 $data = $this->
raw(self::FIELD_DISCOUNT_TYPE_COMBINATION);
1324 if (is_null($data)) {
1328 $this->discountTypeCombination = $className::of($data);
1342 if (is_null($this->lock)) {
1344 $data = $this->
raw(self::FIELD_LOCK);
1345 if (is_null($data)) {
1363 if (is_null($this->deleteDaysAfterLastModification)) {
1365 $data = $this->
raw(self::FIELD_DELETE_DAYS_AFTER_LAST_MODIFICATION);
1366 if (is_null($data)) {
1369 $this->deleteDaysAfterLastModification = (int) $data;
1384 if (is_null($this->purchaseOrderNumber)) {
1386 $data = $this->
raw(self::FIELD_PURCHASE_ORDER_NUMBER);
1387 if (is_null($data)) {
1390 $this->purchaseOrderNumber = (string) $data;
1404 if (is_null($this->lastModifiedBy)) {
1406 $data = $this->
raw(self::FIELD_LAST_MODIFIED_BY);
1407 if (is_null($data)) {
1411 $this->lastModifiedBy = LastModifiedByModel::of($data);
1425 if (is_null($this->createdBy)) {
1427 $data = $this->
raw(self::FIELD_CREATED_BY);
1428 if (is_null($data)) {
1432 $this->createdBy = CreatedByModel::of($data);
1788 $this->lock =
$lock;
1824 #[\ReturnTypeWillChange]
1835 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 $priceRoundingMode=null, ?string $taxRoundingMode=null, ?string $taxCalculationMode=null, ?string $inventoryMode=null, ?string $cartState=null, ?string $freezeStrategy=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, ?CartLock $lock=null, ?int $deleteDaysAfterLastModification=null, ?string $purchaseOrderNumber=null, ?LastModifiedBy $lastModifiedBy=null, ?CreatedBy $createdBy=null)