<?php declare(strict_types=1);namespace App\Entity;use App\Repository\AnalysisServicePriceModifierRepository;use Doctrine\ORM\Mapping as ORM;use Gedmo\Timestampable\Traits\TimestampableEntity;#[ORM\Table]#[ORM\Entity(repositoryClass: AnalysisServicePriceModifierRepository::class)]class AnalysisServicePriceModifier{ use TimestampableEntity; public const string SURCHARGE_ABSOLUT = 'absolute'; public const string SURCHARGE_PERCENTAGE = 'percentage'; public const string TYPE_STACK = 'stack'; public const string TYPE_MODIFIER = 'modifier'; #[ORM\Id] #[ORM\GeneratedValue] #[ORM\Column(type: 'integer')] private int $id; #[ORM\ManyToOne(targetEntity: AnalysisServicePrice::class, inversedBy: 'modifier')] private AnalysisServicePrice $price; #[ORM\Column(type: 'string')] private string $surchargeType = self::SURCHARGE_ABSOLUT; #[ORM\Column(type: 'string')] private string $type = self::TYPE_STACK; #[ORM\Column(type: 'integer', nullable: true)] private ?int $deliveryInDays = null; #[ORM\Column(type: 'integer', nullable: true)] private ?int $stack = null; #[ORM\Column(type: 'float', nullable: true)] private ?float $surcharge = null; public function getId(): int { return $this->id; } public function setId(int $id): AnalysisServicePriceModifier { $this->id = $id; return $this; } public function getPrice(): AnalysisServicePrice { return $this->price; } public function setPrice(AnalysisServicePrice $price): AnalysisServicePriceModifier { $this->price = $price; return $this; } public function getSurchargeType(): string { return $this->surchargeType; } public function setSurchargeType(string $surchargeType): AnalysisServicePriceModifier { $this->surchargeType = $surchargeType; return $this; } public function getType(): string { return $this->type; } public function setType(string $type): AnalysisServicePriceModifier { $this->type = $type; return $this; } public function getDeliveryInDays(): ?int { return $this->deliveryInDays; } public function setDeliveryInDays(?int $deliveryInDays): AnalysisServicePriceModifier { $this->deliveryInDays = $deliveryInDays; return $this; } public function getStack(): ?int { return $this->stack; } public function setStack(?int $stack): AnalysisServicePriceModifier { $this->stack = $stack; return $this; } public function getSurcharge(): ?float { return $this->surcharge; } public function setSurcharge(?float $surcharge): AnalysisServicePriceModifier { $this->surcharge = $surcharge; return $this; }}