Versões comparadas

Chave

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

...

e
View file
nameentidade.json

Objetivo

Este webservice tem por finalidade obter os dados para venda a UM determinado cliente/produto.

Uso Geral

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

Métodos do setor de Vendas

2. Dados de venda de cliente

Endereço

<endereço do SispetroWeb>/entidade/get_dados_venda_api

Parâmetros

Será necessário enviar um header com o token e no corpo do webservice (body) os dados relativos à venda para busca de preços.

...

Item

Chave

Conteúdo

Obrigatório

1

codEnt

Código da Entidade que se deseja os dados

Sim

2

codEmpresa

Código da Empresa onde ocorrerá a venda

Sim

3

dtPrevFat

Data prevista para Faturamento (devido vigência de preços). Formato: dd/mm/yyyy

Não. Se não informada será considerada a data atual.

4

retiraEntrega

E ou R para indicar se é retira ou entrega

Não. Se não informado será considerado como Retira.

5

codDep

Código do Depósito onde ocorrerá a venda.

Não. Se não informado será considerado o depósito padrão de vendas da empresa.

6

codTransp

Código do Motorista

Não. Se não informado será considerado o Motorista vinculado ao cliente.

7

seqFrota

Sequencial do frota principal

Não. Se não informado será considerado o Frota vinculado ao cliente.

8

codProd

Código do produto

Opcional, se passar, calcula somente para o produto. Caso contrário, calcula para todos os produtos de venda do cliente.

9

codPg

Código das condições de pagamento.

Opcional, se passar, calcula para essa condição de pagamento, caso contrário, calcula para a condição de pagamento padrão do cliente.

Método

GET

Exemplo de envio:

View file
namedados_preco.json
. Exemplo de retorno:
View file
nameretorno_dados_venda.json

Exemplo de chamada de WebService
Bloco de código
curl --location 'http://localhost/entidade/get_dados_venda_api
-d @dados_preco.json
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjo4NCwiY25waiI6IjAwLjAwMC4wMDAvMDAwMC0wMSIsImRlcG9zaXRvX3BhZHJhbyI6bnVsbCwiZXhwIjoxNzE3NzY3NDAyfQ.j_CChFzlGOMkfvQ1psP8gaxZiKQ8yiD1pJnyVeUWkg0'
Retorno Bem Sucedido

Serão retornados todos os dados necessários para fazer uma venda para o cliente e produto informados. O status da resposta sempre será 200.

Chave

Conteudo

Pai

CodEnt

Código do Cliente

CodEmpresa

Código da empresa

CodDep

Código do depósito considerado

DtPrevFat

Data prevista do faturamento considerada

RetiraEntrega

Indica se foi considerado Retira ou Entrega

CodTransp

Motorista para o qual foi considerado o frete

SeqFrota

Frota para o qual foi considerado o frete

CodPgCli

Código da Condição de Pagamento do Cliente

PrazoCli

Prazo da Condição de Pagamento do Cliente

precos

list

CodProd

Código do Produto

precos

CodPgProd

Código da Condição de Pagamento considerada para o produto

precos

Preco

Preço sugestão (já somado com Custo Financeiro)

precos

PrecoMinimo

Preço mínimo (já somado com Custo Financeiro)

precos

PrecoMaximo

Preço mínimo (já somado com Custo Financeiro)

precos

PrecoMinimoAvista

Preço mínimo a vista (conforme tabela de preços)

precos

CustoFinancReal

Custo Financeiro calculado a partir da Condições de Pagamento ou do cliente

precos

Seguro_Aliquota

Alíquota do Seguro (será sempre calculado independente do Pedido ser segurado)

precos

Seguro_ValUnitario

Valor unitário do Seguro (será sempre calculado independente do Pedido ser segurado)

precos

FreteUnitPadrao

Frete unitário padrão

precos

Custo

Custo de Vendas total desse item.

precos

endereco_entrega

grupo

Endereco

Endereço de Entrega 

endereco_entrega

Numero

Número do Endereço de Entrega 

endereco_entrega

Complemento

Complemento do Endereço de Entrega

endereco_entrega

Bairro

Bairro da Entrega

endereco_entrega

CodigoDNC

Código IBGE do Município de Entrega 

endereco_entrega

Municipio

Descrição do Município de Entrega 

endereco_entrega

UF

UF de Entrega

endereco_entrega

CEP

CEP da Entrega 

endereco_entrega

CodPais

Código do País

endereco_entrega

Latitude

Latitude

endereco_entrega

Longitude

Longitude

endereco_entrega

Fone

Telefone

endereco_entrega

CNPJ

CNPJ do Endereço

endereco_entrega

IE

IE do Endereço

endereco_entrega

RzSocial

Razão Social do Endereço

endereco_entrega

Exemplo de retorno de WebService
Bloco de código
 {
    "dadosVenda": [
        {
            "CodPgProd": "998",
            "CodProd": "01",
            "Custo": 1.843334,
            "CustoFinancReal": 0.2,
            "EnderecoEntrega": "fgdfgfd,  -  - / - ",
            "FreteUnitReal": 0,
            "Preco": 1.91,
            "PrecoMaximo": -1,
            "PrecoMinimo": -1,
            "Produto": "GASOLINA C",
            "Seguro_Aliquota": 10,
            "Seguro_ValorUnitario": 0.191
        }
    ],
    "CodEnt": 1,
    "CodEmpresa": 1,
    "CodDep": "1",
    "DtPrevFat": "2024-08-21",
    "RetiraEntrega": "R",
    "CodTransp": "00032",
    "SeqFrota": 772,
    "CodPgCli": "998",
    "PrazoCli": 10,
    "endereco_entrega": {
        "Endereco": "fgdfgfd",
        "Numero": null,
        "Complemento": null,
        "Bairro": null,
        "CodigoDNC": null,
        "Municipio": null,
        "UF": null,
        "CEP": null,
        "CodPais": null,
        "Latitude": null,
        "Longitude": null,
        "Fone": null,
        "CNPJ": "12764122000133",
        "IE": null,
        "RzSocial": "DEMO DISTRIBUIDORA LTDA"
    }
}
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.

Bloco de código
{
    "error": "Unauthorized",
    "status": 401
}

3. Pedidos de Venda alterados

Introdução

Este webservice tem por finalidade obter os pedidos a partir de uma Data e hora.

Endereço

<endereço do SispetroWeb>/pedido_venda/pedidos_alterados

Parâmetros

Será necessário enviar um header com o token. Como parâmetros enviar:

...

Nome

...

Descritivo

...

Exemplo

...

Observações

...

data_hora_inicial

...

Data e hora inicial (Formato: yyyy-mm-dd hh:mm)

...

“2023-10-23 13:37”

...

Obrigatório

Headers

...

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/pedidos_alterados\?data_hora_inicial\=2024-01-01%2010:00
Retorno Bem Sucedido

Serão retornados todos os dados relativos aos pedidos alterados a partir da data/hora informada. O status da resposta sempre será 200. 

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

...

Item

...

Chave

...

Conteudo

...

Pai

...

1

...

IDPedido

...

Código da entidade alterada ou excluída

...

2

...

FlagOperacao

...

I = inclusão, U = alteração ou E = exclusão

...

3

...

pedido_venda

...

mesmo layout de retorno de um pedido https://futura.atlassian.net/wiki/spaces/ESP/pages/4691329025/API+para+Vendas#1.-Inclus%C3%A3o-Pedido-de-Venda

Nota

Se o flagOperação for igual a 'E' (exclusão), não retorna a estrutura pedido_venda.

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.

Bloco de código
{
    "error": "Unauthorized",
    "status": 401
}

4. Cancelamento do Pedido de Venda

Introdução

Este webservice tem por finalidade executar o cancelamento de um pedido de venda.

Endereço

<endereço do SispetroWeb>/pedido_venda/<ID do pedido>

Parâmetros

Será necessário enviar um header com o token. Como parâmetros enviar:

...

Nome

...

Descritivo

...

Exemplo

...

Observações

...

idPedido

...

ID do pedido que se deseja cancelar.

...

12500

...

Obrigatório

...

versao_retorno_api

...

0=(padrão) layout com registro do pedido, 1=layout estendido conforme https://futura.atlassian.net/wiki/spaces/ESP/pages/4691329025/API+para+Vendas#1.-Inclus%C3%A3o-Pedido-de-Venda

...

1

Headers

...

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

DELETE

Exemplo de chamada de WebService
Bloco de código
 curl  
-H 'Content-Type: application/json' 
-H 'Accept: application/json' 
-H 'Authorization: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZF91c3VhcmlvIjo4NCwiY25waiI6IjAwLjAwMC4wMDAvMDAwMC0wMSIsImRlcG9zaXRvX3BhZHJhbyI6bnVsbCwiZXhwIjoxNzE3NzY3NDAyfQ.j_CChFzlGOMkfvQ1psP8gaxZiKQ8yiD1pJnyVeUWkg0' 
-X DELETE http://localhost:3000/pedido_venda/55631?versao_retorno_api=1
Retorno Bem Sucedido

Será retornada todos os dados relativos ao Pedido de Venda cancelado com sucesso conforme layout do retorno de https://futura.atlassian.net/wiki/spaces/ESP/pages/4691329025/API+para+Vendas#1.-Inclus%C3%A3o-Pedido-de-Venda . O status da resposta sempre será 200. 

Retorno Sem Sucesso

Será retornado um objeto JSON com o motivo da não alteração (poderá ser 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.

Bloco de código
{"error":"Pedido já tem nota fiscal vinculada","status":422}