Esempio n. 1
0
        private Dictionary <int, decimal> GetVatRates()
        {
            var vatRates = _vatConfigurationProvider
                           .GetVatConfigurations()
                           .Select(vcp => new {
                id   = vcp.Id,
                rate = _vatConfigurationService.GetRate(vcp)
            })
                           .ToDictionary(a => a.id, a => a.rate);

            vatRates.Add(0, _vatConfigurationService.GetRate(_vatConfigurationService.GetDefaultCategory()));
            return(vatRates);
        }
Esempio n. 2
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.
 }