This PR introduces the Operation Run Actionability System. Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #439
36 lines
1.4 KiB
PHP
36 lines
1.4 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Support\Operations\Actionability;
|
|
|
|
enum OperationRunActionabilityStatus: string
|
|
{
|
|
case Actionable = 'actionable';
|
|
case RequiresManualReview = 'requires_manual_review';
|
|
case SupersededByLaterSuccess = 'superseded_by_later_success';
|
|
case ResolvedByCurrentState = 'resolved_by_current_state';
|
|
case InformationalOnly = 'informational_only';
|
|
case NotTerminal = 'not_terminal';
|
|
|
|
public function requiresCurrentFollowUp(): bool
|
|
{
|
|
return in_array($this, [
|
|
self::Actionable,
|
|
self::RequiresManualReview,
|
|
], true);
|
|
}
|
|
|
|
public function label(): string
|
|
{
|
|
return match ($this) {
|
|
self::Actionable => __('localization.operations.actionability.status.actionable'),
|
|
self::RequiresManualReview => __('localization.operations.actionability.status.requires_manual_review'),
|
|
self::SupersededByLaterSuccess => __('localization.operations.actionability.status.superseded_by_later_success'),
|
|
self::ResolvedByCurrentState => __('localization.operations.actionability.status.resolved_by_current_state'),
|
|
self::InformationalOnly => __('localization.operations.actionability.status.informational_only'),
|
|
self::NotTerminal => __('localization.operations.actionability.status.not_terminal'),
|
|
};
|
|
}
|
|
}
|