Árvore de páginas

Versões comparadas

Chave

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

Tempo aproximado para leitura: 00 min

API para consulta de Tabelas de Preços do Varejo


01. DADOS GERAIS

Linha de Produto:Protheus
Segmento:Varejo
Módulo:SIGALOJA
Função:

LojxRestObj - Classe para tratamento de APIs em Rest do Varejo

RetailPriceListObj Classe para tratamento da API de Tabela de Preços do Varejo

RetailPriceListApi API para consulta de Preços dos Produtos do Varejo

02. SITUAÇÃO/REQUISITO

Existia a necessidade de efetuar consultas nas Tabelas de Preços sem acessar o Protheus.

Onde fosse retornados os cabeçalhos em uma consulta e os itens em outra.

03. SOLUÇÃO

Foi disponibilizado o serviço em Rest para possibilitar as consultas as Tabelas de Preços.

Neste serviço serão disponibilizados os verbos:

  • GET - /retailPriceList
    Retorna uma lista com o cabeçalho de todas as Tabelas de Preço;
    Exemplo:
    {
        "hasNext": false,
        "items": [
            {
                "branchId": "string",
                "companyInternalId": "string",
                "code": "string",
                "internalId": "string",
                "companyId": "string",
                "name": "string",
                "initialDate": "20180719",
                "finalDate": "20180719",
                "initiaHour": "14:07",
                "finalHour": "14:55",
                "activeTablePrice": "1"
            }
        ]
    }

  • GET - /retailPriceList/{internalId}
    Retorna o cabeçalho de uma única Tabela de Preço a partir do internalId (identificador único da Tabela de Preço);
    Exemplo:

        {

            "branchId": "string",
            "companyInternalId": "string",
            "code": "string",
            "internalId": "string",
            "companyId": "string",
            "name": "string",
            "initialDate": "20180719",
            "finalDate": "20180719",
            "initiaHour": "14:07",
            "finalHour": "14:55",
            "activeTablePrice": "1"
        }


  • GET- /retailPriceList/{internalId}/itensTablePrice
    Retorna todos os itens de uma única Tabela de Preço a partir do internalId (identificador único da Tabela de Preço);
    Exemplo:

{
    "hasNext": false,
    "items": [
        {
        "companyId": "string",
        "branchId": "string",
        "companyInternalId": "string",
        "code": "string",
        "internalId": "string",
        "itemList": "string",
        "itemCode": "string",
        "itemInternalId": "string",
        "minimumSalesPrice": 0,
        "discountValue": 0,
        "discountFactor": 0,
        "itemValidity": "20180719",
        "typePrice": "1",
        "activeItemPrice": "1"
         }
    ]
}


URL - http://{serverUrl}:{serverRestPort}/api/retail/v1/retailPriceList?{Order, Fields, Page, PageSize}

  • serverUrl = Endereço para acesso ao servidor Rest;
  • serverRestPort = Porta para acesso ao servidor Rest;
  • Order= Parâmetro para definir a ordenação do retorno.

Exemplo:  

http://{serverUrl}:{serverRestPort}/api/retail/v1/retailPriceList?ORDER=-code

Neste exemplo ira ordenar pela TAG "code" de forma decrescente.

  • Fields = Parâmetro de define as TAGs que serão retornadas.

Exemplo:

http://{serverUrl}:{serverRestPort}/api/retail/v1/retailPriceList?FIELDS=code,name,initialDate

Neste exemplo serão retornadas apenas as TAGS: code, name, initialDate.

  • Page - Define qual pagina será retornada

Exemplo:

http://{serverUrl}:{serverRestPort}/api/retail/v1/retailPriceList?PAGE=2

Neste exemplo será retornada a pagina 2.

  • PageSize - Quantidade de registros retornados pela pagina.

Exemplo:

http://{serverUrl}:{serverRestPort}/api/retail/v1/retailPriceList?PAGESIZE=3

Neste exemplo serão retornados 3 registros.


Observação

  • Caso não seja passado o parâmetro Page, seu valor será 1.
  • Caso não seja passado o parâmetro PageSize, seu valor será 10.


04. DEMAIS INFORMAÇÕES

Para maiores informações consulte https://api.totvs.com.br, pesquise por RetailPriceList.

05. ASSUNTOS RELACIONADOS

Duvidas em APIs ? 


Templatedocumentos


HTML
<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}
</style>