<?php
namespace App\Entity;
use App\Repository\PipelineLinkedinRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Entity(repositoryClass: PipelineLinkedinRepository::class)]
class PipelineLinkedin
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column(type: 'integer')]
private $id;
#[ORM\ManyToOne(targetEntity: AccountingFirm::class, inversedBy: 'pipelineLinkedins')]
private $accountingFirm;
#[ORM\Column(type: 'string', length: 255)]
private $status;
#[ORM\Column(type: 'string', length: 255, nullable: true)]
private $trelloCardShortId;
#[ORM\Column(type: 'string', length: 255, nullable: true)]
private $trelloCardId;
#[ORM\Column(type: 'string', length: 255)]
private $category;
#[ORM\Column(type: 'string', length: 255, nullable: true)]
private $codeType;
#[ORM\Column(type: 'string', length: 255, nullable: true)]
private $code;
#[ORM\Column(type: 'integer', nullable: true)]
private $relaunchCount;
#[ORM\Column(type: 'string', length: 255, nullable: true)]
private $username;
#[ORM\Column(type: 'string', length: 255, nullable: true)]
private $password;
#[ORM\OneToMany(mappedBy: 'pipelineLinkedin', targetEntity: PipelineLinkedinDates::class, cascade: ['persist', 'remove'], orphanRemoval: true)]
private $pipelineLinkedinDates;
#[ORM\Column(type: 'datetime_immutable')]
private $createdAt;
#[ORM\Column(type: 'datetime_immutable')]
private $updatedAt;
#[ORM\Column(type: 'string', length: 50, options: ['default' => 'RECONNECTION'])]
private string $connectionType = 'RECONNECTION';
#[ORM\Column(type: 'datetime_immutable', nullable: true)]
private ?\DateTimeImmutable $reminderSentAt = null;
public function __construct()
{
$this->pipelineLinkedinDates = new ArrayCollection();
}
public function getId(): ?int
{
return $this->id;
}
public function getAccountingFirm(): ?AccountingFirm
{
return $this->accountingFirm;
}
public function setAccountingFirm(?AccountingFirm $accountingFirm): self
{
$this->accountingFirm = $accountingFirm;
return $this;
}
public function getStatus(): ?string
{
return $this->status;
}
public function setStatus(string $status): self
{
$this->status = $status;
return $this;
}
public function getTrelloCardShortId(): ?string
{
return $this->trelloCardShortId;
}
public function setTrelloCardShortId(?string $trelloCardShortId): self
{
$this->trelloCardShortId = $trelloCardShortId;
return $this;
}
public function getTrelloCardId(): ?string
{
return $this->trelloCardId;
}
public function setTrelloCardId(?string $trelloCardId): self
{
$this->trelloCardId = $trelloCardId;
return $this;
}
public function getCategory(): ?string
{
return $this->category;
}
public function setCategory(string $category): self
{
$this->category = $category;
return $this;
}
public function getCodeType(): ?string
{
return $this->codeType;
}
public function setCodeType(?string $codeType): self
{
$this->codeType = $codeType;
return $this;
}
public function getCode(): ?string
{
return $this->code;
}
public function setCode(?string $code): self
{
$this->code = $code;
return $this;
}
public function getRelaunchCount(): ?int
{
return $this->relaunchCount;
}
public function setRelaunchCount(?int $relaunchCount): self
{
$this->relaunchCount = $relaunchCount;
return $this;
}
public function getUsername(): ?string
{
return $this->username;
}
public function setUsername(?string $username): self
{
$this->username = $username;
return $this;
}
public function getPassword(): ?string
{
return $this->password;
}
public function setPassword(?string $password): self
{
$this->password = $password;
return $this;
}
/**
* @return Collection<int, PipelineLinkedinDates>
*/
public function getPipelineLinkedinDates(): Collection
{
return $this->pipelineLinkedinDates;
}
public function addPipelineLinkedinDate(PipelineLinkedinDates $pipelineLinkedinDate): self
{
if (!$this->pipelineLinkedinDates->contains($pipelineLinkedinDate)) {
$this->pipelineLinkedinDates[] = $pipelineLinkedinDate;
$pipelineLinkedinDate->setPipelineLinkedin($this);
}
return $this;
}
public function removePipelineLinkedinDate(PipelineLinkedinDates $pipelineLinkedinDate): self
{
if ($this->pipelineLinkedinDates->removeElement($pipelineLinkedinDate)) {
// set the owning side to null (unless already changed)
if ($pipelineLinkedinDate->getPipelineLinkedin() === $this) {
$pipelineLinkedinDate->setPipelineLinkedin(null);
}
}
return $this;
}
public function getCreatedAt(): ?\DateTimeImmutable
{
return $this->createdAt;
}
public function setCreatedAt(\DateTimeImmutable $createdAt): self
{
$this->createdAt = $createdAt;
return $this;
}
public function getUpdatedAt(): ?\DateTimeImmutable
{
return $this->updatedAt;
}
public function setUpdatedAt(\DateTimeImmutable $updatedAt): self
{
$this->updatedAt = $updatedAt;
return $this;
}
public function getConnectionType(): string
{
return $this->connectionType;
}
public function setConnectionType(string $connectionType): self
{
$this->connectionType = $connectionType;
return $this;
}
public function getReminderSentAt(): ?\DateTimeImmutable
{
return $this->reminderSentAt;
}
public function setReminderSentAt(?\DateTimeImmutable $reminderSentAt): self
{
$this->reminderSentAt = $reminderSentAt;
return $this;
}
}