- Add DayOfWeek and MonthOfYear enums for plan period parameters - Add SchedulePlan model with at_time/on_day/on_week/on_month fields - Add DB-level check constraints enforcing hierarchy: on_month requires on_week, on_week requires on_day - Add application-level @validates for on_week range (1-4), on_month hierarchy, and estimated_duration (1-50) - Add is_active flag for soft-delete (plan-cancel) - Add bidirectional relationship between SchedulePlan and TimeSlot - All existing tests pass (29/29)
8.8 KiB
8.8 KiB