Struct square_api_client::models::CatalogProductSet
source · [−]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
sourceimpl Clone for CatalogProductSet
impl Clone for CatalogProductSet
sourcefn clone(&self) -> CatalogProductSet
fn clone(&self) -> CatalogProductSet
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresourceimpl Debug for CatalogProductSet
impl Debug for CatalogProductSet
sourceimpl Default for CatalogProductSet
impl Default for CatalogProductSet
sourcefn default() -> CatalogProductSet
fn default() -> CatalogProductSet
sourceimpl<'de> Deserialize<'de> for CatalogProductSet
impl<'de> Deserialize<'de> for CatalogProductSet
sourcefn 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>,
sourceimpl PartialEq<CatalogProductSet> for CatalogProductSet
impl PartialEq<CatalogProductSet> for CatalogProductSet
sourcefn eq(&self, other: &CatalogProductSet) -> bool
fn eq(&self, other: &CatalogProductSet) -> bool
sourceimpl Serialize for CatalogProductSet
impl Serialize for CatalogProductSet
impl Eq for CatalogProductSet
impl StructuralEq for CatalogProductSet
impl StructuralPartialEq for CatalogProductSet
Auto Trait Implementations
impl RefUnwindSafe for CatalogProductSet
impl Send for CatalogProductSet
impl Sync for CatalogProductSet
impl Unpin for CatalogProductSet
impl UnwindSafe for CatalogProductSet
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.