Skip to main content

Module attendance

Module attendance 

Source
Expand description

Daycare recurring-attendance materialization for predictable front-desk work queues.

use chrono::{NaiveDate, Weekday};
use domain::daycare;

let recurrence = daycare::attendance::Recurrence::new(
    daycare::attendance::DateRange::new(
        NaiveDate::from_ymd_opt(2026, 6, 15).unwrap(),
        NaiveDate::from_ymd_opt(2026, 6, 19).unwrap(),
    )
    .unwrap(),
    daycare::attendance::Days::try_new(vec![Weekday::Mon, Weekday::Wed, Weekday::Fri]).unwrap(),
);

let visits = daycare::attendance::Materializer.materialize(&recurrence, &[
    NaiveDate::from_ymd_opt(2026, 6, 17).unwrap(),
]);
assert_eq!(visits.len(), 2);

Structs§

DateRange
Inclusive date range for recurring daycare attendance materialization.
Days
Weekdays on which a recurring daycare package or reservation should materialize visits.
Materializer
Service that expands recurrence rules into concrete daycare visit dates.
Recurrence
Recurring daycare attendance rule used to pre-build front-desk work queues.

Enums§

DateRangeError
Validation errors for recurring daycare attendance date ranges.
DaysError
Validation errors for recurring daycare attendance weekdays.