コード例 #1
0
 public ProductPriceEditorViewModel(
     ProductVatConfigurationPart vatPart,
     IShippingMethod shipping,
     IVatConfigurationService vatConfigurationService)
     : this(vatPart) {
     // There are two different cases here: FlexibleShippingMethodPart or the others
     HasDiscount = false;
     var rate = vatConfigurationService.GetRate(vatPart.VatConfigurationPart ?? vatConfigurationService.GetDefaultCategory());
     if (shipping is FlexibleShippingMethodPart)
     {
         ShowShape = true;
         var flexible = shipping as FlexibleShippingMethodPart;
         BasePrice       = flexible.DefaultPrice;
         BaseTaxedPrice  = Math.Round(flexible.DefaultPrice * (1.0m + rate), 2);
         OriginalPriceId = "FlexibleShippingMethodPart_DefaultPrice";
     }
     // NOTE: VAT configuration currently only works properly and is tested
     // for FlexibleShippingMethodPart. Other IShippingMethod implementations
     // likely don't work with it.
 }
コード例 #2
0
        public ProductPriceEditorViewModel(
            ProductVatConfigurationPart vatPart,
            ProductPart product,
            IProductPriceService productPriceService)
            : this(vatPart) {
            ShowShape   = true;
            HasDiscount = true;
            BasePrice   = product != null
                    ? product.Price
                    : 0.0m;
            DiscountPrice = product != null
                ? product.DiscountPrice
                : -1.0m;
            BaseTaxedPrice = product != null && productPriceService != null
                ? productPriceService.GetPrice(product)
                : 0.0m;

            DiscountTaxedPrice = product != null && productPriceService != null
                ? productPriceService.GetDiscountPrice(product) >= 0
                    ? productPriceService.GetDiscountPrice(product) : -1.0m
                : -1.0m;
        }
コード例 #3
0
 public ProductPriceEditorViewModel(
     ProductVatConfigurationPart vatPart)
     : this()
 {
 }