public override MerchantCodeResult GetMerchantCodeResult(Order ThisOrder, AnonymousAddress Address, string MerchantCode) { MerchantCodeResult RetVal = new MerchantCodeResult(); if (MerchantCode.ToUpper() == SAVE10) { RetVal.Amount = 10; RetVal.Type = MerchantCodeType.Coupon; RetVal.Valid = true; RetVal.Message = "You saved $10!"; } else if (MerchantCode.ToUpper() == SAVE20) { RetVal.Amount = 20; RetVal.Type = MerchantCodeType.Coupon; RetVal.Valid = true; RetVal.Message = "You saved $20!"; } else if (MerchantCode.ToUpper() == GIFTCERT) { RetVal.Amount = 23.46m; RetVal.Type = MerchantCodeType.GiftCertificate; RetVal.Valid = true; RetVal.Message = "Your gift certificate has a balance of $23.46."; } else { RetVal.Message = "Sorry, we didn't recognize code '" + MerchantCode + "'."; } return(RetVal); }
/// <summary> /// Example rules showing possible ways to handle callbacks /// </summary> /// <param name="ThisOrder">The Order to perform the calculation</param> /// <param name="Address">contains a possible shipping address for an order. /// This address should be used to calculate taxes and shipping costs /// for the order.</param> /// <param name="MerchantCode">Contains a coupon or gift certificate code /// that the customer entered for an order.</param> /// <returns></returns> public override MerchantCodeResult GetMerchantCodeResult(Order ThisOrder, AnonymousAddress Address, string MerchantCode) { MerchantCodeResult RetVal = new MerchantCodeResult(); if (MerchantCode.ToUpper() == SAVE10) { RetVal.Amount = 10; RetVal.Type = MerchantCodeType.Coupon; RetVal.Valid = true; RetVal.Message = "You saved $10!"; } else if (MerchantCode.ToUpper() == SAVE20) { RetVal.Amount = 20; RetVal.Type = MerchantCodeType.Coupon; RetVal.Valid = true; RetVal.Message = "You saved $20!"; } else if (MerchantCode.ToUpper() == GIFTCERT) { RetVal.Amount = 23.46m; RetVal.Type = MerchantCodeType.GiftCertificate; RetVal.Valid = true; RetVal.Message = "Your gift certificate has a balance of $23.46."; } else { RetVal.Message = "Sorry, we didn't recognize code '" + MerchantCode + "'."; } return RetVal; }
public void TestMerchantCodeResult() { MerchantCodeResult mcr = new MerchantCodeResult(); mcr.Amount = 12.975m; mcr.Message = "Hello"; mcr.Type = GCheckout.MerchantCalculation.MerchantCodeType.Coupon; mcr.Valid = true; Assert.AreEqual(12.98, mcr.Amount); Assert.AreEqual("Hello", mcr.Message); Assert.AreEqual(GCheckout.MerchantCalculation.MerchantCodeType.Coupon, mcr.Type); Assert.IsTrue(mcr.Valid); }