01. VISÃO GERAL

Esse documento irá demostrar a configuração do TOTVS Saúde para realização de integração de exames laboratoriais utilizando o Layout TOTVS.

02. CONFIGURAÇÃO DA UNIDADE DE ATENDIMENTO

1. Selecionar a unidade de atendimento para realizar a configuração na aba de integrações acessando o caminho Cadastros > Unidade de Atendimento clicar no botão editar do registro.


2. Selecionar a aba Integrações e na opção de Diagnóstico de Imagem selecionar a opção Layout TOTVS.

Importante

A configuração de Integração é dependente do tipo da Unidade de Atendimento. Ou seja, se a unidade for de Diagnóstico de Imagem e a integração estiver configurado como Layout TOTVS para Laboratório, a integração não será realizada.


03. Configuração dos parâmetros de endereços de envio e cancelamento de exames

Além de atribuir o layout TOTVS na unidade de atendimento é necessário também realizar a configuração dos endereços de envio e cancelamento. Essa configuração deve se realizada no Ambiente > Parâmetros > Gestão Hospitalar no RM.



Ao abrir a o Assistente de Implantação de Processos, clique em avançar e será apresentado à lista de processos e suas parametrizações:



Temos dois caminhos a seguir, a parametrização de Diagnóstico de Imagem ou Laboratoriais. Ambas telas apresentarão os mesmos campos.


Dentro da opção Unidade Diagnóstico > Integrações > Diagnóstico de Imagem > Layout TOTVS.



Ao avançar, chegamos na tela com os campos da parametrização:


Explicação dos campos e seus respectivos funcionamentos:

API Envia Pedido de Exame

Aqui deve ser informado um endereço de envio (URL) válido para que o RM consiga enviar o pedido de exame.

API Cancelamento de Pedido de Exame

Aqui deve ser informado um endereço de envio (URL) válido para que o RM consiga realizar o cancelamento do pedido de exame.


Sobre os headers das requisições:

Para ambas as requisições acima, no header da requisição será enviado um campo com dois possíveis nomes: token ou Authorization, no qual a API deve estar preparada para receber. Exemplo abaixo:


URL Token

Caso a integração utilize token de autenticação o endereço de autenticação por token deve ser informado no campo URL Token.

Essa URL Token nada mais que é um endereço que deve ser fornecido pelo pacs para que o sistema possa enviar o usuário e senha configurado na parametrização e assim obter como resultado um token de autenticação, que o sistema vai usar posteriormente para fazer as requisições de Envio e Cancelamento.

O formato esperado para a URL Token deve ser uma URL Completa (exemplo: "https://exemplolayouttotvs.com/auttoken") ou uma URL relativa, caso o client esteja configurado pra isso (exemplo: "/auttoken").

Caso eu não preencha o URL Token, o RM entende que a autenticação usada será somente por usuário e senha, e coloca no header da requisição (no envio de pedido de exame, por exemplo) essa informação de autenticação.

Caso eu preencha a URL Token da maneira correta, o sistema faz a requisição para o pacs para obter esse token por meio do usuário e senha informados, e assim colocar esse token no header da requisição desejada (no envio de pedido de exame, por exemplo).

Para funcionar corretamente essa requisição de busca ao token, o cliente deve estar preparado para receber no body da requisição, os campos de UserName e Password (Case Sensitive), contendo justamente os dados preenchidos nos campos de usuário e senha. Exemplo abaixo:





Identificador da Integração

Campo de texto básico visual para facilitar e definir qual integração se trata a parametrização.


Com essas configurações o sistema está apto para realizar o envio de exames de imagem no layout TOTVS.

04. REALIZAR A INTEGRAÇÃO DE EXAMES

Com as configurações acima definidas ao incluir exames o botão Finalizar ficará disponível, essa botão dispara a comunicação entre TOTVS Saúde e o endereço de envio de exames configurado nos Parâmetros Gerais.



Se a conexão for realizada o exame será enviado e a tela de exames irá exibir uma mensagem de sucesso na integração com a mensagem abaixo.


Nesse envio o TOTVS Saúde irá gerar uma JSON contendo as seguintes informações:

  • orders.codeCódigo único de documento é composto por Código da Coligada e o Número do Pedido.
  • orders.action: Tipo de ação que dever ser realizada (I) para Inclusão e (A) para Alteração.
  • orders.identification: Identificação da origem do Pedido de Exame
  • orders.companyId: Código da Coligada do contexto.
  • orders.serviceOrder: Número do Pedido.
  • orders.TypeTipo da integração: "I" => Diagnóstico de Imagem; "L" => Laboratorial.
  • orders.serviceOrderDate: Data da geração do Pedido de Exame composto por data e hora.
  • orders.careUnit.code: Código Único da Unidade da Atendimento composto por Código da Coligada do contexto e Código da Unidade de Atendimento.
  • orders.careUnit.companyId: Código da Coligada do contexto.
  • orders.careUnit.careUnitId: Código da Unidade de Atendimento.
  • orders.careUnit.description: Descrição da Unidade Atendimento.
  • orders.patient.code: Código Único do Paciente composto pelo Código da Coligada do contexto e o Código do Paciente.
  • orders.patient.companyId: Código da Coligada do contexto.
  • orders.patient.patientId: Código do Paciente.
  • orders.patient.medicalRegistration: Protocolo de Atendimento do Paciente.
  • orders.patient.name: Nome do Paciente.
  • orders.patient.socialName: Nome Social do Paciente.
  • orders.patient.cpf: CPF do Paciente.
  • orders.patient.generalRegistration: Número da identidade do Paciente.
  • orders.patient.gender: Sexo do Paciente.
  • orders.patient.birthDate: Data de Nascimento do Paciente.
  • orders.patient.motherName: Nome da Mãe do Paciente.
  • orders.patient.address: Endereço do Paciente.
  • orders.patient.neighborhood: Bairro do Paciente.
  • orders.patient.city: Cidade do Paciente.
  • orders.patient.state: Estado do Paciente.
  • orders.patient.postalCode:
  • orders.patient.commercialPhonePrefix: Número DDD do telefone comercial do Paciente.
  • orders.patient.homePhoneNumberPrefix: Número do telefone do Paciente.
  • orders.medicalInsurance.code: Código Único do registro composto pelo Código da Coligada de contexto e o Código Geral do Convênio.
  • orders.medicalInsurance.companyId: Código da Coligada do contexto.
  • orders.medicalInsurance.medicalInsuranceId: Código Geral do Convênio.
  • orders.medicalInsurance.name: Nome do Convênio.
  • orders.medicalInsurance.initials: Inicial do Convênio.
  • orders.medicalInsurance.healthInsurance: Plano contrato no Convênio.
  • orders.practitioner.code: Código Único do Registro composto por Código da Coligada de Contexto e o Código Geral do Médico.
  • orders.practitioner.companyId: Código da Coligada do contexto.
  • orders.practitioner.practitionerId: Código geral do Médico.
  • orders.practitioner.name: Nome do Médico.
  • orders.practitioner.boardName: Código do conselho Profissional.
  • orders.practitioner.professionalId: Número da Identidade Profissional.
  • orders.practitioner.professionalUf: UF da Identidade Profissional.
  • orders.attendance.code: Código Único do registro composto pelo Código da Coligada de contexto, Código do Paciente e Código do Atendimento.
  • orders.attendance.companyId: Código da Coligada do contexto.
  • orders.attendance.patientId: Código do Paciente.
  • orders.attendance.attendanceId: Código do Atendimento
  • orders.exams.code (Lista) : Código único do Registro composto pelo Código da Coligada do contexto, Número do Pedido, Código do Exame e Sequencial do Exame.
  • orders.exams.companyId: Código da Coligada do contexto.
  • orders.exams.serviceOrder: Número do Pedido.
  • orders.exams.examId: Código do Exame.
  • orders.exams.sequential: Sequencial do Exame.
  • orders.exams.description: Descrição do Exame
  • orders.exams.type: Tipo do Exame, N: Normal, U: Urgência e E: Emergência.
  • orders.exams.materialCode: Código do Material do Exame
  • orders.exams.materialDescription: Descrição do Material do Exame.
  • orders.exams.mnemonic:  Mnemônico do Exame.
  • orders.exams.collectionDate: Data da Coleta do Exame.
  • orders.exams.modality: Modalidade


Exemplo de JSON de Envio:

EnvioDePedidos.json


05. CADASTRAR OS RESULTADOS DE EXAME

Os resultados dos exames são persistidos utilizando o recurso de API do: TOTVS Saúde (para configuração e ativação das API's, clique aqui), sendo utilizando o verbo HTTP POST e enviado para o endereço http://DOMINIO:PORTA/api/hcg/v2/laboratory-exams-results/layout-totvs/results

Há uma distinção no formato de envio do json entre exames de imagem e laboratoriais. Naturalmente, exames de imagem não exigirão o preenchimento dos campos de resultado e valores de referência no exame, enquanto para exames laboratoriais há essa exigência.


Para exames de imagem, o formato do json deve ser respeitado conforme o exemplo abaixo:

Json Resultados de Exame de Imagem Layout TOTVS.json


Já para exames de laboratório, o formato do json deve ser respeitado da seguinte maneira:

Json Resultados de Exame Laboratorial Layout TOTVS.json


Explicação breve dos campos do json:

  • companyId: Código da Coligada do contexto.
  • resultId: Código Único do Resultado.
  • identification: Identificação da origem do Pedido de Exame
  • processingDate: Data de Processamento
  • resultOrigin: Origem do Resultado.
  • action: Tipo de ação que dever ser realizada (I) para Inclusão e (A) para Alteração.
  • patientId: Código do Paciente.
  • originPatientId: Código do Paciente no Sistema de Origem.
  • originServiceOrder: Número do Pedido na Ordem de Serviço.
  • attendanceId: Código do Atendimento.
  • originAttendanceId: Código do Atendimento de Origem.
  • base64Content: Conteúdo em Base64
  • exam: Informações do exame
  • results: Resultados do exame laboratorial, com campos especificando o nome do parâmetro, resultado, unidade de medida, urgência, possível comentário e valores de referência.
  • referenceValues: Valores de referência do exame laboratorial, com campos especificando o tipo do valor, o valor em si e o valor inicial e final caso haja.



Verificar o recebimento do resultado via API
Utilitários > Integração Monitor




 



  • Sem rótulos