public Task<HttpResponseMessage> PesquisarFuncionario(PesquisaFuncionarioModel model)
        {
            HttpResponseMessage response;
            try
            {
                if (model.EPessoaFisica)
                {
                    var listaPessoaFisica = _pessoaService.PesquisarPessoaFisica(model.CodigoFuncionario ?? 0, model.Nome,
                    model.CPFCNPJ, model.Email, TipoPapelPessoaEnum.Funcionario);
                    response = ReturnSuccess(Mapper.Map<List<FuncionarioModel>>(listaPessoaFisica));
                }
                else
                {
                    var listaPessoaJuridica = _pessoaService.PesquisarPessoaJuridica(model.CodigoFuncionario ?? 0, model.Nome,
                    model.CPFCNPJ, model.Email, TipoPapelPessoaEnum.Funcionario);
                    response = ReturnSuccess(Mapper.Map<List<FuncionarioModel>>(listaPessoaJuridica));
                }
            }
            catch (Exception ex)
            {
                response = ReturnError(ex);
            }

            var tsc = new TaskCompletionSource<HttpResponseMessage>();
            tsc.SetResult(response);
            return tsc.Task;
        }
 public JsonResult PesquisaFuncionario(PesquisaFuncionarioModel model)
 {
     var response = ServiceRequest.Post<List<FuncionarioModel>>(model, "api/Funcionario/PesquisarFuncionario");
     if (response.Data.ObjetoRetorno != null && !response.Data.ObjetoRetorno.Any())
     {
         response.Data.Mensagem = Erros.NoEmployeeForTheGivenFilter;
     }
     return ReturnResponse(response);
 }