Class QuoteBuilder


  • public class QuoteBuilder
    extends CalculableLineItemCollectionBuilder<QuoteBuilder>
    QuoteBuilder is the starting point of an interface that allows you manipulate a quote object in a quote header calculation logic.
    The header calculation is executed twice: Once before the calculation of the individual line items (= pre phase) and once after that (=post phase).
    Usually code should only apply in one phase. Use isPrePhase() and isPostPhase() methods to detect current phase.
    The quote builder is available in the header logic by this call:
    def builder = quoteProcessor

    IMPORTANT: Please read super class notes on sequence of execution!
    • Method Detail

      • getQuoteView

        public Object getQuoteView()
        Gets the full quote object as a nested map
        Returns:
        The quote object
      • getHelper

        public QuoteHelper getHelper()
        Gets a helper class that assists in manipulating the quote object
        Returns:
      • addQuoteStructure

        public QuoteBuilder addQuoteStructure​(QuoteStructure structure)
        Apply a quote structure. That usually means adding a set of predefined folders and/or items
        Parameters:
        structure - The structure
        Returns:
      • addFolder

        public void addFolder​(String label)
        Creates and adds a new root folder This is only a shortcut as when doing it via QuoteStructure If you intend to add many folders and items, please use the QuoteStructure approach instead!
        Parameters:
        label - The folder label
      • addPart

        public void addPart​(String sku)
        Creates and adds a new part This is only a shortcut as when doing it via QuoteStructure If you intend to add many folders and items, please use the QuoteStructure approach instead!
        Parameters:
        label - The SKU of the new part
      • build

        public QuoteBuilderResult build()
        Specified by:
        build in class AbstractBuilder