レコードのステータス変更の実装に取り組んでいます。たとえば、レコードが作成されると、管理者がその状態を「アクティブ」、「拒否」、または「失効」に変更するまで、レコードは「保留」状態で開始されます。
問題は、ステータスが保留中からアクティブに変更された場合、ステータスを保留中または拒否に戻すことはできません。拒否されたステータスは、アクティブに戻すことができます。
取り消されたステータスは、アクティブ、保留、または拒否に変更できません。現時点では、これを検出するための一連の if/else ステートメントがありますが、より論理的で標準的なアプローチがあるかどうか疑問に思いました。