Skip to main content

domain/retail/
vendor.rs

1//! Vendor models for partner products and external catalog-management flags.
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
6/// Retail partner product line used for recommendation and catalog relationship documentation.
7pub enum Partner {
8    /// Virbac calming-care line that may appear in care-sensitive recommendation and catalog reviews.
9    VirbacCalmCare,
10    /// Purina Pro Plan veterinary supplement line that requires care-aware recommendation review.
11    PurinaProPlanVeterinarySupplements,
12    /// Purina EN boarding diet line used for in-house diet continuity and low-stock planning.
13    PurinaEnBoardingDiet,
14}
15
16#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
17/// Relationship between a partner product line and whether an external vendor manages the catalog facts.
18pub struct CatalogRelationship {
19    /// Partner product line linked to this catalog relationship.
20    pub partner: Partner,
21    /// Whether a vendor, rather than the resort catalog team, manages the source catalog facts.
22    pub external_catalog_managed: bool,
23}