Backup #522

ID522
Dateipfad/var/www/dev.campus.systemische-tools.de/src/Domain/ValueObject/TaskStatus.php
Version1
Typ modified
Größe1.0 KB
Hashfcda38eea67362b40fc0f60a07eabb21682ced860558e6800079e536a9df8f8e
Datum2025-12-22 15:53:03
Geändert vonclaude-code-hook
GrundClaude Code Pre-Hook Backup vor Edit-Operation
Datei existiert Ja

Dateiinhalt

<?php

namespace Domain\ValueObject;

enum TaskStatus: string
{
    case PENDING = 'pending';
    case IN_PROGRESS = 'in_progress';
    case COMPLETED = 'completed';
    case FAILED = 'failed';
    case CANCELLED = 'cancelled';

    public function canTransitionTo(self $newStatus): bool
    {
        return match ($this) {
            self::PENDING => in_array($newStatus, [self::IN_PROGRESS, self::CANCELLED]),
            self::IN_PROGRESS => in_array($newStatus, [self::COMPLETED, self::FAILED, self::CANCELLED]),
            self::COMPLETED, self::FAILED, self::CANCELLED => false,
        };
    }

    public function isTerminal(): bool
    {
        return in_array($this, [self::COMPLETED, self::FAILED, self::CANCELLED]);
    }

    public function label(): string
    {
        return match ($this) {
            self::PENDING => 'Offen',
            self::IN_PROGRESS => 'In Arbeit',
            self::COMPLETED => 'Abgeschlossen',
            self::FAILED => 'Fehlgeschlagen',
            self::CANCELLED => 'Abgebrochen',
        };
    }
}

Vollständig herunterladen

Aktionen

Herunterladen

Andere Versionen dieser Datei

ID Version Typ Größe Datum
811 3 modified 1.8 KB 2025-12-23 08:08
523 2 modified 1.4 KB 2025-12-22 15:53
522 1 modified 1.0 KB 2025-12-22 15:53

← Zurück zur Übersicht