3 declare(strict_types=1);
27 use DateTimeImmutable;
175 ?
string $code =
null,
219 if (is_null($this->
id)) {
221 $data = $this->
raw(self::FIELD_ID);
222 if (is_null($data)) {
225 $this->
id = (string) $data;
239 if (is_null($this->version)) {
241 $data = $this->
raw(self::FIELD_VERSION);
242 if (is_null($data)) {
245 $this->version = (int) $data;
259 if (is_null($this->createdAt)) {
261 $data = $this->
raw(self::FIELD_CREATED_AT);
262 if (is_null($data)) {
266 if (
false === $data) {
269 $this->createdAt = $data;
283 if (is_null($this->lastModifiedAt)) {
285 $data = $this->
raw(self::FIELD_LAST_MODIFIED_AT);
286 if (is_null($data)) {
290 if (
false === $data) {
293 $this->lastModifiedAt = $data;
307 if (is_null($this->key)) {
309 $data = $this->
raw(self::FIELD_KEY);
310 if (is_null($data)) {
313 $this->key = (string) $data;
327 if (is_null($this->lastModifiedBy)) {
329 $data = $this->
raw(self::FIELD_LAST_MODIFIED_BY);
330 if (is_null($data)) {
348 if (is_null($this->createdBy)) {
350 $data = $this->
raw(self::FIELD_CREATED_BY);
351 if (is_null($data)) {
369 if (is_null($this->name)) {
371 $data = $this->
raw(self::FIELD_NAME);
372 if (is_null($data)) {
390 if (is_null($this->description)) {
392 $data = $this->
raw(self::FIELD_DESCRIPTION);
393 if (is_null($data)) {
411 if (is_null($this->code)) {
413 $data = $this->
raw(self::FIELD_CODE);
414 if (is_null($data)) {
417 $this->code = (string) $data;
431 if (is_null($this->cartDiscounts)) {
433 $data = $this->
raw(self::FIELD_CART_DISCOUNTS);
434 if (is_null($data)) {
451 if (is_null($this->cartPredicate)) {
453 $data = $this->
raw(self::FIELD_CART_PREDICATE);
454 if (is_null($data)) {
457 $this->cartPredicate = (string) $data;
471 if (is_null($this->isActive)) {
473 $data = $this->
raw(self::FIELD_IS_ACTIVE);
474 if (is_null($data)) {
477 $this->isActive = (bool) $data;
492 if (is_null($this->references)) {
494 $data = $this->
raw(self::FIELD_REFERENCES);
495 if (is_null($data)) {
513 if (is_null($this->maxApplications)) {
515 $data = $this->
raw(self::FIELD_MAX_APPLICATIONS);
516 if (is_null($data)) {
519 $this->maxApplications = (int) $data;
534 if (is_null($this->maxApplicationsPerCustomer)) {
536 $data = $this->
raw(self::FIELD_MAX_APPLICATIONS_PER_CUSTOMER);
537 if (is_null($data)) {
540 $this->maxApplicationsPerCustomer = (int) $data;
554 if (is_null($this->custom)) {
556 $data = $this->
raw(self::FIELD_CUSTOM);
557 if (is_null($data)) {
575 if (is_null($this->groups)) {
577 $data = $this->
raw(self::FIELD_GROUPS);
578 if (is_null($data)) {
581 $this->groups = $data;
595 if (is_null($this->validFrom)) {
597 $data = $this->
raw(self::FIELD_VALID_FROM);
598 if (is_null($data)) {
602 if (
false === $data) {
605 $this->validFrom = $data;
619 if (is_null($this->validUntil)) {
621 $data = $this->
raw(self::FIELD_VALID_UNTIL);
622 if (is_null($data)) {
626 if (
false === $data) {
629 $this->validUntil = $data;
644 if (is_null($this->applicationVersion)) {
646 $data = $this->
raw(self::FIELD_APPLICATION_VERSION);
647 if (is_null($data)) {
650 $this->applicationVersion = (int) $data;
826 #[\ReturnTypeWillChange]
845 return (
object) $data;