コード例 #1
0
 public IActionResult CalculatePayslips([FromBody] List <PayslipRequest> payslipRequests)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     else
     {
         List <PayslipResponse> data = payslipRequests.Select(x => _payslipService.GeneratePayslip(x)).ToList();
         return(Ok(data));
     }
 }
コード例 #2
0
        public IActionResult Process([FromBody] PayslipInput input)
        {
            try
            {
                //failed model will auto-send 400 badrequest by api
                bool isValidInput = _payslipService.ValidateInputModel(input);

                if (!isValidInput)
                {
                    ErrorResponse errorResponse = new ErrorResponse("model is invalid or violate business rules, please change the input and try again.", ErrorTypes.BusinessRuleViolation);
                    return(BadRequest(errorResponse));
                }

                PayslipOutput payslipOutput = _payslipService.GeneratePayslip(input);
                return(Ok(payslipOutput));
            }
            catch (ArgumentNullException ex)
            {
                ErrorResponse errorResponse = new ErrorResponse(ex.Message, ErrorTypes.BusinessRuleViolation);
                return(BadRequest(errorResponse));
            }
        }