Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

pi-metadata-v1

Requisito

Nenhum.

Descrição

Repassa o parâmetro do tipo de evento recebido pela API de comunicação para a API de documentos (hubapi/apiDocuments) chamando o método pi-metadata-v1. Existem duas apis de comunicação:

  • cdp/api/v1/supplyDocuments  : api que envia os eventos "list" ou "edit".
  • cdp/api/v1/supplyDocumentsView: api que envia o evento "view".

Retorna o metadados com os campos e ações ativos referentes a tela de Listagem (list), Consulta (view) ou Edição (edit), dependendo de qual tipo foi enviado pela requisição, para a montagem dinâmica da tela com as informações vindas do backend.

Parâmetros

Tipo

Input/Output

Descrição

oInput

JsonObject

INPUT

Parâmetros para a busca de metadados:

pathParams:  Informar: metadata.

queryParams →  type: Utilizando este atributo com uma das opções abaixo permite retornar as informações de:

  • list: Metadados da tela de listagem.
  • edit: Metadados da tela de inclusão do arquivo.


Bloco de código
titleExemplo
{
    "queryParams": {
    "type": "list"
  },
    "pathParams": [
       "metadata"
    ],
}
cEventCharacterINPUTIdentifica qual o tipo de evento vindo do queryParams para a busca do metadado correto.
cVersionCharacterINPUTIdentifica a versão da API.
oOutputJsonObjectOUTPUT

Retorno contendo o metadados com campos e ações conforme parâmetros recebidos:


  • Metadados List:


Bloco de código
titleList
  {
    "keepfilters": false,
    "literals": {},
    "validateFields": [],
    "title": "Anexos de documentos",
    "fields": [
        {
            "visible": false,
            "property": "documentId",
            "label": "Código",
            "type": "number",
            "key": true,
            "order": 1
        },
        {
            "property": "processTypeDescription",
            "width": "15%",
            "label": "Tipo Processo",
            "type": "string",
            "order": 2
        },
        {
            "property": "processKey",
            "width": "15%",
            "label": "Chave Processo",
            "type": "string",
            "order": 3
        },
        {
            "property": "documentName",
            "width": "20%",
            "label": "Documento",
            "type": "string",
            "order": 4
        },
        {
            "property": "documentSize",
            "width": "5%",
            "label": "Tamanho",
            "type": "string",
            "order": 5
        },
        {
            "property": "documentDescription",
            "width": "25%",
            "label": "Descrição",
            "type": "string",
            "order": 6
        },
		{
		 	"property": "creationUser",
            "width": "5%",
            "label": "Criador",
            "type": "string",
            "order": 7,
			"visible": false,
			"allowColumnsManager": true			
		},
	 	{
		 	"property": "creationDateTime",
            "width": "25%",
            "label": "Data",
            "type": "dateTime",
            "order": 9,
      	    "visible": false,
			"allowColumnsManager": true	    
		}
     ],
    	"tableCustomActions": [],
    	"actions": {
        "new": "/new",
        "removeAll": true,
        "remove": true
    },
    "pageCustomActions": []
}                                                                                 

Descrição dos campos:

  • keepFilters: Mantém na modal de Busca Avançada os valores preenchidos do último filtro realizado pelo usuário.
  • literals: Objeto com as literais usadas.
  • validateFields: Lista que define os campos que irão disparar o validate do form.
  • title: Título da página.
  • fields: São os campos a serem apresentados na tabela, sendo eles: 
    • property: Nome de referência do campo.
    • label: Rótulo do campo exibido.
    • type: Tipo do valor campo.
    • key: Valor lógico que indica se o campo é chave.
    • order: Informa a ordem de exibição do campo.
    • visible: Indica se o campo será visível.
    • width: Tamanho do campo.
    • allowColumnsManager: Campo estará disponível no gerenciador de colunas.
  • tableCustomActions: Lista de ações customizadas da tabela que serão incorporadas às ações informadas através da propriedade actions.
  • actions:Ações que o usuário poderá executar na página através de botões:
    • new: Rota ou função para criar um novo recurso, caso seja preenchida habilita a ação de "Novo" na tela de listagem para criação de um novo anexo.
    • remove: Habilita a ação de exclusão na tabela.
    • removeAll: Habilita a ação de exclusão em lote na página.
  • pageCustomActions: Lista de ações customizadas da página que serão incorporadas às ações informadas através da propriedade actions. Essas ações ficam localizadas na parte superior da página em botões com ações. Ex: "Novo", "Excluir".


  • Metadados Edit:


Bloco de código
titleEdit
  {
    "defaultFields": [
        {
            "gridColumns": 4,
            "divider": "Processo",
            "label": "Tipo Processo",
            "property": "processType",
            "disabled": true,
            "options": [
                {
                    "value": 1,
                    "label": "Ordem de Compra"
                }
            ]
        },
        {
            "gridColumns": 4,
            "label": "Chave",
            "property": "processKey",
            "disabled": true
        },
        {
            "autoUpload": true,
            "gridColumns": 4,
            "divider": "Anexar Documento",
            "label": "Selecione o documento",
            "property": "documentUpload",
            "required": true,
            "type": "upload"
        },
        {
            "maxLength": 200,
            "gridColumns": 8,
            "label": "Descrição",
            "property": "documentDescription",
            "rows": 4
        }
    ],
    "title": "Novo anexo",
    "breadcrumb": {
        "items": [
            {
                "link": "/",
                "label": "Anexos de documentos"
            },
            {
                "link": "/new",
                "label": "Novo anexo"
            }
        ]
    }
}                                                                              


Descrição dos campos:
  • defaultFields: Armazena as informações dos campos padrões do formulários: 
    • gridColumns: Tamanho de exibição do campo em telas.
    • divider: Exibirá um divisor acima, utilizando o seu conteúdo como título.
    • label: Rótulo do campo exibido.
    • property: Nome de referência do campo.
    • disabled: Função que deve retornar um booleano para habilitar ou desabilitar a ação para o registro selecionado.
    • options: Lista de opções que serão exibidas em um componente, podendo selecionar uma opção.
      • value: Valor que será usado como referência para exibição do conteúdo na coluna, representa o tipo de processo.
      • label: Rótulo do campo exibido, referenciando o nome do tipo de processo.
  • autoUpload: Define se o envio do arquivo será automático ao selecionar o mesmo.
  • required: Indica que o campo será obrigatório.
  • type: Tipo do valor do campo.
  • maxLength: Tamanho máximo de caracteres.
  • rows: Quantidade de linhas exibidas no campo "Descrição".
  • title: Título da página.
  • breadcrumb: Objeto com propriedades do breadcrumb, componente que gera uma estrutura de navegação que apresenta ao usuário a localização da URL atual, exibindo as antecessoras conforme é realizado a navegação na aplicação:
    • items: Lista de itens do breadcrumb:
      • link: Url do item.
      • label: Rótulo do item.


  • Metadados View:



Bloco de código
titleView
{
    "keepfilters": false,
    "literals": {},
    "validateFields": [],
    "title": "Consulta de Anexos de documentosDocumentos",
    "fields": [
        {
            "visible": false,
            "property": "documentId",
            "label": "Código",
            "type": "number",
            "key": true,
            "order": 1
        },
        {
            "property": "processTypeDescription",
            "width": "15%",
            "label": "Tipo Processo",
            "type": "string",
            "order": 2
        },
        {
            "property": "processKey",
            "width": "15%",
            "label": "Chave Processo",
            "type": "string",
            "order": 3
        },
        {
            "property": "documentName",
            "width": "20%",
            "label": "Documento",
            "type": "string",
            "order": 4
        },
        {
            "property": "documentSize",
            "width": "10%",
            "label": "Tamanho",
            "type": "string",
            "order": 5
        },
        {
            "property": "documentDescription",
            "width": "35%",
            "label": "Descrição",
            "type": "string",
            "order": 6
        },
        {
            "visible": false,
            "allowColumnsManager": true,
            "property": "creationUser",
            "width": "5%",
            "label": "Criador",
            "type": "string",
            "order": 7
        },
        {
            "visible": false,
            "property": "creationUserName",
            "width": "20%",
            "label": "Nome Criador",
            "type": "string",
            "order": 8
        },
        {
            "visible": false,
            "allowColumnsManager": true,
            "property": "creationDatetime",
            "width": "15%",
            "label": "Data",
            "type": "dateTime",
            "order": 9
        }
    ],
    "tableCustomActions": [],
    "pageCustomActions": []
}

Possui os mesmos campos de retorno do metadados "List", sendo que a diferença é que se trata de uma tela de Consulta apenas, então, neste caso, não estão disponíveis as ações ("actions" no json), ou seja, os botões "Novo" e "Excluir" não são carregados na tela.

A requisição é igual ao do metadados List (passando no queryparams o type = list) da api supplyDocuments, apenas alterando a api de origem que é a supplyDocumentsView. No método pi-metadata da supplyDocumentsView é feito o tratamento onde, ao receber o tipo "list" ele envia o tipo "view" para a apiDocuments fazer o tratamento e omitir os campos referente as ações da tela e exibe seu respectivo título da página.

RowErrorsTemp-tableOUTPUTInformações sobre os erros ocorridos durante o processo de busca dos dados.

Retorno

Retorna informações do metadados ou erros ocorridos durante a busca

...

pi-download-v1

Requisito

Nenhum.

Descrição

Repassa os parâmetros recebidos pela API de comunicação (cdp/api/v1/supplyDocuments) para a API de documentos (hubapi/apiDocuments) chamando o método pi-download-v1. Também realiza validações de restrição dos usuários em relação a menu e processosExistem duas apis de comunicação:

  • cdp/api/v1/supplyDocuments  : api de comunicação para a tela de anexos com as opções de criar/excluir documentos.
  • cdp/api/v1/supplyDocumentsView: api de comunicação para a tela de anexos de consulta apenas, onde somente é permitido o download dos documentos.

Retorna informações do arquivo em que o download está sendo efetuado.

Parâmetros

Tipo

Input/Output

Descrição

oInput

JsonObject

INPUT

Parâmetros para download do anexo:

pathParams:  Informar: download e o documentId do documento.


Bloco de código
titleExemplo
{
    "pathParams": [
    "download",
    "402"
  ],
}
oOutputJsonObjectOUTPUT

Retorno das informações do arquivo que está sendo realizado o download:


Bloco de código
titleExemplo
{
    "headers": {
        "Content-Type": "application/octet-stream"
    },
    "payload": {
        "file": {
            "FN_File": "Evidencia_COD_DMANSUPIMPA2-605.docx",
            "DN_File": "UEsDBBQABgAIAAAAIQBkdsOlw57DhwEAAMOKCQAAEwAIAltD..."
        }
    }
}

Descrição dos campos:

  • File : contém as informações do anexo
    • FN_File: Nome do arquivo com extensão, vindo da tabela arquivo_docto.
    • DN_File: Conteúdo do arquivo em base64.  


RowErrorsTemp-tableOUTPUTInformações sobre os erros ocorridos durante a busca dos códigos dos anexos.

Retorno

Retorna informações de nome e conteúdo do anexo que está sendo feito download ou erros ocorridos durante o processo.

...