<?php
namespace App\Entity;
use App\Repository\TrackerRepository;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\DBAL\Types\Types;
#[ORM\Entity(repositoryClass: TrackerRepository::class)]
class Tracker
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column(type: Types::INTEGER, options:["unsigned" => true])]
private ?int $id = null;
#[ORM\ManyToOne(inversedBy: 'trackers')]
#[ORM\JoinColumn(name: "i_seed_fk", nullable: false, onDelete: "CASCADE")]
private Seed $seed;
#[ORM\Column]
private \DateTimeImmutable $dtCreation;
#[ORM\Column(length: 255)]
private string $sTemplate;
#[ORM\Column(length: 255, nullable: true)]
private ?string $sAction = null;
#[ORM\Column(length: 255, nullable: true)]
private string $sObs;
public function __construct(Seed $seed, string $sTemplate, string $sObs)
{
$this->seed = $seed;
$this->sTemplate = $sTemplate;
$this->dtCreation = new \DateTimeImmutable();
$this->sObs = substr($sObs, 0, 250);
}
public function getId(): ?int
{
return $this->id;
}
public function getSeed(): Seed
{
return $this->seed;
}
public function setSeed(Seed $seed): static
{
$this->seed = $seed;
return $this;
}
public function getDtCreation(): \DateTimeImmutable
{
return $this->dtCreation;
}
public function setDtCreation(\DateTimeImmutable $dtCreation): static
{
$this->dtCreation = $dtCreation;
return $this;
}
public function getSTemplate(): string
{
return $this->sTemplate;
}
public function setSTemplate(string $sTemplate): static
{
$this->sTemplate = $sTemplate;
return $this;
}
public function getSAction(): ?string
{
return $this->sAction;
}
public function setSAction(string $sAction): static
{
$this->sAction = $sAction;
return $this;
}
public function getSObs(): string
{
return $this->sObs;
}
public function setSObs(string $sObs): static
{
$this->sObs = $sObs;
return $this;
}
}