Class ManagementProjectsStackingRules

java.lang.Object
io.voucherify.client.model.ManagementProjectsStackingRules

@Generated("org.openapitools.codegen.languages.JavaClientCodegen") public class ManagementProjectsStackingRules extends Object
Object representing the details of the stacking rules.
  • Field Details

    • SERIALIZED_NAME_ID

      public static final String SERIALIZED_NAME_ID
      See Also:
    • SERIALIZED_NAME_EXCLUSIVE_CATEGORIES

      public static final String SERIALIZED_NAME_EXCLUSIVE_CATEGORIES
      See Also:
    • SERIALIZED_NAME_JOINT_CATEGORIES

      public static final String SERIALIZED_NAME_JOINT_CATEGORIES
      See Also:
    • SERIALIZED_NAME_REDEEMABLES_LIMIT

      public static final String SERIALIZED_NAME_REDEEMABLES_LIMIT
      See Also:
    • SERIALIZED_NAME_APPLICABLE_REDEEMABLES_LIMIT

      public static final String SERIALIZED_NAME_APPLICABLE_REDEEMABLES_LIMIT
      See Also:
    • SERIALIZED_NAME_APPLICABLE_REDEEMABLES_PER_CATEGORY_LIMIT

      public static final String SERIALIZED_NAME_APPLICABLE_REDEEMABLES_PER_CATEGORY_LIMIT
      See Also:
    • SERIALIZED_NAME_APPLICABLE_EXCLUSIVE_REDEEMABLES_LIMIT

      public static final String SERIALIZED_NAME_APPLICABLE_EXCLUSIVE_REDEEMABLES_LIMIT
      See Also:
    • SERIALIZED_NAME_APPLICABLE_EXCLUSIVE_REDEEMABLES_PER_CATEGORY_LIMIT

      public static final String SERIALIZED_NAME_APPLICABLE_EXCLUSIVE_REDEEMABLES_PER_CATEGORY_LIMIT
      See Also:
    • SERIALIZED_NAME_DISCOUNT_CALCULATION_MODE

      public static final String SERIALIZED_NAME_DISCOUNT_CALCULATION_MODE
      See Also:
    • SERIALIZED_NAME_INITIAL_AMOUNT_MODE_CATEGORIES

      public static final String SERIALIZED_NAME_INITIAL_AMOUNT_MODE_CATEGORIES
      See Also:
    • SERIALIZED_NAME_DISCOUNTED_AMOUNT_MODE_CATEGORIES

      public static final String SERIALIZED_NAME_DISCOUNTED_AMOUNT_MODE_CATEGORIES
      See Also:
    • SERIALIZED_NAME_REDEEMABLES_APPLICATION_MODE

      public static final String SERIALIZED_NAME_REDEEMABLES_APPLICATION_MODE
      See Also:
    • SERIALIZED_NAME_REDEEMABLES_SORTING_RULE

      public static final String SERIALIZED_NAME_REDEEMABLES_SORTING_RULE
      See Also:
    • SERIALIZED_NAME_CREATED_AT

      public static final String SERIALIZED_NAME_CREATED_AT
      See Also:
    • SERIALIZED_NAME_UPDATED_AT

      public static final String SERIALIZED_NAME_UPDATED_AT
      See Also:
    • openapiFields

      public static HashSet<String> openapiFields
    • openapiRequiredFields

      public static HashSet<String> openapiRequiredFields
  • Constructor Details

    • ManagementProjectsStackingRules

      public ManagementProjectsStackingRules()
  • Method Details

    • id

    • getId

      @Nullable public String getId()
      The unique identifier of the stacking rules.
      Returns:
      id
    • setId

      public void setId(String id)
    • exclusiveCategories

      public ManagementProjectsStackingRules exclusiveCategories(List<String> exclusiveCategories)
    • addExclusiveCategoriesItem

      public ManagementProjectsStackingRules addExclusiveCategoriesItem(String exclusiveCategoriesItem)
    • getExclusiveCategories

      @Nullable public List<String> getExclusiveCategories()
      Lists the IDs of the categories that are exclusive.
      Returns:
      exclusiveCategories
    • setExclusiveCategories

      public void setExclusiveCategories(List<String> exclusiveCategories)
    • jointCategories

      public ManagementProjectsStackingRules jointCategories(List<String> jointCategories)
    • addJointCategoriesItem

      public ManagementProjectsStackingRules addJointCategoriesItem(String jointCategoriesItem)
    • getJointCategories

      @Nullable public List<String> getJointCategories()
      Lists the IDs of the categories that are joint.
      Returns:
      jointCategories
    • setJointCategories

      public void setJointCategories(List<String> jointCategories)
    • redeemablesLimit

      public ManagementProjectsStackingRules redeemablesLimit(Integer redeemablesLimit)
    • getRedeemablesLimit

      @Nullable public Integer getRedeemablesLimit()
      Defines how many redeemables can be sent to Voucherify for validation at the same time. minimum: 1 maximum: 30
      Returns:
      redeemablesLimit
    • setRedeemablesLimit

      public void setRedeemablesLimit(Integer redeemablesLimit)
    • applicableRedeemablesLimit

      public ManagementProjectsStackingRules applicableRedeemablesLimit(Integer applicableRedeemablesLimit)
    • getApplicableRedeemablesLimit

      @Nullable public Integer getApplicableRedeemablesLimit()
      Defines how many redeemables can be applied at the same time. The number must be less than or equal to `\"redeemables_limit\"`. minimum: 1
      Returns:
      applicableRedeemablesLimit
    • setApplicableRedeemablesLimit

      public void setApplicableRedeemablesLimit(Integer applicableRedeemablesLimit)
    • applicableRedeemablesPerCategoryLimit

      public ManagementProjectsStackingRules applicableRedeemablesPerCategoryLimit(Integer applicableRedeemablesPerCategoryLimit)
    • getApplicableRedeemablesPerCategoryLimit

      @Nullable public Integer getApplicableRedeemablesPerCategoryLimit()
      Defines how many redeemables with the same category can be applied at the same time. The number must be less than or equal to `\"applicable_redeemables_limit\"`.
      Returns:
      applicableRedeemablesPerCategoryLimit
    • setApplicableRedeemablesPerCategoryLimit

      public void setApplicableRedeemablesPerCategoryLimit(Integer applicableRedeemablesPerCategoryLimit)
    • applicableExclusiveRedeemablesLimit

      public ManagementProjectsStackingRules applicableExclusiveRedeemablesLimit(Integer applicableExclusiveRedeemablesLimit)
    • getApplicableExclusiveRedeemablesLimit

      @Nullable public Integer getApplicableExclusiveRedeemablesLimit()
      Defines how many redeemables with an assigned exclusive category can be applied at the same time. minimum: 1 maximum: 5
      Returns:
      applicableExclusiveRedeemablesLimit
    • setApplicableExclusiveRedeemablesLimit

      public void setApplicableExclusiveRedeemablesLimit(Integer applicableExclusiveRedeemablesLimit)
    • applicableExclusiveRedeemablesPerCategoryLimit

      public ManagementProjectsStackingRules applicableExclusiveRedeemablesPerCategoryLimit(Integer applicableExclusiveRedeemablesPerCategoryLimit)
    • getApplicableExclusiveRedeemablesPerCategoryLimit

      @Nullable public Integer getApplicableExclusiveRedeemablesPerCategoryLimit()
      Defines how many exclusive redeemables with the same category can be applied at the same time. The number must be less than or equal to `\"applicable_exclusive_redeemables_limit\"`.
      Returns:
      applicableExclusiveRedeemablesPerCategoryLimit
    • setApplicableExclusiveRedeemablesPerCategoryLimit

      public void setApplicableExclusiveRedeemablesPerCategoryLimit(Integer applicableExclusiveRedeemablesPerCategoryLimit)
    • discountCalculationMode

      public ManagementProjectsStackingRules discountCalculationMode(ManagementProjectsStackingRules.DiscountCalculationModeEnum discountCalculationMode)
    • getDiscountCalculationMode

      @Nullable public ManagementProjectsStackingRules.DiscountCalculationModeEnum getDiscountCalculationMode()
      Defines if the discounts are applied by taking into account the initial order amount or the discounted order amount.
      Returns:
      discountCalculationMode
    • setDiscountCalculationMode

      public void setDiscountCalculationMode(ManagementProjectsStackingRules.DiscountCalculationModeEnum discountCalculationMode)
    • initialAmountModeCategories

      public ManagementProjectsStackingRules initialAmountModeCategories(List<String> initialAmountModeCategories)
    • addInitialAmountModeCategoriesItem

      public ManagementProjectsStackingRules addInitialAmountModeCategoriesItem(String initialAmountModeCategoriesItem)
    • getInitialAmountModeCategories

      @Nullable public List<String> getInitialAmountModeCategories()
      Lists the IDs of the categories that apply a discount based on the initial amount.
      Returns:
      initialAmountModeCategories
    • setInitialAmountModeCategories

      public void setInitialAmountModeCategories(List<String> initialAmountModeCategories)
    • discountedAmountModeCategories

      public ManagementProjectsStackingRules discountedAmountModeCategories(List<String> discountedAmountModeCategories)
    • addDiscountedAmountModeCategoriesItem

      public ManagementProjectsStackingRules addDiscountedAmountModeCategoriesItem(String discountedAmountModeCategoriesItem)
    • getDiscountedAmountModeCategories

      @Nullable public List<String> getDiscountedAmountModeCategories()
      Lists the IDs of the categories that apply a discount based on the discounted amount.
      Returns:
      discountedAmountModeCategories
    • setDiscountedAmountModeCategories

      public void setDiscountedAmountModeCategories(List<String> discountedAmountModeCategories)
    • redeemablesApplicationMode

      public ManagementProjectsStackingRules redeemablesApplicationMode(ManagementProjectsStackingRules.RedeemablesApplicationModeEnum redeemablesApplicationMode)
    • getRedeemablesApplicationMode

      @Nullable public ManagementProjectsStackingRules.RedeemablesApplicationModeEnum getRedeemablesApplicationMode()
      Defines the application mode for redeemables. `\"ALL\"` means that all redeemables must be validated for the redemption to be successful. `\"PARTIAL\"` means that only those redeemables that can be validated will be redeemed. The redeemables that fail validaton will be skipped.
      Returns:
      redeemablesApplicationMode
    • setRedeemablesApplicationMode

      public void setRedeemablesApplicationMode(ManagementProjectsStackingRules.RedeemablesApplicationModeEnum redeemablesApplicationMode)
    • redeemablesSortingRule

    • getRedeemablesSortingRule

      @Nullable public ManagementProjectsStackingRules.RedeemablesSortingRuleEnum getRedeemablesSortingRule()
      Defines the sorting rule for redeemables. `\"CATEGORY_HIERARCHY\"` means that redeemables are applied with the order established by the hierarchy of the categories. `\"REQUESTED_ORDER\"` means that redeemables are applied with the order established in the request.
      Returns:
      redeemablesSortingRule
    • setRedeemablesSortingRule

      public void setRedeemablesSortingRule(ManagementProjectsStackingRules.RedeemablesSortingRuleEnum redeemablesSortingRule)
    • createdAt

      public ManagementProjectsStackingRules createdAt(OffsetDateTime createdAt)
    • getCreatedAt

      @Nullable public OffsetDateTime getCreatedAt()
      Timestamp representing the date and time when the stacking rules were created. The value for this parameter is shown in the ISO 8601 format.
      Returns:
      createdAt
    • setCreatedAt

      public void setCreatedAt(OffsetDateTime createdAt)
    • updatedAt

      public ManagementProjectsStackingRules updatedAt(OffsetDateTime updatedAt)
    • getUpdatedAt

      @Nullable public OffsetDateTime getUpdatedAt()
      Timestamp representing the date and time when the stacking rules were updated. The value for this parameter is shown in the ISO 8601 format.
      Returns:
      updatedAt
    • setUpdatedAt

      public void setUpdatedAt(OffsetDateTime updatedAt)
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • fromJson

      public static ManagementProjectsStackingRules fromJson(String jsonString) throws IOException
      Create an instance of ManagementProjectsStackingRules given an JSON string
      Parameters:
      jsonString - JSON string
      Returns:
      An instance of ManagementProjectsStackingRules
      Throws:
      IOException - if the JSON string is invalid with respect to ManagementProjectsStackingRules
    • toJson

      public String toJson()
      Convert an instance of ManagementProjectsStackingRules to an JSON string
      Returns:
      JSON string