<?php
namespace CoreBundle\Entity;
use DateTime;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Table("institution")
* @ORM\Entity(repositoryClass="CoreBundle\Entity\InstitutionRepository")
*/
class Institution
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="name", type="text")
*/
private $name;
/**
* @var bool
*
* @ORM\Column(type="boolean", nullable=true)
*/
private $customer;
/**
* @var bool
*
* @ORM\Column(type="boolean", nullable=true)
*/
private $payingCustomer;
/**
* @var bool
*
* @ORM\Column(type="boolean", nullable=true)
*/
private $hasRenewed;
/**
* @ORM\Column(name="uni_instnr", type="text", nullable=true, options={"default" = null})
*/
private ?string $instnr = null;
/**
* @var DateTime
*
* @ORM\Column(name="expiration_basis", type="datetime", nullable=true)
*/
private $expirationBasis;
/**
* @var DateTime
*
* @ORM\Column(name="expiration_self_study", type="datetime", nullable=true)
*/
private $expirationSelfStudy;
/**
* @var DateTime
*
* @ORM\Column(name="expiration_textbook", type="datetime", nullable=true)
*/
private $expirationTextbook;
/**
* @var ArrayCollection|ClassroomType[]
*
* @ORM\ManyToMany(targetEntity="ClassroomType")
* @ORM\JoinTable(name="relation_institution_classroom_types",
* joinColumns={@ORM\JoinColumn(name="institution", referencedColumnName="id")},
* inverseJoinColumns={@ORM\JoinColumn(name="classroom_type", referencedColumnName="id")})
*/
private $classroomTypes;
/**
* @return int
*/
public function getId()
{
return $this->id;
}
/**
* @param int $id
*/
public function setId($id)
{
$this->id = $id;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
public function getInstnr(): ?string
{
return $this->instnr;
}
public function setInstnr(?string $instnr)
{
$this->instnr = $instnr;
}
public function isCustomer(): ?bool
{
return $this->customer;
}
public function setCustomer(bool $customer)
{
$this->customer = $customer;
}
/**
* @return bool
*/
public function isPayingCustomer(): ?bool
{
return $this->payingCustomer;
}
/**
* @param bool $payingCustomer
*/
public function setPayingCustomer(bool $payingCustomer): void
{
$this->payingCustomer = $payingCustomer;
}
/**
* @return bool
*/
public function hasRenewed(): ?bool
{
return $this->hasRenewed;
}
/**
* @param bool $hasRenewed
*/
public function setHasRenewed(bool $hasRenewed): void
{
$this->hasRenewed = $hasRenewed;
}
/**
* @return ClassroomType[]|ArrayCollection
*/
public function getClassroomTypes()
{
return $this->classroomTypes;
}
/**
* @param ClassroomType[]|ArrayCollection $classroomTypes
*/
public function setClassroomTypes($classroomTypes): void
{
$this->classroomTypes = $classroomTypes;
}
/**
* @return DateTime|null
*/
public function getExpirationBasis(): ?DateTime
{
return $this->expirationBasis;
}
/**
* @param DateTime|null $expirationBasis
*/
public function setExpirationBasis(?DateTime $expirationBasis): void
{
$this->expirationBasis = $expirationBasis;
}
/**
* @return DateTime|null
*/
public function getExpirationSelfStudy(): ?DateTime
{
return $this->expirationSelfStudy;
}
/**
* @param DateTime|null $expirationSelfStudy
*/
public function setExpirationSelfStudy(?DateTime $expirationSelfStudy): void
{
$this->expirationSelfStudy = $expirationSelfStudy;
}
/**
* @return DateTime|null
*/
public function getExpirationTextbook(): ?DateTime
{
return $this->expirationTextbook;
}
/**
* @param DateTime|null $expirationTextbook
*/
public function setExpirationTextbook(?DateTime $expirationTextbook): void
{
$this->expirationTextbook = $expirationTextbook;
}
}