Spaces:
Sleeping
Sleeping
File size: 567 Bytes
2574e86 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | use crate::constraints::route_metrics::{
required_skills_match_count, required_skills_score, RouteConstraint,
};
use crate::domain::FieldServicePlan;
use solverforge::prelude::*;
use solverforge::IncrementalConstraint;
/// HARD: a technician route may only contain visits whose skill mask is covered.
pub fn constraint() -> impl IncrementalConstraint<FieldServicePlan, HardSoftScore> {
RouteConstraint::new(
"Required Skills",
true,
HardSoftScore::of(1, 0),
required_skills_score,
required_skills_match_count,
)
}
|