Versão antiga do Jira | ||||||
---|---|---|---|---|---|---|
|
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 (limitados a 15).
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.
Nota |
---|
Para saber se produto controla ou não estoque, |
Informações |
---|
Somente os primeiros 15 produtos ativos (ordenados por código) serão retornados.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 um header com o tokenos dados abaixo para consultar as informações do depósito. Como parâmetros enviar:
...
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
Bloco de código |
---|
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:
View file | ||
---|---|---|
|
Serão retornados os saldos disponíveis de até 15 produtos (que controlam estoque)(escritural) dos produtos. O status da resposta sempre será 200.
...
Bloco de código |
---|
# exemplo retorno: { "codEmpresa": 1, "nomeUsualEmpresa": "BASE DEMO", "cidadeEmpresa": "SAO PAULO", "codDep": "1", "produtos": [ { "codProd": "00102", "classific": "01", "saldo": "-31500.0", "CodProd": null }, { "codProd": "00103", "classific": "01", "saldo": "-43000.0", "CodProd": null }, { "codProd": "02", "classific": "01", "saldo": "-460050.0", "CodProd": null }, { "codProd": "03", "classific": "01", "saldo": "-2034337.0", "CodProd": null }, { "codProd": "04", "classific": "01", "saldo": "-1459636.0", "CodProd": null }, { "codProd": "05", "classific": "01", "saldo": "2208374.0", "CodProd": null }, { "codProd": "06", "classific": "01", "saldo": "-156500.0", "CodProd": null }, { "codProd": "10", "classific": "01", "saldo": "-16000.0", "CodProd": null }, { "codProd": "16", "classific": "01", "saldo": "-14000.0", "CodProd": null } ] }% |
Retorno Sem Sucesso
Será retornado um objeto JSON com o motivo da falha (normalmente 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
Bloco de código |
---|
{ "error": "Unauthorized", "status": 401 } |
Caso o usuário não pode ter acesso à empresa escolhida
Bloco de código |
---|
{
"error": "Empresa inválida",
"status": 400
} |
Solução
...
Nota |
---|
Iremos limitar artificialmente o resultado a 15 produtos apenas por uma questão de performance somente. |