*/ use HasFactory; protected $fillable = [ 'kind', 'reason', 'name', 'email', 'contract_reference', 'terminate_at', 'host', 'requester_ip', 'status', 'resolved_at', ]; protected function casts(): array { return [ 'terminate_at' => 'date', 'resolved_at' => 'datetime', ]; } public function scopeOpen(Builder $query): Builder { return $query->where('status', 'open'); } public function isExtraordinary(): bool { return $this->kind === 'ausserordentlich'; } public function kindLabel(): string { return $this->isExtraordinary() ? 'Außerordentliche Kündigung' : 'Ordentliche Kündigung'; } public function terminateAtLabel(): string { return $this->terminate_at?->format('d.m.Y') ?? 'zum nächstmöglichen Zeitpunkt'; } }