protected override decimal CalculateTotalOrderServiceFee(OrderProductVariantCollection orderProducts, List<ProductVariant> prodVars, Order order, out object shippingPrice) { decimal retVal = ConvertToUsd ? prodVars.Sum(prodVar => (Math.Round(PriceConverter.ToUsd(AddServiceFee(prodVar.Price, ConvertToUsd)))* orderProducts.First(op => op.ProductVariantID == prodVar.ProductVariantID).Quantity)) : prodVars.Sum(prodVar =>(AddServiceFee(prodVar.Price, ConvertToUsd)* orderProducts.First(op => op.ProductVariantID == prodVar.ProductVariantID).Quantity)); if (ShoppingCartRequiresShipping) { decimal shippingBlr = AddServiceFee(((FreeShippingEnabled && retVal > FreeShippingBorder) ? 0 : ShippingRate), ConvertToUsd); shippingPrice = ConvertToUsd ? Math.Round(PriceConverter.ToUsd(shippingBlr)) : shippingBlr; } else { shippingPrice = (decimal) 0; } return retVal; }
protected override decimal CalculateTotalOrderServiceFee(OrderProductVariantCollection orderProducts, List <ProductVariant> prodVars, Order order, out object shippingPrice) { decimal retVal = ConvertToUsd ? prodVars.Sum(prodVar => (Math.Round(PriceConverter.ToUsd(AddServiceFee(prodVar.Price, ConvertToUsd))) * orderProducts.First(op => op.ProductVariantID == prodVar.ProductVariantID).Quantity)) : prodVars.Sum(prodVar => (AddServiceFee(prodVar.Price, ConvertToUsd) * orderProducts.First(op => op.ProductVariantID == prodVar.ProductVariantID).Quantity)); if (ShoppingCartRequiresShipping) { decimal shippingBlr = AddServiceFee(((FreeShippingEnabled && retVal > FreeShippingBorder) ? 0 : ShippingRate), ConvertToUsd); shippingPrice = ConvertToUsd ? Math.Round(PriceConverter.ToUsd(shippingBlr)) : shippingBlr; } else { shippingPrice = (decimal)0; } return(retVal); }