Class ProductPromoWorker
java.lang.Object
org.apache.ofbiz.order.shoppingcart.product.ProductPromoWorker
ProductPromoWorker - Worker class for catalog/product promotion related functionality
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic String
checkCanUsePromoCode
(String productPromoCodeId, String partyId, Delegator delegator, Locale locale) static String
checkCanUsePromoCode
(String productPromoCodeId, String partyId, Delegator delegator, ShoppingCart cart, Locale locale) static boolean
checkConditionForItem
(GenericValue productPromoCond, ShoppingCart cart, ShoppingCartItem cartItem, Delegator delegator, LocalDispatcher dispatcher, Timestamp nowTimestamp) static int
checkConditionPartyHierarchy
(Delegator delegator, Timestamp nowTimestamp, String groupPartyId, String partyId) static boolean
checkConditionsForItem
(GenericValue productPromoActionOrCond, ShoppingCart cart, ShoppingCartItem cartItem, Delegator delegator, LocalDispatcher dispatcher, Timestamp nowTimestamp) static void
distributeDiscountAmount
(BigDecimal discountAmountTotal, BigDecimal totalAmount, List<ShoppingCartItem> cartItemsUsed, GenericValue productPromoAction, Delegator delegator) static void
doOrderItemPromoAction
(GenericValue productPromoAction, ShoppingCartItem cartItem, BigDecimal amount, String amountField, Delegator delegator) static void
doOrderPromoAction
(GenericValue productPromoAction, ShoppingCart cart, BigDecimal amount, String amountField, Delegator delegator) static void
doPromotions
(ShoppingCart cart, List<GenericValue> productPromoList, LocalDispatcher dispatcher) static void
doPromotions
(ShoppingCart cart, LocalDispatcher dispatcher) static Integer
findPromoItem
(GenericValue productPromoAction, ShoppingCart cart) static List<GenericValue>
getAgreementPromotions
(ShoppingCart cart, Timestamp nowTimestamp, LocalDispatcher dispatcher) static List<ShoppingCartItem>
getCartItemsUsed
(ShoppingCart cart, GenericValue productPromoAction) static BigDecimal
getCartItemsUsedTotalAmount
(ShoppingCart cart, GenericValue productPromoAction) static Long
getProductPromoCodeUseLimit
(GenericValue productPromoCode, String partyId, Delegator delegator) static Long
getProductPromoUseLimit
(GenericValue productPromo, String partyId, Delegator delegator) calculate low use limit for this promo for the current "order", check per order, customer, promostatic List<GenericValue>
getProductStorePromotions
(ShoppingCart cart, Timestamp nowTimestamp, LocalDispatcher dispatcher) getPromoRuleActionProductIds
(GenericValue productPromoAction, Delegator delegator, Timestamp nowTimestamp) getPromoRuleCondProductIds
(GenericValue productPromoCond, Delegator delegator, Timestamp nowTimestamp) static List<GenericValue>
getStoreProductPromos
(Delegator delegator, LocalDispatcher dispatcher, ServletRequest request) static String
makeAutoDescription
(GenericValue productPromo, Delegator delegator, Locale locale, LocalDispatcher dispatcher) static void
makeProductPromoCondActionIdSets
(String productPromoId, Set<String> productIdsCond, Set<String> productIdsAction, Delegator delegator, Timestamp nowTimestamp) static void
makeProductPromoCondActionIdSets
(String productPromoId, Set<String> productIdsCond, Set<String> productIdsAction, Delegator delegator, Timestamp nowTimestamp, boolean filterOldProducts) static void
makeProductPromoIdSet
(Set<String> productIds, List<GenericValue> productPromoCategories, List<GenericValue> productPromoProducts, Delegator delegator, Timestamp nowTimestamp, boolean filterOldProducts) static void
performAction
(ProductPromoWorker.ActionResultInfo actionResultInfo, GenericValue productPromoAction, ShoppingCart cart, Delegator delegator, LocalDispatcher dispatcher, Timestamp nowTimestamp)
-
Method Details
-
getStoreProductPromos
public static List<GenericValue> getStoreProductPromos(Delegator delegator, LocalDispatcher dispatcher, ServletRequest request) -
getStoreProductPromoCodes
-
getProductStorePromotions
public static List<GenericValue> getProductStorePromotions(ShoppingCart cart, Timestamp nowTimestamp, LocalDispatcher dispatcher) -
getAgreementPromotions
public static List<GenericValue> getAgreementPromotions(ShoppingCart cart, Timestamp nowTimestamp, LocalDispatcher dispatcher) -
doPromotions
-
doPromotions
public static void doPromotions(ShoppingCart cart, List<GenericValue> productPromoList, LocalDispatcher dispatcher) -
getProductPromoUseLimit
public static Long getProductPromoUseLimit(GenericValue productPromo, String partyId, Delegator delegator) throws GenericEntityException calculate low use limit for this promo for the current "order", check per order, customer, promo- Throws:
GenericEntityException
-
getProductPromoCodeUseLimit
public static Long getProductPromoCodeUseLimit(GenericValue productPromoCode, String partyId, Delegator delegator) throws GenericEntityException - Throws:
GenericEntityException
-
checkCanUsePromoCode
-
checkCanUsePromoCode
-
makeAutoDescription
public static String makeAutoDescription(GenericValue productPromo, Delegator delegator, Locale locale, LocalDispatcher dispatcher) throws GenericEntityException - Throws:
GenericEntityException
-
checkConditionsForItem
public static boolean checkConditionsForItem(GenericValue productPromoActionOrCond, ShoppingCart cart, ShoppingCartItem cartItem, Delegator delegator, LocalDispatcher dispatcher, Timestamp nowTimestamp) throws GenericEntityException - Throws:
GenericEntityException
-
checkConditionForItem
public static boolean checkConditionForItem(GenericValue productPromoCond, ShoppingCart cart, ShoppingCartItem cartItem, Delegator delegator, LocalDispatcher dispatcher, Timestamp nowTimestamp) throws GenericEntityException - Throws:
GenericEntityException
-
checkConditionPartyHierarchy
public static int checkConditionPartyHierarchy(Delegator delegator, Timestamp nowTimestamp, String groupPartyId, String partyId) throws GenericEntityException - Throws:
GenericEntityException
-
performAction
public static void performAction(ProductPromoWorker.ActionResultInfo actionResultInfo, GenericValue productPromoAction, ShoppingCart cart, Delegator delegator, LocalDispatcher dispatcher, Timestamp nowTimestamp) throws GenericEntityException, CartItemModifyException -
getCartItemsUsed
public static List<ShoppingCartItem> getCartItemsUsed(ShoppingCart cart, GenericValue productPromoAction) -
getCartItemsUsedTotalAmount
public static BigDecimal getCartItemsUsedTotalAmount(ShoppingCart cart, GenericValue productPromoAction) -
distributeDiscountAmount
public static void distributeDiscountAmount(BigDecimal discountAmountTotal, BigDecimal totalAmount, List<ShoppingCartItem> cartItemsUsed, GenericValue productPromoAction, Delegator delegator) -
findPromoItem
-
doOrderItemPromoAction
public static void doOrderItemPromoAction(GenericValue productPromoAction, ShoppingCartItem cartItem, BigDecimal amount, String amountField, Delegator delegator) -
doOrderPromoAction
public static void doOrderPromoAction(GenericValue productPromoAction, ShoppingCart cart, BigDecimal amount, String amountField, Delegator delegator) -
getPromoRuleCondProductIds
public static Set<String> getPromoRuleCondProductIds(GenericValue productPromoCond, Delegator delegator, Timestamp nowTimestamp) throws GenericEntityException - Throws:
GenericEntityException
-
getPromoRuleActionProductIds
public static Set<String> getPromoRuleActionProductIds(GenericValue productPromoAction, Delegator delegator, Timestamp nowTimestamp) throws GenericEntityException - Throws:
GenericEntityException
-
makeProductPromoIdSet
public static void makeProductPromoIdSet(Set<String> productIds, List<GenericValue> productPromoCategories, List<GenericValue> productPromoProducts, Delegator delegator, Timestamp nowTimestamp, boolean filterOldProducts) throws GenericEntityException - Throws:
GenericEntityException
-
makeProductPromoCondActionIdSets
public static void makeProductPromoCondActionIdSets(String productPromoId, Set<String> productIdsCond, Set<String> productIdsAction, Delegator delegator, Timestamp nowTimestamp) throws GenericEntityException - Throws:
GenericEntityException
-
makeProductPromoCondActionIdSets
public static void makeProductPromoCondActionIdSets(String productPromoId, Set<String> productIdsCond, Set<String> productIdsAction, Delegator delegator, Timestamp nowTimestamp, boolean filterOldProducts) throws GenericEntityException - Throws:
GenericEntityException
-