Ejemplo n.º 1
0
            private static DiscountMethodType GetDiscountMethodType(PeriodicDiscountOfferType periodicDiscountType, int discountTypeFromDatabase)
            {
                DiscountMethodType discountMethod = DiscountMethodType.DealPrice;

                // ISNULL(pdmm.MIXANDMATCHDISCOUNTTYPE, ISNULL(pdmb.MULTIBUYDISCOUNTTYPE, pd.PERIODICDISCOUNTTYPE))
                switch (periodicDiscountType)
                {
                case PeriodicDiscountOfferType.Offer:
                case PeriodicDiscountOfferType.Promotion:
                    discountMethod = DiscountMethodType.LineSpecific;
                    break;

                case PeriodicDiscountOfferType.MixAndMatch:
                case PeriodicDiscountOfferType.MultipleBuy:
                    discountMethod = (DiscountMethodType)discountTypeFromDatabase;
                    break;

                case PeriodicDiscountOfferType.Threshold:
                    discountMethod = DiscountMethodType.LineSpecific;
                    break;

                default:
                    NetTracer.Warning("Unsupported discount type: {0}", discountTypeFromDatabase);
                    break;
                }

                return(discountMethod);
            }
Ejemplo n.º 2
0
            private static DiscountOfferMethod GetLineDiscountOfferMethod(PeriodicDiscountOfferType periodicDiscountType, DiscountMethodType discountMethod, int lineDiscountMethod, int lineSpecificDiscountType)
            {
                DiscountOfferMethod offerMethod = (DiscountOfferMethod)lineDiscountMethod;

                if (periodicDiscountType == PeriodicDiscountOfferType.MixAndMatch && discountMethod == DiscountMethodType.LineSpecific)
                {
                    if (lineSpecificDiscountType == (int)DiscountMethodType.DealPrice)
                    {
                        offerMethod = DiscountOfferMethod.OfferPrice;
                    }
                    else if (lineSpecificDiscountType == (int)DiscountMethodType.DiscountPercent)
                    {
                        offerMethod = DiscountOfferMethod.DiscountPercent;
                    }
                }

                return(offerMethod);
            }