public async Task <IActionResult> CalculateNetRevenue
        (
            [FromServices] ILaborTaxesService service,
            [FromBody] CalculateNetRevenueRequest request,
            [FromQuery] DateTime?date,
            CancellationToken cancellationToken = default
        )
        {
            CalculateNetRevenueResult resp = await service.CalculateNetRevenue(request.Type.Value, request.Revenue, request.DependentsNumber, date, cancellationToken);

            if (resp == null)
            {
                return(BadRequest(resp));
            }
            return(Ok(resp));
        }
        public async Task <IActionResult> CalculateInss
        (
            [FromServices] ILogger <LaborTaxesController> logger,
            [FromServices] ILaborTaxesService service,
            [FromBody] CalculateInssRequest request,
            [FromQuery] DateTime?date,
            CancellationToken cancellationToken = default
        )
        {
            CalculateInssResult resp = await service.CalculateInss(request.Type.Value, request.Revenue, date, cancellationToken);

            if (resp == null)
            {
                return(NotFound(resp));
            }
            return(Ok(resp));
        }
 /// <summary>
 /// Create a new LaborTaxesService instance
 /// </summary>
 /// <param name="laborTaxesService">ILaborTaxesService bussiness service </param>
 /// <param name="logger">Logger object instance</param>
 public LaborTaxesGrpcService(ILaborTaxesService laborTaxesService, ILogger <LaborTaxesGrpcService> logger) : base()
 {
     _laborTaxesService = laborTaxesService;
     _logger            = logger;
 }