Exemplo n.º 1
0
        private Paycheck BuildPaycheck(DeductionsRequest request)
        {
            var paycheck = new Paycheck();

            paycheck.Employee   = BuildEmployeeInfo(request);
            paycheck.Dependents = BuildDependentsInfo(request);
            return(paycheck);
        }
Exemplo n.º 2
0
 public IActionResult GetDeductions([FromBody] DeductionsRequest deductionsRequest)
 {
     try {
         var paycheck = _paycheckService.GetPaycheckWithDeductions(deductionsRequest);
         _logger.LogInformation("[PAYCHECK CONTROLLER][GET DEDUCTIONS][SUCCESS]");
         return(new OkObjectResult(paycheck));
     }
     catch (Exception ex) {
         _logger.LogError(ex, "[PAYCHECK CONTROLLER][GET DEDUCTIONS][FAILED]");
         return(StatusCode(500));
     }
 }
Exemplo n.º 3
0
        private List <DependentVM> BuildDependentsInfo(DeductionsRequest request)
        {
            var dependentsVM = new List <DependentVM>();

            if (request?.Dependents != null)
            {
                foreach (var depdendent in request.Dependents)
                {
                    dependentsVM.Add(BuildDependentInfo(depdendent));
                }
            }

            return(dependentsVM);
        }
Exemplo n.º 4
0
        private EmployeeVM BuildEmployeeInfo(DeductionsRequest request)
        {
            if (request?.Employee != null)
            {
                var employeeDeductions = _calculationService.CalculateDeductions(request.Employee);
                var employeeVM         = new EmployeeVM
                {
                    FirstName  = request.Employee.FirstName,
                    LastName   = request.Employee.LastName,
                    Deductions = new ViewModels.Deduction
                    {
                        Discount = employeeDeductions.Discount,
                        Gross    = employeeDeductions.Gross
                    }
                };
                return(employeeVM);
            }

            return(new EmployeeVM());
        }
Exemplo n.º 5
0
        public Paycheck GetPaycheckWithDeductions(DeductionsRequest request)
        {
            var paycheck = BuildPaycheck(request);

            return(paycheck);
        }