<?phpnamespace App\Entity;use App\Entity\Traits\TimeStampable;use App\Repository\MissionStepRepository;use Doctrine\DBAL\Types\Types;use Doctrine\ORM\Mapping as ORM;#[ORM\Entity(repositoryClass: MissionStepRepository::class)]#[ORM\HasLifecycleCallbacks]class MissionStep{ use TimeStampable; #[ORM\Id] #[ORM\GeneratedValue] #[ORM\Column] private ?int $id = null; #[ORM\Column(nullable: true)] private ?\DateTimeImmutable $startDate = null; #[ORM\Column(type: Types::TEXT, nullable: true)] private ?string $purpose = null; #[ORM\ManyToOne] private ?User $createdBy = null; #[ORM\Column(length: 65)] private ?string $town = null; #[ORM\ManyToOne(inversedBy: 'missionSteps')] #[ORM\JoinColumn(nullable: false)] private ?Mission $mission = null; public function __construct() { $this->createdAt = new \DateTimeImmutable(); $this->updatedAt = new \DateTimeImmutable(); } public function getId(): ?int { return $this->id; } public function getStartDate(): ?\DateTimeImmutable { return $this->startDate; } public function setStartDate(?\DateTimeImmutable $startDate): self { $this->startDate = $startDate; return $this; } public function getPurpose(): ?string { return $this->purpose; } public function setPurpose(?string $purpose): self { $this->purpose = $purpose; return $this; } public function getCreatedBy(): ?User { return $this->createdBy; } public function setCreatedBy(?User $createdBy): self { $this->createdBy = $createdBy; return $this; } public function getTown(): ?string { return $this->town; } public function setTown(string $town): self { $this->town = $town; return $this; } public function getMission(): ?Mission { return $this->mission; } public function setMission(?Mission $mission): self { $this->mission = $mission; return $this; }}