id = Uuid::v7(); $this->createdAt = new \DateTimeImmutable(); } public function getId(): Uuid { return $this->id; } public function getEmail(): string { return $this->email; } public function setEmail(string $email): self { $this->email = $email; return $this; } public function getUserIdentifier(): string { return $this->email; } /** @return string[] */ public function getRoles(): array { $roles = $this->roles; $roles[] = 'ROLE_USER'; return array_values(array_unique($roles)); } /** @param string[] $roles */ public function setRoles(array $roles): self { $this->roles = $roles; return $this; } public function getPassword(): string { return $this->password; } public function setPassword(string $password): self { $this->password = $password; return $this; } public function getStatus(): string { return $this->status; } public function setStatus(string $status): self { $this->status = $status; return $this; } public function getReseller(): ?Reseller { return $this->reseller; } public function setReseller(?Reseller $reseller): self { $this->reseller = $reseller; return $this; } public function getCompany(): ?Company { return $this->company; } public function setCompany(?Company $company): self { $this->company = $company; return $this; } public function getEmployee(): ?Employee { return $this->employee; } public function setEmployee(?Employee $employee): self { $this->employee = $employee; return $this; } public function getCreatedAt(): \DateTimeImmutable { return $this->createdAt; } public function getLastLoginAt(): ?\DateTimeImmutable { return $this->lastLoginAt; } public function setLastLoginAt(?\DateTimeImmutable $lastLoginAt): self { $this->lastLoginAt = $lastLoginAt; return $this; } public function eraseCredentials(): void { // ggf. temporäre, sensible Daten löschen } }