nopCommerce折扣问题?

时间:2011-07-11 10:56:20

标签: .net c#-4.0 e-commerce nopcommerce discounts

我正在使用noCommerce 1.9并修改了代码中的“HasOneOfTheseProductVarientsInTheCart”部分:

case DiscountRequirementEnum.HasOneOfTheseProductVariantsInTheCart:
    {
        if (customer != null)
        {
            CustomerSession customerSession = IoC.Resolve<ICustomerService>().GetCustomerSessionByCustomerId(customer.CustomerId);
            if (customerSession != null)
            {
                var restrictedProductVariants = IoC.Resolve<IProductService>().GetProductVariantsRestrictedByDiscountId(discount.DiscountId);
                var cart = IoC.Resolve<IShoppingCartService>().GetShoppingCartByCustomerSessionGuid(ShoppingCartTypeEnum.ShoppingCart, customerSession.CustomerSessionGuid);

                bool found = false;
                int totalfound = 0;
                foreach (ProductVariant restrictedPv in restrictedProductVariants)
                {
                    foreach (ShoppingCartItem sci in cart)
                    {
                        if (restrictedPv.ProductVariantId == sci.ProductVariantId)
                        {
                           // found = true;
                            totalfound++;
                            if (sci.Quantity > 1)
                            {
                                totalfound++;
                            }
                            break;
                        }
                    }

                    /*if (found)
                    {
                        break;
                    }*/
                }

                if (totalfound>1)
                    return true;
            }
        }
    }
    break;

它运行良好,因为我在系统中定义了产品varient ID,并且仅将折扣应用于此。

我希望能够以20英镑和1件单品购买2件商品(11.99英镑)。

所以基本上每个奇数都是全价。

我的问题是我当前的代码也改变了主页上的价格..因此折扣似乎适用于其他地方..

任何想法?

0 个答案:

没有答案