Interface CartDiscountValueRelativeDraft

All Superinterfaces:
CartDiscountValueDraft, Draft<CartDiscountValueRelativeDraft>

public interface CartDiscountValueRelativeDraft extends CartDiscountValueDraft, Draft<CartDiscountValueRelativeDraft>
CartDiscountValueRelativeDraft
Example to create an instance using the builder pattern

     CartDiscountValueRelativeDraft cartDiscountValueRelativeDraft = CartDiscountValueRelativeDraft.builder()
             .permyriad(0.3)
             .build()
 
  • Field Details

  • Method Details

    • getPermyriad

      @NotNull @NotNull Long getPermyriad()

      Fraction (per ten thousand) the price is reduced by. For example, 1000 will result in a 10% price reduction.

      Returns:
      permyriad
    • getApplicationMode

      DiscountApplicationMode getApplicationMode()

      Determines how the discount applies when using CartDiscountPatternTarget.

      • If the mode is IndividualApplication, the discounted percentage is applied on each unit's price. The units matching the triggerPattern are not considered.
      • If the mode is ProportionateDistribution and EvenDistribution the discounted value is calculated from the total value of the units matching the targetPattern and distributed among the units matching the targetPattern or triggerPattern. These modes are allowed only if CartDiscountPatternTarget triggerPattern is non-empty.
      Returns:
      applicationMode
    • setPermyriad

      void setPermyriad(Long permyriad)

      Fraction (per ten thousand) the price is reduced by. For example, 1000 will result in a 10% price reduction.

      Parameters:
      permyriad - value to be set
    • setApplicationMode

      void setApplicationMode(DiscountApplicationMode applicationMode)

      Determines how the discount applies when using CartDiscountPatternTarget.

      • If the mode is IndividualApplication, the discounted percentage is applied on each unit's price. The units matching the triggerPattern are not considered.
      • If the mode is ProportionateDistribution and EvenDistribution the discounted value is calculated from the total value of the units matching the targetPattern and distributed among the units matching the targetPattern or triggerPattern. These modes are allowed only if CartDiscountPatternTarget triggerPattern is non-empty.
      Parameters:
      applicationMode - value to be set
    • of

      factory method
      Returns:
      instance of CartDiscountValueRelativeDraft
    • of

      factory method to create a shallow copy CartDiscountValueRelativeDraft
      Parameters:
      template - instance to be copied
      Returns:
      copy instance
    • copyDeep

      Specified by:
      copyDeep in interface CartDiscountValueDraft
    • deepCopy

      @Nullable static CartDiscountValueRelativeDraft deepCopy(@Nullable CartDiscountValueRelativeDraft template)
      factory method to create a deep copy of CartDiscountValueRelativeDraft
      Parameters:
      template - instance to be copied
      Returns:
      copy instance
    • builder

      builder factory method for CartDiscountValueRelativeDraft
      Returns:
      builder
    • builder

      create builder for CartDiscountValueRelativeDraft instance
      Parameters:
      template - instance with prefilled values for the builder
      Returns:
      builder
    • withCartDiscountValueRelativeDraft

      default <T> T withCartDiscountValueRelativeDraft(Function<CartDiscountValueRelativeDraft,T> helper)
      accessor map function
      Type Parameters:
      T - mapped type
      Parameters:
      helper - function to map the object
      Returns:
      mapped value
    • typeReference

      static com.fasterxml.jackson.core.type.TypeReference<CartDiscountValueRelativeDraft> typeReference()
      gives a TypeReference for usage with Jackson DataBind
      Returns:
      TypeReference