Esempio n. 1
0
    /// <summary>
    /// Returns query to filter active discounts.
    /// </summary>
    private WhereCondition GetActiveQuery()
    {
        IWhereCondition activeQuery;

        if (IsMultibuy)
        {
            activeQuery = MultiBuyDiscountInfoProvider.GetRunningDiscounts(CurrentSite.SiteID, DateTime.Now);
        }
        else
        {
            activeQuery = DiscountInfoProvider.GetRunningDiscounts(CurrentSite.SiteID, DateTime.Now);
        }
        return(new WhereCondition(activeQuery.Expand(activeQuery.WhereCondition)));
    }
    private IWhereCondition GetActiveDiscounts()
    {
        switch (DiscountType)
        {
        case DiscountTypeEnum.CatalogDiscount:
            return(DiscountInfoProvider.GetRunningDiscounts(CurrentSite.SiteID, DateTime.Now, DiscountApplicationEnum.Products));

        case DiscountTypeEnum.OrderDiscount:
        case DiscountTypeEnum.ShippingDiscount:
            return(DiscountInfoProvider.GetRunningDiscounts(CurrentSite.SiteID, DateTime.Now));

        case DiscountTypeEnum.ProductCoupon:
            return(MultiBuyDiscountInfoProvider.GetRunningProductCouponDiscounts(CurrentSite.SiteID, DateTime.Now));

        case DiscountTypeEnum.MultibuyDiscount:
            return(MultiBuyDiscountInfoProvider.GetRunningMultiBuyDiscounts(CurrentSite.SiteID, DateTime.Now));

        case DiscountTypeEnum.GiftCard:
            return(GiftCardInfoProvider.GetRunningGiftCards(CurrentSite.SiteID, DateTime.Now));
        }

        return(new WhereCondition());
    }