Coverage for backend/django/Economics/scheduling/composite/domain.py: 100%
30 statements
« prev ^ index » next coverage.py v7.10.7, created at 2026-07-22 05:22 +0000
« prev ^ index » next coverage.py v7.10.7, created at 2026-07-22 05:22 +0000
1"""Domain constants and enums for composite production schedules."""
3from __future__ import annotations
5from enum import IntEnum, StrEnum
7COMPOSITE_SCHEDULE_LABEL_MAX_LENGTH = 128
8COMPOSITE_SCHEDULE_RULE_MAX_COUNT = 64
11class ScheduleWeekday(IntEnum):
12 MONDAY = 0
13 TUESDAY = 1
14 WEDNESDAY = 2
15 THURSDAY = 3
16 FRIDAY = 4
17 SATURDAY = 5
18 SUNDAY = 6
21class ScheduleTimelineSourceKind(StrEnum):
22 SCHEDULED_SOURCE = "scheduled_source"
23 OFF_PERIOD = "off_period"
26class ScheduleDiagnosticSeverity(StrEnum):
27 ERROR = "error"
28 WARNING = "warning"
29 INFO = "info"
32class ScheduleDiagnosticCode(StrEnum):
33 GAP_IS_OFF = "gap_is_off"
34 INVALID_DAYS = "invalid_days"
35 MISSING_SOURCE_SCENARIO = "missing_source_scenario"
36 OVERLAPPING_RULES = "overlapping_rules"
37 SOURCE_DIFFERENT_FLOWSHEET = "source_different_flowsheet"
38 SOURCE_NOT_SOLVED = "source_not_solved"
39 SOURCE_LONGER_THAN_WEEK = "source_longer_than_week"
42class ScheduleValidationStatus(StrEnum):
43 VALID = "valid"
44 INVALID = "invalid"