<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* PartnerSubscription
*
* @ORM\Table(name="partner_subscription")
* @ORM\Entity
*/
class PartnerSubscription
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var float|null
*
* @ORM\Column(name="price", type="float", precision=10, scale=0, nullable=true, options={"default"="NULL"})
*/
private $price;
/**
* @var \DateTime|null
*
* @ORM\Column(name="start_date", type="datetime", nullable=true, options={"default"="NULL"})
*/
private $startDate;
/**
* @var \DateTime|null
*
* @ORM\Column(name="end_date", type="datetime", nullable=true, options={"default"="NULL"})
*/
private $endDate;
/**
* @var bool|null
*
* @ORM\Column(name="canceled", type="boolean", nullable=true, options={"default"="NULL"})
*/
private $canceled;
/**
* @var string|null
*
* @ORM\Column(name="duration", type="string", length=30, nullable=true, options={"default"="NULL"})
*/
private $duration;
/**
* @var string|null
*
* @ORM\Column(name="payment_type", type="string", length=30, nullable=true, options={"default"="NULL"})
*/
private $paymentType;
/**
* @var string|null
*
* @ORM\Column(name="stripe_sub_id", type="string", length=100, nullable=true, options={"default"="NULL"})
*/
private $stripeSubId;
/**
* @var Partner|null
*
* @ORM\ManyToOne(targetEntity="Partner", inversedBy="subscriptions")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="partner_id", referencedColumnName="id")
* })
*/
private $partner;
/**
* @return int
*/
public function getId(): int
{
return $this->id;
}
/**
* @param int $id
*/
public function setId(int $id): void
{
$this->id = $id;
}
/**
* @return float|null
*/
public function getPrice(): ?float
{
return $this->price;
}
/**
* @param float|null $price
*/
public function setPrice(?float $price): void
{
$this->price = $price;
}
/**
* @return \DateTime|null
*/
public function getStartDate(): ?\DateTime
{
return $this->startDate;
}
/**
* @param \DateTime|null $startDate
*/
public function setStartDate(?\DateTime $startDate): void
{
$this->startDate = $startDate;
}
/**
* @return \DateTime|null
*/
public function getEndDate(): ?\DateTime
{
return $this->endDate;
}
/**
* @param \DateTime|null $endDate
*/
public function setEndDate(?\DateTime $endDate): void
{
$this->endDate = $endDate;
}
/**
* @return bool|null
*/
public function getCanceled(): ?bool
{
return $this->canceled;
}
/**
* @param bool|null $canceled
*/
public function setCanceled(?bool $canceled): void
{
$this->canceled = $canceled;
}
/**
* @return string|null
*/
public function getDuration(): ?string
{
return $this->duration;
}
/**
* @param string|null $duration
*/
public function setDuration(?string $duration): void
{
$this->duration = $duration;
}
/**
* @return string|null
*/
public function getPaymentType(): ?string
{
return $this->paymentType;
}
/**
* @param string|null $paymentType
*/
public function setPaymentType(?string $paymentType): void
{
$this->paymentType = $paymentType;
}
/**
* @return string|null
*/
public function getStripeSubId(): ?string
{
return $this->stripeSubId;
}
/**
* @param string|null $stripeSubId
*/
public function setStripeSubId(?string $stripeSubId): void
{
$this->stripeSubId = $stripeSubId;
}
/**
* @return Partner|null
*/
public function getPartner(): ?Partner
{
return $this->partner;
}
/**
* @param Partner|null $partner
*/
public function setPartner(?Partner $partner): void
{
$this->partner = $partner;
}
}