static void Main(string[] args) { IReader reader = new ExcelReader(); var taxList = new List <Tax>(); var userInfo = new UserInfo(); var taxToDisplay = new TaxToDisplay(); var countryController = new CountryController(); var inputReader = new InputReader(new DoubleController(), new CountryController()); var taxCalculator = new TaxCalculator(new TaxToDisplay()); var displayManager = new DisplayManager(new DisplayController()); try { taxList = reader.Open(); } catch (COMException ex) { displayManager.DisplayFatalError(ex.Message); } userInfo = inputReader.ReadInput(taxList); taxToDisplay = taxCalculator.CalculateTax(taxList, userInfo); displayManager.DisplayFinalOutput(taxToDisplay); Console.ReadLine(); }
public void DisplayFinalOutput(TaxToDisplay taxToDisplay) { Console.OutputEncoding = System.Text.Encoding.Unicode; Console.WriteLine($"\nAmmontare lordo: €{taxToDisplay.GrossToDisplay}"); Console.WriteLine("\nMeno detrazioni: \n"); _displayController.VerifyDisplay(Constants.Messages.IncomeTaxMessage, taxToDisplay.IncomeTaxToDisplay); _displayController.VerifyDisplay(Constants.Messages.UniversalSocialChargeMessage, taxToDisplay.UniversalSocialChargeToDisplay); _displayController.VerifyDisplay(Constants.Messages.PensionMessage, taxToDisplay.PensionToDisplay); _displayController.VerifyDisplay(Constants.Messages.InpsMessage, taxToDisplay.InpsToDisplay); Console.WriteLine($"Ammontare netto: €{taxToDisplay.NetToDisplay}"); }
public TaxCalculator(TaxToDisplay taxToDisplay) { _taxToDisplay = taxToDisplay; }