/// <summary> /// Main Thread /// </summary> /// <param name="args">Args</param> static void Main(string[] args) { IDeduction deductions = DeductionFactory.GetDeduction(args[0]); PayRoll payRoll = new(deductions); payRoll.EmployeeLocation = args[0]; payRoll.HourlyRate = float.Parse(args[1]); payRoll.HoursWorked = int.Parse(args[2]); Console.WriteLine(payRoll.GetLocationLine()); Console.WriteLine(payRoll.GetGrossAmountLine()); Console.WriteLine(payRoll.GetDeductionsDescription()); Console.WriteLine(payRoll.GetNetAmountLine()); }
/// <summary> /// Class constructor /// </summary> /// <param name="ideduction">base deduction</param> public IRCompulsoryPensionContributionDeduction(IDeduction ideduction) : base(ideduction) { name = "Compulsory Pension Contribution (Ireland)"; }
/// <summary> /// Class constructor /// </summary> /// <param name="ideduction">base deduction</param> public DEIncomeTaxDeduction(IDeduction ideduction) : base(ideduction) { name = "Income Tax (Germany)"; }
/// <summary> /// Class constructor /// </summary> /// <param name="ideduction">base deduction</param> public IRIncomeTaxDeduction(IDeduction ideduction) : base(ideduction) { name = "Income Tax (Ireland)"; }
public void ApplyDeductions(IDeduction deduction, PayCheck payCheck) { deduction.ApplyDeduction(this, payCheck); }
/// <summary> /// Class constructor /// </summary> /// <param name="ideduction">base deduction</param> public DECompulsoryPensionContributionDeduction(IDeduction ideduction) : base(ideduction) { name = "Compulsory Pension Contribution (Germany)"; }
/// <summary> /// Class creator /// </summary> /// <param name="ideductions">Deductions</param> public PayRoll(IDeduction ideductions) { deductions = ideductions; }
protected void RemoveDeduction(IDeduction deduction) { mDeductions.Remove(deduction); }
protected void AddDeduction(IDeduction deduction) { mDeductions.Add(deduction); }
/// <summary> /// Class constructor /// </summary> /// <param name="ideduction">base deduction</param> public ITIncomeTaxDeduction(IDeduction ideduction) : base(ideduction) { name = "Income Tax (Italy)"; }
/// <summary> /// Class constructor /// </summary> /// <param name="ideduction">base deduction</param> public ITINPSContributionDeduction(IDeduction ideduction) : base(ideduction) { name = "INPS Contribution (Italy)"; }
public void AddDeduction(IDeduction deduction) { mDeductions.Add(deduction); }
/// <summary> /// Class constructor /// </summary> /// <param name="ideduction">IDeduction</param> public Deduction(IDeduction ideduction) { deduction = ideduction; }
/// <summary> /// Class constructor /// </summary> /// <param name="ideduction">base deduction</param> public IRUniversalSocialChargeDeduction(IDeduction ideduction) : base(ideduction) { name = "Universal Social Charge (Ireland)"; }