public decimal Manage(string id)
        {
            var allDiscounts = _initializeDiscount.Manage();

            decimal defaultDiscount = 0M;
            var     currentDiscount = 0M;

            foreach (var discountObj in allDiscounts)
            {
                currentDiscount = discountObj.GetDiscount(id);
                if (defaultDiscount < currentDiscount)
                {
                    defaultDiscount = currentDiscount;
                }
            }

            return(defaultDiscount);
        }
Пример #2
0
        public ActionResult GetCustomerTariffs(string accountNumber)
        {
            var data     = _tariffService.GetTariffInfo(accountNumber);
            var discount = _getTariff.Manage(accountNumber);

            if (discount != 0)
            {
                foreach (var item in data.Tariffs)
                {
                    item.AnnualElectricCost = (item.AnnualElectricCost - (item.AnnualElectricCost * discount));
                    item.AnnualGasCost      = (item.AnnualGasCost - (item.AnnualGasCost * discount));
                    item.annualSum          = decimal.Round((item.AnnualElectricCost + item.AnnualGasCost), 2, MidpointRounding.AwayFromZero);
                    item.monthlyElectric    = decimal.Round((item.AnnualElectricCost / 12), 2, MidpointRounding.AwayFromZero);
                    item.monthlyGas         = decimal.Round((item.AnnualGasCost / 12), 2, MidpointRounding.AwayFromZero);
                    var values      = Convert.ToDouble(item.monthlyElectric + item.monthlyGas).ToString(CultureInfo.InvariantCulture).Split('.');
                    int firstValue  = int.Parse(values[0]);
                    int secondValue = int.Parse(values[1]);
                    item.monthlySumPound = firstValue;
                    item.monthlySumPence = secondValue;
                    item.discount        = discount;
                }
            }
            return(View(data));
        }