API Consulta Saldo de Estoque por Depósito

Objetivo

Implementar uma API que devolva os saldos disponíveis do estoque para uma empresa e depósito específicos, listando o saldo de todos os produtos.

1. Obter token autenticação

Introdução

Qualquer webservice do projeto SispetroWeb exigirá um token de autenticação. Este token é gerado a partir deste webservice e será válido por 24 horas. Assim, recomendamos que o sistema consumidor dos webservices aqui descritos salvem o token armazenando também a data e hora em que ele foi gerado para que, quando chegar próximo de sua validade, seja obtido novo token.

Para mais informações, ver API Obtenção de Token

2. Saldo Estoque

Introdução

Este webservice tem por finalidade obter o saldo disponível de UMA empresa e UM depósito, listando até 15 produtos que controlem estoque, estejam ativos e sejam do tipo Combustível.

 

Para saber se produto controla ou não estoque, verifique se a opção Participa do Fechamento de estoque está marcada. Para mais informações, ver produtos

 

Além disso, o usuário logado deve ter permissão de acesso à empresa passada como parâmetro. Para mais informações, ver Painel Empresas Acesso (Usuários)

Endereço

<endereço do SispetroWeb>/posicao_estoque/get_estoque_escritural

Body

Será necessário enviar os dados abaixo para consultar as informações do depósito. Como parâmetros enviar:

Nome

Descritivo

Exemplo

Observações

Nome

Descritivo

Exemplo

Observações

codEmpresa

Código da empresa

1

Obrigatório

codDep

Código do Depósito

‘01’

Obrigatório

Headers

Nome

Descritivo

Exemplo

Observações

Nome

Descritivo

Exemplo

Observações

Authorization

Conteúdo do token obtido no passo de autenticação do usuário

eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjozMiwiY25waiI6IjAxLjgwNC4zNDUvMDAwMS02MCIsImV4cCI6MTUwMDA1MzYxN30.-ZvhWFYI8fyx66b3kZY1UVUrfaWUTioV3_M6K2wiPGM

 

Content-Type

tipo do formato de envio

application/json

 

Accept

tipo do formato de envio

application/json

 

Método

GET

Exemplo de chamada de WebService
curl -X GET -H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjo4NCwiY25waiI6IjAwLjAwMC4wMDAvMDAwMC0wMSIsImRlcG9zaXRvX3BhZHJhbyI6bnVsbCwiZXhwIjoxNzE3NzY3NDAyfQ.j_CChFzlGOMkfvQ1psP8gaxZiKQ8yiD1pJnyVeUWkg0' http://localhost/posicao_estoque/get_estoque_escritural -d '{"codEmpresa":1, "codDep":"1"}'
Retorno Bem Sucedido (exemplo: )

Serão retornados os saldos disponíveis (escritural) dos produtos. O status da resposta sempre será 200. 

Layout de matriz (um para cada produto) em formato JSON.

Chave

Conteudo

Pai

Chave

Conteudo

Pai

codEmpresa

Código da empresa

 

nomeUsualEmpresa

Nome Usual da Empresa

 

cidadeEmpresa

Cidade da Empresa

 

codDep

Código do Depósito

 

produtos

grupo

 

codProd

Código do produto

 produtos

classific

Código da Classificação do produto (até 13 caracteres)

 produtos

saldo

Saldo disponível escritural

 produtos

# exemplo retorno: { "codEmpresa": 1, "nomeUsualEmpresa": "BASE DEMO", "cidadeEmpresa": "SAO PAULO", "codDep": "1", "produtos": [ { "codProd": "00102", "classific": "01", "saldo": "31500.0", }, { "codProd": "00103", "classific": "01", "saldo": "43000.0", }, { "codProd": "02", "classific": "01", "saldo": "460050.0", }, { "codProd": "03", "classific": "01", "saldo": "-2034337.0", }, { "codProd": "04", "classific": "01", "saldo": "-1459636.0", }, { "codProd": "05", "classific": "01", "saldo": "2208374.0", }, { "codProd": "06", "classific": "01", "saldo": "-156500.0", }, { "codProd": "10", "classific": "01", "saldo": "-16000.0", }, { "codProd": "16", "classific": "01", "saldo": "-14000.0", } ] }%
Retorno Sem Sucesso

Será retornado um objeto JSON com o motivo da falha (normalmente um erro de autenticação caso o token tenha expirado ou seja inválido ou alguma regra de negócio não atendida. O status da resposta sempre será diferente de 200.

Caso o Token não esteja válido

{ "error": "Unauthorized", "status": 401 }

Caso o usuário não pode ter acesso à empresa escolhida

Iremos limitar o resultado a 15 produtos apenas por uma questão de performance.