Files
public/directive_layer/models/directive_constants.py

23 lines
800 B
Python

# Единый источник приоритетов
PRIORITY = [("0", "Low"), ("1", "Normal"), ("2", "High")]
# Коды стадий
STAGE_DRAFT = "draft"
STAGE_CONFIRMED = "confirmed"
STAGE_PLANNED = "planned"
STAGE_IN_PROGRESS = "in_progress"
STAGE_PAUSED = "paused"
STAGE_DONE = "done"
STAGE_CANCELLED = "cancelled"
# Единый словарь допустимых переходов стейт-машины
STAGE_TRANSITIONS = {
STAGE_DRAFT: {STAGE_CONFIRMED, STAGE_PLANNED, STAGE_CANCELLED},
STAGE_CONFIRMED: {STAGE_PLANNED, STAGE_IN_PROGRESS, STAGE_CANCELLED},
STAGE_PLANNED: {STAGE_IN_PROGRESS, STAGE_CANCELLED},
STAGE_IN_PROGRESS: {STAGE_PAUSED, STAGE_DONE},
STAGE_PAUSED: {STAGE_IN_PROGRESS, STAGE_CANCELLED},
STAGE_DONE: set(),
STAGE_CANCELLED: set(),
}