Histórico da Página
CONTEÚDO
- Visão Geral
- Detalhamento
- Tela Integrações Tela Integrações HealthMap
- Outras Ações / Pedidos HealthMap
- Outras Ações / Pedidos HealthMap
- Tela Pedidos HealthMapda Integração
- Classe para Gravar os Pedidos
- Classe para Comunicar com o HealthMap
- Tabelas utilizadas
01. VISÃO GERAL
A integração do produto TOTVS Saúde Planos Linha Protheus e o HealthMap tem como objetivo, enviar dados dos Beneficiários e Empresas para que possam ser tratados pelos serviços utilizados na plataforma HealthMapnos sistemas parceiros da TOTVS.
A comunicação entre as partes será realizada via comunicação API REST.
02. DETALHAMENTO
O processo de integração funcionará no seguinte panorama, que serão detalhados abaixo:
- Nova tabela (BXXB7E), com o nome de "Integrações HealthMap", essa tabela será utilizado utilizada para cadastrar todas integrações realizadas entre o SIGAPLS e o HealthMap, até o momento as integrações que serão realizadas são: Cadastro de Beneficiários e Cadastro de Empresas.
- Nova tabela (BZZ), com o nome de "Pedidos HealthMap", essa tabela será utilizado para guardar todos os pedidos, ou seja, dados dos beneficiário ou Empresas que serão enviados para o HealtMap.
- Classe para processar a tabela BXX (Integrações), por exemplo: Cadastro de Beneficiários, será feito uma verificação na tabela de Beneficiários (BA1) e tabelas segundarias (BA3,BJK etc) se houver alguma alteração em alguma dessas tabelas, o sistema irá gerar um novo pedido (Tabela BZZ) com a chave de busca daquele beneficiário (Se já houver algum pedido pendente de envio para o beneficiário, não será gravado um novo pedido).
- Classe para processar a tabela BZZ (Pedidos), será realizado a montagem do Json de envio através dos dados do pedido, buscando dados do beneficiário por exemplo, através da chave do Alias que consta no Pedido. Realizado a comunicação com a HealthMap, será gravado o status do pedido, se foi enviado com sucesso ou se houve erro no envio.
03. TELA INTEGRAÇÕES HEALTHMAP
Tela em MVC da tabela BXX (Integrações HeathMap), onde será possível incluir, alterar e excluir registro.
...
Campo | Descrição | Validação |
---|---|---|
Operadora | Operadora do Sistema | Verifica se a Operadora existe no cadastro BA0 |
Cod. Integração | Código Incremental das Integrações | |
Descrição | Descrição da Integração | |
Alias Primário | Tabela que será usada como principal para buscar registros | Verifica se a tabela informada existe no dicionário de dados e se já não foi cadastrada na BXX |
EndPoint | Endereço de comunicação da API da HealthMap para a integração | |
Ativo | Se a integração está ativa ou não. | |
Tent. Envio | Tentativas de Envio, caso não consiga se comunicar com API. |
3.a. Outras Ações / Pedidos HealthMap
Através desse botão será visualizado os pedidos relacionados a integração posicionada na tabela BXX, a tela de pedidos será detalhada no próximo tópico.
04. TELA PEDIDOS HEALTHMAP
Tela em MVC da tabela BZZ (Pedidos), que será acessada através do botão outras ações da tela de Integrações HealthMap. O Browser dos pedidos será filtrado de acordo com a integração posicionada, ou seja, se for acessado via Integração do cadastro de beneficiários, só será exibido os pedidos relacionados ao cadastro de beneficiários na tabela BZZ e assim também para o cadastro de Empresas.
...
Campo | Descrição |
---|---|
Operadora | Operadora do Sistema |
Cod. Integração | Código de relacionamento com a tabela de Integrações |
Cod. Pedido | Código Incremental dos Pedidos |
Alias | Tabela chave do pedido para ser utilizado na busca de dados |
Chave | Chave de busca do Alias para posicionar nos registros |
Dt. Inclusão | Data de Inclusão do Pedido |
Dt. Comunicação | Data em que foi realizado a comunicação com a HealthMap |
Status | Status do Pedido: 0-Pendente de Envio; 1-Envio Realizado; 2-Erro de Envio; 3-Envio Cancelado |
Tent. Envio | Tentativas de Comunicação com o HealthMap |
Json Envio | JSON enviado para o HealthMap |
05. CLASSE PARA GRAVAR OS PEDIDOS
A classe PLMapGrvPed, irá verificar as integração da HealthMap (Tabela BXX) se os Alias relacionados ao Cadastro de Beneficiários ou Empresa tiveram alguma alteração de acordo com o campo S_T_A_M_P_ das tabelas. Se houver alteração, será feito uma busca na tabela de pedido (BZZ) pelos campos: Cod. Integração + Alias Primário + Chave (Corresponde os dados que identificam o Beneficiário ou Empresa), para saber se tem algum pedido daquele Beneficiário ou Empresa pendente para não haver duplicidade de envio de dados.
...
Será criado um schedule, onde poderá ser configurado a quantidade de vezes em que a classe PLMapGrvPed, irá buscar e gravar os pedidos de acordo com as integrações.
06. CLASSE PARA COMUNICAR COM O HEALTHMAP
Criado os pedidos, será feito a comunicação com a HealthMap pela Classe PLMapComPed, que herda métodos da classe PLSRest.
...
Será criado um schedule, onde poderá ser configurado a quantidade de vezes em que a classe PLMapComPed, irá realizar o envio dos pedidos pendentes para a HealthMap.
07. TABELAS UTILIZADAS
- BXX (Integrações HealthMap)
- BZZ (Pedidos HealthMap)
- BA1 (Cadastro dos Beneficiários)
- BA3 (Cadastro das Famílias)
Necessário adicionar as tabelas utilizadas no desenvolvimento
...