CONTEÚDO
- Visão Geral
- Exemplo de utilização
- Layout Genérico Web
- Get API
- Post API
- Tela API PLIncBenModel
- Outras Ações / Ações relacionadas
- Outras Ações / Ações relacionadas
- Tela API PLIncBenModel
- Principais Campos e Parâmetros
- Principais Campos e Parâmetros
- Tabelas utilizadas
01. VISÃO GERAL
Este documento tem como objetivo demonstrar a utilização da API PLIncAutoBenModel, onde será realizada a solicitação de um novo protocolo de inclusão de titulares e dependentes.
Os protocolos serão gerados na rotina de Analise de Beneficiários (PLSA977AB) sendo aprovados automaticamente pelo sistema, ou seja, será incluído um novo Grupo/Familiar para os beneficiários ou inclusão de beneficiários em uma família já existente.
A API utilizará o padrão REST.
02. EXEMPLO DE UTILIZAÇÃO
Foi desenvolvido o modelo de dados (ModelDef) para incluir beneficiários, e através da classe FWRestModel foi feita a publicação do modelo para que seja consumido via API padrão REST.
Para retornar a lista de registros referente ao modelo de dados deve-se efetuar um GET sem informar a <PK>. Os registros listados terão filtrados pelas filiais que o usuário tem acesso (isso se o campo filial existir.)
Para inserir um registro deve-se efetuar um POST sem informar a <PK> e enviar no body o conteúdo a ser inserido.
Além disso, a API poderá receber alguns filtros (QueryStrings) no headers da requisição, como:
Key | Descrição |
---|---|
COUNT | Quantidade de registro que devem ser retornados (padrão: 10) |
STARTINDEX | Indica a partir que qual index deverá ser retornado (padrão: 1) |
FILTER | Filtro que será aplicado no método SetFilter() |
FIELDDETAIL | Habilita mostrar mais informações nos campos do modelo (padrão: 10) |
FIELDVIRTUAL | Habilita o retorno de campos virtuais (padrão: false) |
FIELDEMPTY | Habilita o retorno de campos sem valores (padrão: false) |
FIRSTLEVEL | Habilita o retorno dos sub modelos (padrão: true) |
FIELDS | Indica os campos a serem filtrados no retorno do modelo, incluindo os sub modelos, caso não informado todos os campos serão retornados |
DEBUG | Valor booleano para habilitar o modo debug (padrão: false) |
CACHE | Indica se sera feito cache do total de registros por alias, refere-se ao valor do total no retorno (padrão: true) |
INTERNALID | Indica se deve retornar o ID(Recno) como informação complementar das linhas do GRID (padrão: false) |
Exemplo de utilização: Key igual FILTER e value igual BBA_CODSEQ=000770, será retornado somente o protocolo com o código sequencial com o numero 000770.
FWRestModel
Para mais informações de como utilizar esse modelo de API, acessem a documentação da classe FWRestModel.
A autenticação da API é realizado pelo headers Authorization, Type Basic Auth, Usuário e Senha do Protheus.
LAYOUT GENÉRICO WEB
Algumas regras na API poderão ser adicionadas pelo Layout genérico Web, o mesmo deverá ser adicionada no MV_PLLAYIN. Por exemplo: MV_PLLAYIN = PPLINCBEN, a api irá utilizar as configurações contidas nessa layout genérico.
Pelo Layout o sistema irá utilizar as seguintes regras no modelo de dados para inclusão de beneficiários:
- Campos que não permite edição: B91_EDITAR igual a .F.
- Inicializador padrão dos campos: B91_INIPAD com expressão em advpl para inicializar o campo.
- Validação dos campos: B91_VALID com expressão em advpl para validar o campo.
- Campos obrigatórios: B91_OBRIGA igual a .T.
Caso o parâmetro esteja em branco, o sistema irá seguir com as regra do padrão.
Importante
Abaixo será apresentado um exemplo de cada método da API PLIncAutoBenModel.
GET API
Endpoint
Url | Método | Header Content-Type | Descrição |
---|---|---|---|
https://<url>:<porta>/rest/fwmodel/PLIncAutoBenModel/[pk] | GET | application/json | Retorna os protocolo da analise de beneficiários, para retornar somente um protocolo deverá ser informado a pk do mesmo. |
Parâmetro <PK> é opcional, sendo usado pra retornar os detalhes de um protocolo.
Parâmetros de Entrada do Método
Parâmetro | Obrigatório | Tipo | Descrição |
---|---|---|---|
pk | Não | Caracter | Valor da chave primaria do alias do modelo em encodado em base64, esse valor será obtido ao consultar todos os protocolos. |
Exemplo
POST API
Endpoint
Url | Método | Header Content-Type | Descrição |
---|---|---|---|
https://<url>:<porta>/rest/fwmodel/PLIncAutoBenModel/ | POST | application/json | Realiza a inclusão de um novo protocolo na analise de beneficiários, com a aprovação automática dos beneficiários para o Grupo/Familiar. |
Parâmetros de Entrada do Método
Parâmetro (fields) | Obrigatório | Tipo | Descrição |
---|---|---|---|
BBA_CODINT | Sim | Caracter | Código da Operadora (BA0) do Beneficiário |
BBA_CODEMP | Sim | Caracter | Código da Empresa (BG9) do Beneficiário |
BBA_CONEMP | Não | Caracter | Código do Contrato (BT5) do Beneficiário, Obrigatório em Empresa Jurídica. |
BBA_VERCON | Não | Caracter | Versão do Contrato do Beneficiário, Obrigatório em Empresa Jurídica. |
BBA_SUBCON | Não | Caracter | Código do SubContrato (BQC) do Beneficiário, Obrigatório em Empresa Jurídica. |
BBA_VERSUB | Não | Caracter | Versão do SubContrato do Beneficiário, Obrigatório em Empresa Jurídica. |
BBA_EMPBEN | Sim | Caracter | Nome do Beneficiário Titular. |
BBA_CODPRO | Sim | Caracter | Código do Plano do Beneficiário Titular. |
BBA_VERSAO | Sim | Caracter | Versão do Plano do Beneficiário Titular |
BBA_CPFTIT | Sim | Caracter | CPF do Beneficiário Titular. |
BBA_NROPRO | Não | Caracter | Numero do Protocolo, caso não seja informado o sistema irá gerar automaticamente um numero. |
BBA_MATRIC | Não | Caracter | Matricula do titular ou responsável familiar, esse campo é utilizado quando for incluir um beneficiário em uma família já existente, caso seja uma nova família, o mesmo não deverá ser preenchido. |
BBA_CODCLI | Não | Caracter | Código referente ao registro do Cadastro de Cliente (SA1). |
BBA_LOJA | Não | Caracter | Código da loja referente ao registro do Cadastro de Cliente (SA1). |
B2N_NOMUSR | Sim | Caracter | Nome do Beneficiário |
B2N_DATNAS | Sim | Caracter | Data de Nascimento do Beneficiário |
B2N_GRAUPA | Sim | Caracter | Código do Grau de parentesco (BRP) |
B2N_ESTCIV | Sim | Caracter | Código do estado civil com base no SX5 tabela 33 |
B2N_SEXO | Sim | Caracter | Sexo do Beneficiário, sendo 1 para Masculino e 2 para Feminino. |
B2N_CPFUSR | Não | Caracter | CPF do Beneficiário, Sendo obrigatório para beneficiário titular (independentemente de idade) ou beneficiário dependente com idade igual ou superior a 18 anos. |
B2N_DRGUSR | Não | Caracter | RG do Beneficiário. |
B2N_ORGEM | Não | Caracter | Org. Emissor. |
B2N_RGEST | Não | Caracter | Estado Emissor. |
B2N_NRCRNA | Não | Caracter | Numero da Carteira nacional de saúde. |
B2N_CEPUSR | Não | Caracter | CEP do Beneficiário (Tabela BC9). |
B2N_ENDERE | Não | Caracter | Endereço do Beneficiário. |
B2N_NR_END | Não | Caracter | Numero do Endereço do Beneficiário. |
B2N_COMEND | Não | Caracter | Complemento do Endereço do Beneficiário. |
B2N_UNIVER | Não | Caracter | Informa se o Beneficiário é Universitário. Sendo 1 pra Sim e 0 pra Não. |
B2N_BAIRRO | Não | Caracter | Bairro do Beneficiário |
B2N_EMAIL | Não | Caracter | E-mail do Beneficiário. |
B2N_CODMUN | Não | Caracter | Código do Município (Tabela BID). |
B2N_INVALI | Não | Caracter | Invalidez?, sendo 1 pra sim e 0 pra não; |
B2N_MUNICI | Não | Caracter | Descrição do Município. |
B2N_ESTADO | Não | Caracter | Estado. |
B2N_TELEFO | Não | Caracter | Telefone do Beneficiário |
B2N_DDD | Não | Caracter | DDD do Telefone. |
B2N_MAE | Não | Caracter | Nome Mãe do Beneficiário (Será obrigatório caso se o campo BQC_INFANS esteja igual a "1 - Sim"). |
B2N_PAI | Não | Caracter | Nome do Pai do Beneficiário. |
B2N_COMUNI | Não | Caracter | Preferência de Comunicação: 0 para E-mail, 1 para SMS e 2 para Ambos |
B2N_BANCO | Não | Caracter | Código do Banco (Tabela SA6). |
B2N_AGENC | Não | Caracter | Agência correspondente ao Banco. |
B2N_CONTA | Não | Caracter | Numero da Conta correspondente a Agência. |
B2N_DATADT | Não | Caracter | Data de adoção do Beneficiário |
B2N_CODPRO | Não | Caracter | Codigo do Plano do Beneficiário, caso não seja informado o sistema irá utilizar o do títular (BBA_CODPRO). |
DIRECTORY | Não | Caracter | Diretório http do arquivo para anexar ao protocolo de inclusão. |
FILENAME | Não | Caracter | Nome para ao arquivo. |
Os demais parâmetros do json, segue o mesmo padrão para toda requisição de POST.
Exemplo
Inclusão de uma família completa, com titular e dependente:
Importante: Quando realizado a inclusão de um titular, os dados dele na B2N deverá ser os mesmo da BBA (BBA_CPFTIT, BBA_EMPBEN, BBA_CODPRO).
Ao solicitar um POST com sucesso, o mesmo irá retornar o protocolo como se tivesse realizado um GET com a pk correspondente ao protocolo.
03. TELA API PLINCBENMODEL
Outras Ações / Ações relacionadas
Ação | Descrição |
---|---|
Não se aplica | Não se aplica. |
04. TELA API PLINCBENMODEL
Principais Campos e Parâmetros
Campo | Descrição |
---|---|
MV_PLLAYIN | Define Layout Genérico Web que estará vinculado a API de inclusão de Beneficiário. |
BBA_MATRIC | Matricula do Titular ou responsável familiar quando for realizada a inclusão de dependentes na família, quando realizada a inclusão de uma nova família essa campo não deverá ser preenchido |
MV_PLURDOW | Diretório web para salvar os arquivos recebidos via API do produto TOTVS Saúde Planos. |
05. TABELAS UTILIZADAS
- BBA - Cabeçalho Solic. Beneficiarios
- B2N - Inclusão de Beneficiários
- BA1 - Cadastro de Beneficiários
- BA3 - Família
- BRP - Graus de Parentesco
- SA6 - Bancos
- BC9 - CEPs
- BID - Municípios
- B90 - Layout Pag. Web
- B91 - Campos Layout
- ACB - Bancos de Conhecimentos
- AC9 - Relação de Objetos x Entidades
- BG9 - Grupos Empresas
- BQC - Subcontrato
- BT6 - Empresa Contrato Produto
- BI3 - Produtos de Saúde