Class FlashBuyCouponEditorAreaLogicHandler

  • All Implemented Interfaces:
    com.hybris.cockpitng.widgets.baseeditorarea.EditorAreaLogicHandler

    public class FlashBuyCouponEditorAreaLogicHandler
    extends com.hybris.cockpitng.widgets.baseeditorarea.DefaultEditorAreaLogicHandler
    Check the promotion assigned with flash buy coupon before saving.
    • Constructor Detail

      • FlashBuyCouponEditorAreaLogicHandler

        public FlashBuyCouponEditorAreaLogicHandler()
    • Method Detail

      • performValidation

        public java.util.List<com.hybris.cockpitng.validation.model.ValidationInfo> performValidation​(com.hybris.cockpitng.engine.WidgetInstanceManager widgetInstanceManager,
                                                                                                      java.lang.Object currentObject,
                                                                                                      com.hybris.cockpitng.validation.ValidationContext validationContext)
        Specified by:
        performValidation in interface com.hybris.cockpitng.widgets.baseeditorarea.EditorAreaLogicHandler
        Overrides:
        performValidation in class com.hybris.cockpitng.widgets.baseeditorarea.DefaultEditorAreaLogicHandler
      • validatePromotionSourceRule

        protected void validatePromotionSourceRule​(java.util.List<com.hybris.cockpitng.validation.model.ValidationInfo> validationInfos,
                                                   PromotionSourceRuleModel promotionSourceRule,
                                                   FlashBuyCouponModel currentFlashBuyCoupon)
        Check if the promotion is available for the flash-buy coupon.If available, then check product(s) quantity for the promotion
        Parameters:
        validationInfos - validation information.
        promotionSourceRule - promotion source rule
        currentFlashBuyCoupon - current edit FlashBuyCoupon
      • validateRuleConditions

        protected void validateRuleConditions​(java.util.List<com.hybris.cockpitng.validation.model.ValidationInfo> validationInfos,
                                              PromotionSourceRuleModel promotionSourceRule,
                                              FlashBuyCouponModel currentFlashBuyCoupon)
      • validatePromotionExpiryDate

        protected void validatePromotionExpiryDate​(java.util.List<com.hybris.cockpitng.validation.model.ValidationInfo> validationInfos,
                                                   PromotionSourceRuleModel promotionSourceRule)
        Verify promotion source rule expiry date
        Parameters:
        validationInfos - validation information.
        promotionSourceRule - promotion source rule.
      • validateProduct

        protected void validateProduct​(java.util.List<com.hybris.cockpitng.validation.model.ValidationInfo> validationInfos,
                                       PromotionSourceRuleModel promotionSourceRule,
                                       FlashBuyCouponModel currentFlashBuyCoupon)
        Verify product quantity and coupon overlaps
        Parameters:
        validationInfos - validation information.
        promotionSourceRule - promotion source rule
        currentFlashBuyCoupon - current selected flashBuyCoupon
      • areCouponsDuplicated

        protected java.util.function.Predicate<FlashBuyCouponModel> areCouponsDuplicated​(FlashBuyCouponModel currentFlashBuyCoupon)
        Check if 2 flash-buy coupons' valid period are overlapping
        Parameters:
        currentFlashBuyCoupon - current selected FlashBuyCoupon
        Returns:
        Predicate if two coupon is duplicated.
      • performSave

        public java.lang.Object performSave​(com.hybris.cockpitng.engine.WidgetInstanceManager widgetInstanceManager,
                                            java.lang.Object currentObject)
                                     throws com.hybris.cockpitng.dataaccess.facades.object.exceptions.ObjectSavingException
        Specified by:
        performSave in interface com.hybris.cockpitng.widgets.baseeditorarea.EditorAreaLogicHandler
        Overrides:
        performSave in class com.hybris.cockpitng.widgets.baseeditorarea.DefaultEditorAreaLogicHandler
        Throws:
        com.hybris.cockpitng.dataaccess.facades.object.exceptions.ObjectSavingException
      • createValidationInfo

        protected com.hybris.cockpitng.validation.model.ValidationInfo createValidationInfo​(java.lang.String promotionSourceRuleName,
                                                                                            java.lang.String message,
                                                                                            java.lang.String... arguments)
        Create validation info
        Parameters:
        promotionSourceRuleName - promotion source rule name
        message - error msg
        Returns:
        ValidationInfo Validation info
      • setFlashBuyService

        public void setFlashBuyService​(FlashBuyService flashBuyService)
      • setRuleConditionsService

        public void setRuleConditionsService​(RuleConditionsService ruleConditionsService)
      • setRuleConditionsRegistry

        public void setRuleConditionsRegistry​(RuleConditionsRegistry ruleConditionsRegistry)