src/Entity/Commission.php line 18
<?phpnamespace App\Entity;use App\Enum\GroupName;use App\Enum\RuleRateType;use App\Enum\RuleMultiplier;use App\Enum\CommissionResultRateType;use App\Repository\CommissionRepository;use Doctrine\DBAL\Types\Types;use Doctrine\ORM\Mapping as ORM;use Gedmo\Timestampable\Traits\TimestampableEntity;#[ORM\Entity(repositoryClass: CommissionRepository::class)]#[ORM\Index(columns: ['incentive_date'], name: 'com_incentive_date')]#[ORM\Index(columns: ['user_id'], name: 'com_user_id')]class Commission{use TimestampableEntity;#[ORM\Id]#[ORM\GeneratedValue]#[ORM\Column]private ?int $id = null;#[ORM\ManyToOne(fetch: 'EAGER', inversedBy: 'commissions')]private ?User $user = null;#[ORM\ManyToOne(inversedBy: 'commissions')]private ?Position $position = null;#[ORM\Column]private ?float $amount = 0;#[ORM\ManyToOne(inversedBy: 'commissions', fetch: 'EAGER')]private ?Order $orderItem = null;#[ORM\Column]private ?float $creditAmount = 0;#[ORM\Column]private ?float $appliedCredit = 0;#[ORM\ManyToOne(inversedBy: 'commissions')]private ?Period $period = null;#[ORM\ManyToOne(inversedBy: 'commissions')]private ?Quota $quota = null;#[ORM\Column(length: 255, nullable: true)]private ?RuleRateType $rateType = null;#[ORM\Column(length: 255, nullable: true)]private ?RuleMultiplier $multiplier = null;#[ORM\Column]private ?float $multiplierValue = 0;#[ORM\ManyToOne(inversedBy: 'commissions', fetch: 'EAGER')]private ?RateTable $rateTable = null;#[ORM\ManyToOne(inversedBy: 'commissions', fetch: 'EAGER')]private ?RuleResult $ruleResult = null;#[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)]private ?\DateTimeInterface $incentiveDate = null;#[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)]private ?\DateTimeInterface $estReleaseDate = null;#[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)]private ?\DateTimeInterface $actualReleaseDate = null;#[ORM\Column(nullable: true)]private ?float $measureValue = null;#[ORM\Column(length: 255, nullable: true)]private ?string $rollingMeasureValue = null;#[ORM\Column(length: 255, nullable: true)]private ?string $attainmentValue = null;#[ORM\Column(length: 255, nullable: true)]private ?string $rollingAttainmentValue = null;#[ORM\ManyToOne(inversedBy: 'commissions')]private ?EarningGroup $earningGroup = null;#[ORM\Column(length: 255, nullable: true)]private ?GroupName $businessGroup = GroupName::UNITED_STATES;#[ORM\Column(length: 255, nullable: true)]private ?string $paymentFX = null;#[ORM\ManyToOne(inversedBy: 'commissions', fetch: 'EAGER')]private ?RateTableTier $rateTableTier = null;#[ORM\Column]private ?bool $held = false;#[ORM\Column]private ?bool $everImplied = false;#[ORM\Column]private ?bool $isImplied = false;#[ORM\Column(nullable: true)]private ?float $rate = null;#[ORM\Column]private ?bool $l6 = false;#[ORM\ManyToOne(inversedBy: 'commissions')]private ?Credit $credit = null;public function getId(): ?int{return $this->id;}public function getUser(): ?User{return $this->user;}public function setUser(?User $user): static{$this->user = $user;return $this;}public function getPosition(): ?Position{return $this->position;}public function setPosition(?Position $position): static{$this->position = $position;return $this;}public function getAmount(): ?float{return $this->amount;}public function setAmount(float $amount): static{$this->amount = $amount;return $this;}public function getOrderItem(): ?Order{return $this->orderItem;}public function setOrderItem(?Order $orderItem): static{$this->orderItem = $orderItem;return $this;}public function getCreditAmount(): ?float{return $this->creditAmount;}public function setCreditAmount(float $creditAmount): static{$this->creditAmount = $creditAmount;return $this;}public function getAppliedCredit(): ?float{return $this->appliedCredit;}public function setAppliedCredit(float $appliedCredit): static{$this->appliedCredit = $appliedCredit;return $this;}public function getPeriod(): ?Period{return $this->period;}public function setPeriod(?Period $period): static{$this->period = $period;return $this;}public function getQuota(): ?Quota{return $this->quota;}public function setQuota(?Quota $quota): static{$this->quota = $quota;return $this;}public function getRateType(): ?RuleRateType{return $this->rateType;}public function setRateType(?RuleRateType $rateType): static{$this->rateType = $rateType;return $this;}public function getMultiplier(): ?RuleMultiplier{return $this->multiplier;}public function setMultiplier(?RuleMultiplier $multiplier): static{$this->multiplier = $multiplier;return $this;}public function getMultiplierValue(): ?float{return $this->multiplierValue;}public function setMultiplierValue(float $multiplierValue): static{$this->multiplierValue = $multiplierValue;return $this;}public function getRateTable(): ?RateTable{return $this->rateTable;}public function setRateTable(?RateTable $rateTable): static{$this->rateTable = $rateTable;return $this;}public function getRuleResult(): ?RuleResult{return $this->ruleResult;}public function setRuleResult(?RuleResult $ruleResult): static{$this->ruleResult = $ruleResult;return $this;}public function getIncentiveDate(): ?\DateTimeInterface{return $this->incentiveDate;}public function setIncentiveDate(?\DateTimeInterface $incentiveDate): static{$this->incentiveDate = $incentiveDate;return $this;}public function getEstReleaseDate(): ?\DateTimeInterface{return $this->estReleaseDate;}public function setEstReleaseDate(?\DateTimeInterface $estReleaseDate): static{$this->estReleaseDate = $estReleaseDate;return $this;}public function getActualReleaseDate(): ?\DateTimeInterface{return $this->actualReleaseDate;}public function setActualReleaseDate(?\DateTimeInterface $actualReleaseDate): static{$this->actualReleaseDate = $actualReleaseDate;return $this;}public function getMeasureValue(): ?float{return $this->measureValue;}public function setMeasureValue(?float $measureValue): static{$this->measureValue = $measureValue;return $this;}public function getRollingMeasureValue(): ?string{return $this->rollingMeasureValue;}public function setRollingMeasureValue(?string $rollingMeasureValue): static{$this->rollingMeasureValue = $rollingMeasureValue;return $this;}public function getAttainmentValue(): ?string{return $this->attainmentValue;}public function setAttainmentValue(?string $attainmentValue): static{$this->attainmentValue = $attainmentValue;return $this;}public function getRollingAttainmentValue(): ?string{return $this->rollingAttainmentValue;}public function setRollingAttainmentValue(?string $rollingAttainmentValue): static{$this->rollingAttainmentValue = $rollingAttainmentValue;return $this;}public function getEarningGroup(): ?EarningGroup{return $this->earningGroup;}public function setEarningGroup(?EarningGroup $earningGroup): static{$this->earningGroup = $earningGroup;return $this;}public function getBusinessGroup(): ?GroupName{return $this->businessGroup;}public function setBusinessGroup(?GroupName $businessGroup): static{$this->businessGroup = $businessGroup;return $this;}public function getPaymentFX(): ?string{return $this->paymentFX;}public function setPaymentFX(?string $paymentFX): static{$this->paymentFX = $paymentFX;return $this;}public function getRateTableTier(): ?RateTableTier{return $this->rateTableTier;}public function setRateTableTier(?RateTableTier $rateTableTier): static{$this->rateTableTier = $rateTableTier;return $this;}public function isHeld(): ?bool{return $this->held;}public function setHeld(bool $held): static{$this->held = $held;return $this;}public function isEverImplied(): ?bool{return $this->everImplied;}public function setEverImplied(bool $everImplied): static{$this->everImplied = $everImplied;return $this;}public function isIsImplied(): ?bool{return $this->isImplied;}public function setIsImplied(bool $isImplied): static{$this->isImplied = $isImplied;return $this;}public function getRate(): ?float{return $this->rate;}public function setRate(?float $rate): static{$this->rate = $rate;return $this;}public function isL6(): ?bool{return $this->l6;}public function setL6(bool $l6): static{$this->l6 = $l6;return $this;}public function getCredit(): ?Credit{return $this->credit;}public function setCredit(?Credit $credit): static{$this->credit = $credit;return $this;}public function __toString(){return sprintf('%s - $%s', $this->getUser(), $this->getAmount());}}