Так что это в основном проверка на основе правил. Правило простое в вашем случае. Такие правила могут стать еще сложнее. Есть два варианта.
Во-первых, просто сделайте жестко запрограммированную проверку. Означает, что вы проверяете значение поля «состояние», а затем проверяете поле «состояние» во время выполнения. Это означает, что в случае изменения правила вы меняете код.
Во-вторых, вы помещаете эти правила вне кода (файлы конфигурации, базы данных и т. Д.) И динамически загружаете правила и проверяете их соответственно. Это делает первоначальный дизайн сложным, но обслуживание легким.