<?php
namespace App\Entity;
use App\Repository\ContactRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass=ContactRepository::class)
*/
class Contact
{
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="integer")
*/
private $axonautId;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $firstname;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $lastname;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $email;
/**
* @ORM\Column(type="string", length=32, nullable=true)
*/
private $phoneNumber;
/**
* @ORM\Column(type="string", length=32, nullable=true)
*/
private $cellphoneNumber;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $job;
/**
* @ORM\ManyToOne(targetEntity=Firm::class, inversedBy="contacts")
* @ORM\JoinColumn(nullable=false)
*/
private $firm;
/**
* @ORM\Column(type="integer", nullable=true)
*/
private $filegetterId;
/**
* @ORM\OneToMany(targetEntity=Job::class, mappedBy="contact")
*/
private $jobs;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $credits = [];
/**
* @ORM\Column(type="boolean")
*/
private $sendCodeBySms = false;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $axonautCustomFields = [];
/**
* @ORM\Column(type="integer", nullable=true)
*/
private $axonautFirmId;
public function __construct()
{
$this->jobs = new ArrayCollection();
}
public function getId(): ?int
{
return $this->id;
}
public function getAxonautId(): ?int
{
return $this->axonautId;
}
public function setAxonautId(int $axonautId): self
{
$this->axonautId = $axonautId;
return $this;
}
public function getFirstname(): ?string
{
return $this->firstname;
}
public function setFirstname(?string $firstname = null): self
{
$this->firstname = $firstname;
return $this;
}
public function getLastname(): ?string
{
return $this->lastname;
}
public function setLastname(?string $lastname = null): self
{
$this->lastname = $lastname;
return $this;
}
public function getEmail(): ?string
{
return $this->email;
}
public function setEmail(?string $email): self
{
$this->email = $email;
return $this;
}
public function getPhoneNumber(): ?string
{
return $this->phoneNumber;
}
public function setPhoneNumber(?string $phoneNumber = null): self
{
$this->phoneNumber = $phoneNumber;
return $this;
}
public function getCellphoneNumber(): ?string
{
return $this->cellphoneNumber;
}
public function setCellphoneNumber(?string $cellphoneNumber = null): self
{
$this->cellphoneNumber = $cellphoneNumber;
return $this;
}
public function getJob(): ?string
{
return $this->job;
}
public function setJob(?string $job): self
{
$this->job = $job;
return $this;
}
public function getFirm(): ?Firm
{
return $this->firm;
}
public function setFirm(?Firm $firm): self
{
$this->firm = $firm;
return $this;
}
public function getFilegetterId(): ?int
{
return $this->filegetterId;
}
public function setFilegetterId(?int $filegetterId): self
{
$this->filegetterId = $filegetterId;
return $this;
}
/**
* @return Collection|Job[]
*/
public function getJobs(): Collection
{
return $this->jobs;
}
public function addJob(Job $job): self
{
if (!$this->jobs->contains($job)) {
$this->jobs[] = $job;
$job->setContact($this);
}
return $this;
}
public function removeJob(Job $job): self
{
if ($this->jobs->removeElement($job)) {
// set the owning side to null (unless already changed)
if ($job->getContact() === $this) {
$job->setContact(null);
}
}
return $this;
}
public function getCredits(): ?array
{
return $this->credits;
}
public function setCredits(?array $credits): self
{
$this->credits = $credits;
return $this;
}
public function getSendCodeBySms(): ?bool
{
return $this->sendCodeBySms;
}
public function setSendCodeBySms(bool $sendCodeBySms): self
{
$this->sendCodeBySms = $sendCodeBySms;
return $this;
}
public function getAxonautCustomFields(): ?array
{
return $this->axonautCustomFields;
}
public function setAxonautCustomFields(?array $axonautCustomFields): self
{
$this->axonautCustomFields = $axonautCustomFields;
return $this;
}
public function getAxonautFirmId(): ?int
{
return $this->axonautFirmId;
}
public function setAxonautFirmId(?int $axonautFirmId): self
{
$this->axonautFirmId = $axonautFirmId;
return $this;
}
}