Histórico da Página
...
- Via filtro complexo: http://localhost:8080/rest/totvshealthplans/v1/procedures?action=typeAhead&pageSize=7&customWhere=1&filter=(tableCode%20eq%20%2718%27%20or%20tableCode%20eq%20%2719%27%20or%20tableCode%20eq%20%2720%27%20or%20tableCode%20eq%20%2722%27%20or%20tableCode%20eq%20%2700%27%20or%20tableCode%20eq%20%2798%27)%20and%20%20procedureId%20startswith(%27CONSULTA%27)%20or%20procedureDescription%20startswith(%27CONSULTA%27)&procedureId=10101012
- Via ID (pathparam): http://localhost:8080/rest/totvshealthplans/v1/procedures/10101012
A API também tem dois recursos para retornar dentes e faces:
- Dentes (teethRegions): http://localhost:8080/rest/totvshealthplans/v1/procedures/2282000026/teethRegions?page=1&pageSize=7
- Faces (surfaces): http://localhost:8080/rest/totvshealthplans/v1/procedures/2282000026/teethRegions/12/surfaces?page=1&pageSize=10
02. CONFIGURAÇÕES INI
Para iniciar a instalação do processo, devemos configurar seu INI Protheus com a funcionalidade REST para habilitar o acesso as API´s. Documentos auxiliares:
...
Seguem os verbos disponíveis na API:
Verbo | Path |
---|
Descrição | ||
---|---|---|
GET | procedures | Busca por filtro complexo |
GET | procedures |
/{procedureId} | Busca por código de procedimento | |
GET | procedures/{procedureId}/teethRegions/ | Retorna os dentes de um procedimento de Odonto |
GET | procedures/{procedureId}/teethRegions/{teethRegionId}/surfaces | Retorna as faces de um dente de um procedimento de Odonto |
04. EXEMPLOS DE CHAMADA DA API
...
http://localhost:8080/rest/totvshealthplans/v1/procedures/10101012
Busca por dentes
Retorna os dentes de um procedimento de Odonto:
http://localhost:8080/rest/totvshealthplans/v1/procedures/2282000026/teethRegions?page=1&pageSize=7
Busca por faces
Retorna as faces de um dente de um procedimento de Odonto:
05. ATRIBUTOS DE RESPOSTA
Chamadas GET:
Atributo Campo Protheus Tipo manufacturer BTQ_FABRIC Caracter procedureId BTU_CODTAB + BTU_CDTERM ou BTQ_CODTAB + BTQ_CDTERM Caracter procedureCode BTU_CDTERM ou BTQ_CDTERM Caracter procedureType BR8_TPPROC Caracter inSerie BJE_TIPO = '2' (o registro BJE é vinculado ao BR8_CLASSE Boolean eventType BR8_TIPEVE Caracter procedureDescription BR8_DESCRI Caracter anvisaId Sempre vazio (mantido para manter a integridade já existente) Caracter tableCode BTU_CODTAB ou BTQ_CODTAB Caracter manufacturerReference BTQ_REFFAB Caracter Exemplo de resposta com evento encontrado (filtro complexo):
Bloco de código title Sucesso 202 { "items": [ { "manufacturer": "", "procedureId": "2210101012", "procedureCode": "10101012", "procedureType": "0", "inSerie": false, "eventType": "", "procedureDescription": "CONSULTA EM CONSULTORIO", "anvisaId": "", "tableCode": "22", "manufacturerReference": "" } ], "hasNext": false }
Exemplo de resposta com evento encontrado (busca por ID):
Bloco de código title Sucesso 202 { "manufacturer": "", "procedureId": "2210101012", "procedureCode": "10101012", "procedureType": "0", "inSerie": false, "eventType": "", "procedureDescription": "CONSULTA EM CONSULTORIO", "anvisaId": "", "tableCode": "22", "manufacturerReference": "" }
Em buscas por filtro complexo, a quantidade mínima de caracteres para realizar a busca é 3. Se forem informados menos que 3, será apresentada uma mensagem impeditiva:
Bloco de código title Sucesso 202 { "code": 200, "message": "Nao foram localizados resultados com os valores informados", "detailedMessage": "O servidor nao foi capaz de entender a solicitacao", "helpUrl": "", "details": [ { "code": "", "message": "", "detailedMessage": "", "helpUrl": "" } ] }
Em buscas por filtro complexo, a quando não for encontrado um evento com os parâmetros informados:
Bloco de código title Sucesso 202 { "items": [], "hasNext": false }
Em buscas por filtro complexo, a quando não for encontrado um evento com os parâmetros informados:
Bloco de código | ||
---|---|---|
| ||
{ "items": [ { "procedureCode": "82000026", "terminologyCode": "11", "description": "Incisivo Central Superior Direito", "hasSurfaces": "1", "permanent": true, "deciduous": false }, { "procedureCode": "82000026", "terminologyCode": "12", "description": "Incisivo Lateral Superior Direito", "hasSurfaces": "1", "permanent": true, "deciduous": false } ], "hasNext": false } |
06. PONTOS DE ENTRADA
Foram implementados os pontos de entrada PLRSTPR1 e PLRSTPR2 para auxiliarem na API.
...