pub struct Contract {
pub capacity: CapacityPlan,
pub arrival_window: ServiceWindow,
pub departure_window: ServiceWindow,
pub minimum_stay: Policy,
pub cancellation: Policy,
pub deposit: DepositRule,
pub payment: PaymentTiming,
pub housekeeping: Cadence,
pub handoff: Requirement,
pub upsells: Vec<Upsell>,
}Expand description
Boarding service-line contract combining capacity, stay, payment, handoff, and upsell policy.
Fields§
§capacity: CapacityPlanCapacity posture staff and automation must honor before confirming stays.
arrival_window: ServiceWindowGuest arrival window used for front-desk staffing and check-in promises.
departure_window: ServiceWindowGuest departure window used for checkout staffing and Pawgress/report timing.
minimum_stay: PolicyMinimum-stay rule for standard, holiday, or multi-pet boarding demand.
cancellation: PolicyCancellation policy that governs notice, deposit forfeiture, and manager review.
deposit: DepositRuleDeposit requirement used before staff or automation treats the booking as secured.
payment: PaymentTimingPayment timing that constrains collection workflow and front-desk labor.
housekeeping: CadenceRoom-cleaning cadence that feeds labor planning for the stay.
handoff: RequirementStaff handoff checklist required at arrival, medication review, or departure.
upsells: Vec<Upsell>Optional services that can be offered only through the review-gated recommendation flow.
Implementations§
Source§impl Contract
impl Contract
Sourcepub fn builder() -> ContractBuilder
pub fn builder() -> ContractBuilder
Create an instance of Contract using the builder syntax
Source§impl Contract
impl Contract
Sourcepub fn requires_deposit_collection(&self) -> bool
pub fn requires_deposit_collection(&self) -> bool
Reports whether this contract requires deposit collection before confirmation.
Sourcepub fn standard_petsuites() -> Self
pub fn standard_petsuites() -> Self
Builds the baseline PetSuites-style boarding contract used by examples and tests.