Integração de Dados ao Epays
O projeto responsável por integrar os dados ao Epays está localizado dentro da solution Etec.Services. Com isso em mente, basta realizar o download do mesmo.
Link: Etec.Services
Etapa 1 - Localizar projeto
- O projeto de teste de integração está localizado na pasta Test e no projeto Etec.Services.Util.Test.

Etapa 2 - Configuração de ambiente
-
É necessário configurar o ambiente (teste / homologação / produção) no arquivo cache.json, que está localizado no caminho: Configuration/Json/cache.Json.
1.1. Configurar o instance name com o ambiente desejado, por padrão a configuração é para o ambiente de teste.

-
É necessário apontar a API do Epays para o ambiente correspondente, no arquivo appsettings.json, que está localizado dentro do projeto.
2.1. Configurar o EpayApi e ApiKey conforme necessidade, por padrão a configuração é para o ambiente de teste.

Etapa 3 - Configurar o usuário e senha que a Webfopag utilizará
- Caso essa etapa já tenha sido cumprida, avance para a etapa 4.
-
Acesse os parâmetros da empresa e observe o usuário e senha da API do Epays configurados.

-
O usuário e senha devem coincidir com o usuário e senha configurados para o Epays. Para verificar, acesse o Epays no ambiente correspondente:

-
Informações de login padrão:
- Ambiente de Teste
- Usuário:
thaislopes@employer.com.br - Senha:
5504
- Usuário:
- Ambiente de Homologação
- Usuário:
093.780.769-98 - Senha:
1234
- Usuário:
Nota: Para o ambiente de homologação, será necessário autenticação em dois fatores. Caso precise do código, solicite a um membro da equipe de Produtos.
- Ambiente de Teste
-
O perfil onde as chaves estão localizadas é o perfil RH.

-
No Epays, clique no nome do usuário e navegue até a opção Chave API.

-
Cadastrar uma nova chave ou utilizar a chave já existente.

-
Com o usuário e senha cadastrados, as integrações passarão a apontar para o usuário correto.

Etapa 4 - Selecione o processo de captura (integrar pagamento, integrar admissão ou integrar exclusão)
-
Selecionar a classe Epays.cs, responsável pelos testes de integração.

-
Selecione o region correspondente à integração desejada.

-
Para esses processos, é necessário possuir o Idf_Empregado e, em especial para lotes de pagamento, é necessário o ID do Lote. 3.1. Para capturar o Idf_Empregado, basta consultá-lo via banco na base correspondente, conforme demonstrado a seguir:
EXEC plataforma.TAB_SP_Replica_Script @script = N' DECLARE @CPF VARCHAR(11) = ''00818339110'' SELECT EMP.Idf_Empregado FROM employer.TAB_Empregado EMP JOIN employer.TAB_Pessoa_Fisica PF ON PF.Idf_Pessoa_Fisica = EMP.Idf_Pessoa_Fisica WHERE PF.Num_CPF = @CPF AND EMP.Flg_Inativo = 0 ';
3.2. Para capturar o lote, existem duas maneiras:
-
3.2.1. Realizar o pagamento de algum processo e capturar o lote gerado.

-
3.2.2. Pesquisar o lote na tela de consulta de pagamentos, referente ao(s) empregado(s) que compõem o lote (/ConsultaPagamento.aspx).

-
Etapa 5 - Capturar o JSON de integração
-
Na classe Epays.cs, nas variáveis declaradas, buscar a centroServico e alterar para a base em que a integração será simulada.
- Neste exemplo, usaremos a employer.

- Neste exemplo, usaremos a employer.
-
Acessar o método da integração desejada.
- Neste exemplo, usaremos a integração de pagamento.

2.1. Nesta integração, é possível simular holerite e benefício.

- Neste exemplo, usaremos a integração de pagamento.
-
Na variável IdArquivoGeraLote, inserir o lote desejado e, se necessário, especificar um empregado em específico, preenchendo a variável idEmpregado capturado na etapa 4, passo 3.

-
Dica: Criar uma string antes do
await, onde será retornado o JSON da integração para facilitar a manipulação.- Como faremos a integração de holerite, adicionei a string no case 1.

- Como faremos a integração de holerite, adicionei a string no case 1.
-
Por um breakpoint no break final do switch.

-
Clicar com botão direito dentro do método que deseja realizar o debug e clicar em Debug Test ou Teste de depuração.

-
Aguardar até que a execução pare no ponto de parada selecionado (esse processo pode ser demorado).

-
Capturar o JSON armazenado na variável.

-
Formatar o JSON e validar o que se é desejado.
- Recomendo o site: JSON Crack

- Recomendo o site: JSON Crack
Extra:
- Nos testes de integração, a integração não é disparada. Caso seja necessário que essa integração ocorra, é necessário alterar o If Debug presente no método IntegrarHoleriteV2, dentro do HoleriteService.cs.
