pub struct CatalogProductSet {
pub name: Option<String>,
pub product_ids_any: Option<Vec<String>>,
pub product_ids_all: Option<Vec<String>>,
pub quantity_exact: Option<i64>,
pub quantity_min: Option<i64>,
pub quantity_max: Option<i64>,
pub all_products: Option<bool>,
}
Expand description
Represents a collection of catalog objects for the purpose of applying a PricingRule
.
Including a catalog object will include all of its subtypes. For example, including a category in a product set will include all of its items and associated item variations in the product set. Including an item in a product set will also include its item variations.
Fields§
§name: Option<String>
User-defined name for the product set. For example, “Clearance Items” or “Winter Sale Items”.
product_ids_any: Option<Vec<String>>
Unique IDs for any CatalogObject
included in this product set. Any number of these catalog
objects can be in an order for a pricing rule to apply.
This can be used with product_ids_all
in a parent CatalogProductSet
to match groups of
products for a bulk discount, such as a discount for an entree and side combo.
Only one of product_ids_all
, product_ids_any
, or all_products
can be set.
Max: 500 catalog object IDs.
product_ids_all: Option<Vec<String>>
Unique IDs for any CatalogObject
included in this product set. All objects in this set
must be included in an order for a pricing rule to apply.
Only one of product_ids_all
, product_ids_any
, or all_products
can be set.
Max: 500 catalog object IDs.
quantity_exact: Option<i64>
If set, there must be exactly this many items from products_any
or products_all
in the
cart for the discount to apply.
Cannot be combined with either quantity_min
or quantity_max
.
quantity_min: Option<i64>
If set, there must be at least this many items from products_any
or products_all
in a
cart for the discount to apply. See quantity_exact
. Defaults to 0 if quantity_exact
,
quantity_min
and quantity_max
are all unspecified.
quantity_max: Option<i64>
If set, the pricing rule will apply to a maximum of this many items from products_any
or
products_all
.
all_products: Option<bool>
If set to true
, the product set will include every item in the catalog. Only one of
product_ids_all
, product_ids_any
, or all_products
can be set.
Trait Implementations§
Source§impl Clone for CatalogProductSet
impl Clone for CatalogProductSet
Source§fn clone(&self) -> CatalogProductSet
fn clone(&self) -> CatalogProductSet
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for CatalogProductSet
impl Debug for CatalogProductSet
Source§impl Default for CatalogProductSet
impl Default for CatalogProductSet
Source§fn default() -> CatalogProductSet
fn default() -> CatalogProductSet
Source§impl<'de> Deserialize<'de> for CatalogProductSet
impl<'de> Deserialize<'de> for CatalogProductSet
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for CatalogProductSet
impl PartialEq for CatalogProductSet
Source§impl Serialize for CatalogProductSet
impl Serialize for CatalogProductSet
impl Eq for CatalogProductSet
impl StructuralPartialEq for CatalogProductSet
Auto Trait Implementations§
impl Freeze for CatalogProductSet
impl RefUnwindSafe for CatalogProductSet
impl Send for CatalogProductSet
impl Sync for CatalogProductSet
impl Unpin for CatalogProductSet
impl UnwindSafe for CatalogProductSet
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.