1. Exemplo do json:
{ "codigo": 1, "codigo_semente_categoria": 1, "codigo_unidade_medida": 1, "codigo_semente_cultivar": 1, "codigo_cultura_padrao": 1, "codigo_equipamento_aplicacao": 1, "codigo_produto_grupo": 1, "codigo_produto_marca": 1, "codigo_peneira": 1, "descricao": "Descrição do produto", "ativo": "S", "desconto_maximo": 10.5, "quantidade_multiplo": 2.0, "registro_ma": "12345678", "peso_liquido": 1.5, "peso_bruto": 2.0, "aceita_saldo_negativo": "N", "controla_semente": "S", "kit": "N", "codigo_externo": "1", "produto_embalagem": [ { "id": 1, "descricao": "Embalagem 1" }, { "id": 2, "descricao": "Embalagem 2" } ], "produto_filial": [ { "id": 1, "nome": "Filial 1" }, { "id": 2, "nome": "Filial 2" } ] }
Campos:
codigo: Código do registro no banco de dados do CRM
codigo_semente_categoria: Código da categoria de semente
codigo_unidade_medida: Código da unidade de medida
codigo_semente_cultivar: Código da cultivar de semente
codigo_cultura_padrao: Código da cultura padrão do produto
codigo_equipamento_aplicacao: Código do equipamento de aplicação do produto
codigo_produto_grupo: Código do grupo do produto;
codigo_produto_marca: Código da marca do produto
codigo_peneira: Código da peneira do produto
descricao: Descrição do produto;
ativo: Campo para indicar se o produto está ativo (S) ou inativo (N);
desconto_maximo: Desconto máximo que o produto pode ter no pedido;
quantidade_multiplo: Quantidade multipla do produto
registro_ma: Registro do ministério da agricultura
peso_liquido: Peso liquido do produto
peso_bruto: Peso bruto do produto
aceita_saldo_negativo: Define se aceita emitir um pedido para o produto quando o mesmo não possui saldo
controla_semente: Define se o item controla dados de semente para o pedido
kit: Define se o item faz parte de um kit
codigo_externo: Código do produto no sistema integrado;
produto_embalagem: Lista das embalagens do produto
codigo_filial: Código da filial que possui a embalagem;
codigo_embalagem: Código da embalagem
multiplicador: Valor do multiplicador da embalagem
padrao: Define se é a embalagem padrão do produto
produto_filial: Dados únicos do produto por filial
codigo_filial:
codigo_local_estoque_padrao:
codigo_cotacao:
valor_venda:
valor_promocao
valor_custo_gerencial
Todos os endpoints, com exceção do deletar, retornam o json nesse formato.
2. Endpoints
2.1 - Buscar peneira pelo código
Endpoint: /semente-peneira
Tipo: get
Parâmetros:
codigoInterno: Tipo: Inteiro. Código da peneira no banco de dados do CRM.
codigoExterno: Tipo: String. Código da peneira no banco de dados do sistema integrado
Validações: É necessário informar pelo menos um dos parâmetros. Caso informado os dois o sistema prioriza o código externo.
Resposta: Status 200 - Retorna a peneira no formato documentado na sessão Exemplo do json
2.2 - Buscar todas as peneiras
Endpoint: /semente-peneira/todos
Tipo: get
Resposta: Status 200 - Retorna a lista das peneiras no formato documentado na sessão Exemplo do json
2.3 - Cadastrar ou editar peneira
Endpoint: /semente-peneira
Tipo: post
Notas:
Informe no corpo da requisição o json conforme exemplo na sessão 1.
Para cadastrar uma nova peneira não informe o campo “codigo”;
Para editar uma peneira já existente informe o campo “codigo” com o código da peneira que deseja editar;
Resposta: Status 200 - Retorna a peneira cadastrada, no formato documentado na sessão Exemplo do json
2.4 - Inativar uma peneira
Não é possível deletar uma peneira, apenas inativar, pois a peneira pode ter vinculo com pedidos e produtos. Nesse caso, a peneira continua no banco de dados porém com o status inativo.
Endpoint: /semente-peneira
Tipo: delete
Parâmetros:
codigoInterno: Tipo: Inteiro. Código da peneira no banco de dados do CRM.
codigoExterno: Tipo: String. Código da peneira no banco de dados do sistema integrado, caso existir.
Resposta: Status 200 - Mensagem: Registro inativado com sucesso.
2.5 - Retornar os metadados da peneira
Endpoint: /semente-peneira/metadados
Tipo: get
Descrição: Retorna os campos do json, com as informações de tipo, tamanho máximo, se o campo é requerido, filtrável e/ou ordenável
Resposta: Status 200 - Retorna um json com as informações dos campos da peneira
2.6 - Pesquisar
Endpoint: /semente-peneira/pesquisa
Tipo: post
Notas:
Esse endpoint retorna as peneiras baseado nos filtros e na ordenação informados;
Exemplo do corpo da requisição:
{ "pagina": 1, "quantidadeRegistros": 10, "filtros": [ { "campo": "descricao", "comparacao": "CONTEM", "valor": "2" } ], "ordenacao": [ { "campo": "peneira", "ordenacao": "ASC" } ] }
Nesse exemplo, estamos filtrando todas as peneiras cuja descrição possua o texto “VIASOFT”, também estamos ordenando os registros pela descrição de forma ascendente.