1. Objetivo Este documento descreve o serviço corporativo em termos de envolvimento, fornecendo restrições técnicas e de negócio, bem como informações de requisitos e semânticas para uso deste serviço. 2. Campo de Aplicação Governança de Serviços 3. Serviço 3.1 Descrição do Serviço O RMSServices é uma camada de serviços que faz a comunicação de outras aplicações ao ERP e vem para substituir pequenos aplicativos de apoio que tem objetivos específicos e não oferecem evolução e nem mesmo flexibilidade na sua arquitetura. 3.2 Direito de Acesso Toda requisição requer um Http Header chamado “x-rms-token’ que é utilizado para autenticar a requisição. Este token deve ser fornecido pela equipe RMS responsável pelo projeto. 3.3 Protocolo do Serviço Interno e externo: REST API Requisitos Não Funcionais Autenticação e autorização com OAuth2. 3.4 URL do Serviço http://<ip-do-servidor>:<porta>/RMSServices/api/<nome-do-metodo> 4. Capacidades 4.1 Descrição # Capacidade Descrição 1 Classificacao GET - Retorna uma lista de classificação mercadológica. GET/id – Retorna uma classificação específica. 2 Cliente POST – Recebe um objeto cliente para salvar na base. 3 EstoquePreco GET – Retorna um objeto estoquepreco referente ao código do produto e filial passados via querystring 4 PedidoAux POST – Recebe um objeto pedido para salvar no banco. PUT – Recebe um objeto pedido para atualizar no banco. 5 Produto GET – Lista todos os produtos. GET/id – Retorna um produto de acordo com o código RMS. 4.2 Filtros padrões da API Campo Tipo Descrição LIMIT INT Quantidade (máxima) de registros retornados. Através deste parâmetro o limite pode ser alterado para o número de registros desejados. START INT Número de registros que serão pulados na query. Este parâmetro pode ser utilizado em conjunto com limit. Por exemplo, se houver 300 registros no total, pode-se utilizar start=0&limit=100 para obter os primeiros 100 registros, para obter próximos 100 registros, usamos start=100&limit=100. 4.3 Serviços 4.3.1 Classificacao 4.3.1.1 GET - http://<ip-do-servidor>:<porta>/RMSServices/api/Classificacao 4.3.1.2 Parâmetros de Entrada Não existem parâmetros de entrada nesta requisição 4.3.1.3 Parâmetros de Saída Campo Tipo Descrição Id Number Id da classificação Departamento Varchar2(3) Código do departamento Secao Varchar2(3) Código da seção Grupo Varchar2(3) Código do grupo Subgrupo Varchar2(3) Código do subgrupo Categoria Varchar2(3) Código da categoria idExterno Number Id externo idPai Number Id da classificação pai (se existir) Descricao Varchar2(255) Nome da classificação 4.3.1.4 Pré-Condição O sistema a consumir este serviço deve ter permissão para utilizá-lo. Se for passado o parâmetro count=true, será retornado a quantidade de classificação que está cadastrado no RMS. 4.3.1.5 Pós-Condição Não se aplica. 4.3.1.6 Sem Disponibilidade Contate o Administrador. 4.3.1.7 GET - http://<ip-do-servidor>:<porta>/RMSServices/api/Classificacao/<id> 4.3.1.8 Parâmetros de Entrada Campo Tipo Descrição Id string - Obrigatório 4.3.1.9 Parâmetros de Saída Campo Tipo Descrição Id Number Id da classificação Departamento Varchar2(3) Código do departamento Secao Varchar2(3) Código da seção Grupo Varchar2(3) Código do grupo Subgrupo Varchar2(3) Código do subgrupo Categoria Varchar2(3) Código da categoria idExterno Number Id externo idPai Number Id da classificação pai (se existir) Descricao Varchar2(255) Nome da classificação 4.3.1.10 Pré-Condição O sistema a consumir este serviço deve ter permissão para utilizá-lo. 4.3.1.11 Pós-Condição Não se aplica. 4.3.1.12 Sem Disponibilidade Contate o Administrador. 4.3.1.13 Exemplo de Requisição 4.3.2 Cliente 4.3.2.1 POST - http://<ip-do-servidor>:<porta>/RMSServices/api/Cliente 4.3.2.2 Parâmetros de Entrada Campo Tipo Descrição count true Retorna a quantidade de classificação que está cadastrada no RMS. Campo Tipo Descrição cgcCpf Int64 - Obrigatório razaosocial String endereco String bairro String cidade String estado String cep Int64 dataCadastro DateTime datafatura DateTime inscricaoEstadual String filler String
4.3.2.3 Parâmetros de Saída A API retornará um Response Code 200 se o cliente for inserido com sucesso. 4.3.2.4 Pré-Condição O sistema a consumir este serviço deve ter permissão para utilizá-lo. 4.3.2.5 Pós-Condição Não se aplica. 4.3.2.6 Sem Disponibilidade Contate o Administrador. 4.3.3 EstoquePreco 4.3.3.1 GET - http://<ip-do-servidor>:<porta>/RMSServices/api/Estoquepreco?id=<id>&filialid=<filialid> 4.3.3.2 Parâmetros de Entrada Campo Tipo Descrição id int - Obrigatório CÓDIGO RMS DO PRODUTO filialid int - Obrigatório Código da Filial 4.3.3.3 Parâmetros de Saída Campo Tipo Descrição QuantidadeEstoque Decimal Quantidade disponível para venda Preco Decimal Preço unitário PrecoPromocao Decimal Preço de promoção (0,00 se não existir) InicioPromocao DateTime Data de início (se existir) FimPromocao DateTime Data final (se existir) produtoid String Id do produto filialid int Id da filial 4.3.3.4 Pré-Condição O sistema a consumir este serviço deve ter permissão para utilizá-lo.
4.3.3.5 Pós-Condição Não se aplica. 4.3.3.6 Sem Disponibilidade Contate o Administrador. 4.3.4 PedidoAux 4.3.4.1 POST - http://<ip-do-servidor>:<porta>/RMSServices/api/PedidoAux 4.3.4.2 Parâmetros de Entrada Campo Tipo Descrição idPedido Number – Automático Id do pedidoAux. Gerado automaticamente pela aplicação idPedidoLoja Number(8) – Obrigatório Id do pedido na loja idClienteLoja Number – Obrigatório Id do cliente na loja valorTotal Decimal – Obrigatório Valor total = valor total + frete - desconto ValorMercadoria Decimal – Obrigatório Valor do pedido sem frete -> valor do pedido sem frete e sem desconto ValorDesconto Decimal – Obrigatório Valor de desconto ValorFrete Decimal – Obrigatório Valor do frete Data DateTime – Obrigatório Data de realização do pedido FormaEntrega Number – Obrigatório Id da forma de entrega DataEntrega DateTime – Obrigatório Data de entrega observacaoPedido Varchar2(60) – Opcional Observações do pedido. Caso vazia, será 'loja eletronica' EnderecoEntrega Varchar2(40) – Obrigatório Endereço de entrega NumeroEntrega Varchar2(10) – Obrigatório Número de entrega ComplementoEntrega Varchar2(20) – Obrigatório Complemento do endereço de entrega BairroEntrega Varchar2(20) – Obrigatório Bairro de entrega CidadeEntrega Varchar2(20) – Obrigatório Cidade de entrega EstadoEntrega Varchar2(2) – Obrigatório UF CepEntrega Number(9) – Obrigatório Cep PaisEntrega Varchar2(3) – Obrigatório País (BRA) FormaPagamento Number – Obrigatório Id da forma de pagamento FilialOrigem Number(8) – Obrigatório Id da filial de origem FilialVenda Number(8) – Obrigatório Id da filial de venda CodigoVendedorRms Number(8) – Obrigatório Id do vendedor padrão CodigoAgenda Number – Obrigatório ID da de agenda do lojista AgendamentoEntrega Number – Obrigatório Id do agendamento de retirada da logística FlagWeb Number(1) – Obrigatório Pedido feito pela Web DiasAgenda Number(2) – Obrigatório Quantidade de dias definido pela agenda CifFob Number(1) – Obrigatório 1 – CIF; 2 – FOB PercentualDesconto Decimal – Obrigatório Percentual do desconto CgcCpf Number(17) – Obrigatório CPF/CNPJ do cliente Rg Varchar2(20) – Obrigatório RG do cliente CondicaoPagamento Number(3) – Obrigatório Condicao de pagamento RetiraEntrega Number(1) – Obrigatório 0 - Retira; 1 - Entrega formaPgtoDescricao Varchar2(40) – Obrigatório Descrição da forma de pagamento formaEntregaDescricao Varchar2(40) – Obrigatório Descrição da forma de entrega NomeSistema Varchar2(30) – Obrigatório Nome do sistema ConfirmacaoAutomatica Number(1) – Obrigatório 0 - Status suspenso; 1 - Status cadastrado HoraEntregaInicio Number(6) – Obrigatório Horário de entrega inicial HoraEntregaFim Number(6) – Obrigatório Horário de entrega final ObservacaoEntrega Varchar2(1000) – Obrigatório Observação da entrega Transportadora Number(8) – Obrigatório Id da transportadora RazaoSocial Varchar2(40) – Obrigatório Nome do cliente InscricaoEstadual Varchar2(25) – Obrigatório Inscrição estadual Ddd Number(4) – Obrigatório DDD do telefone do cliente Telefone Number(10) – Obrigatório Telefone do cliente TipoPessoa Varchar2(1) – Obrigatório F - Física; J - Jurídica Email Varchar2(100) – Obrigatório Email do cliente GpsEntrega Varchar2(40) – Opcional Código GPS do endereço de entrega GpsCobranca Varchar2(40) – Opcional Código GPS do endereço de cobrança statusIntegracao Number(1) – Automático 0 – Pronto para integração; 1 - Integrado com sucesso; 2 – Aguardando liberação. Gerado automaticamente pela aplicação PercentualMargem Decimal – Obrigatório Percentual da margem de lucro Peso Decimal – Obrigatório Peso total dos produtos Volume Double – Obrigatório Volume total dos produtos Itens List<ItemPedidoAux> – Obrigatório Lista de produtos do pedido 4.3.4.2.1 ItemPedidoAux Campo Tipo Descrição idPedidoAux Number – Obrigatório Id do pedido aux idPedidoLoja Number – Obrigatório Id do pedido na loja idItemPedidoloja Number – Obrigatório Id do item no pedido da loja idProdutoLoja Number – Obrigatório Id do produto na loja idProdutoRms Number(8) – Obrigatório Id do produto no RMS com o dígito valorUnitario Decimal – Obrigatório Valor unitário descontoUnitario Decimal – Obrigatório Desconto do produto (individual) valorTotal Decimal – Obrigatório Valor total dos itens -> ((vlUntario-vlDescontoUnitario)*Quantidade) presente Number(1) – Obrigatório Embalar item para presente 0 – Não; 1 – Sim quantidade Number(10,3) – Obrigatório Quantidade de itens solicitado pelo cliente comentario Varchar2(100) – Opcional Comentários peso Numver(9,3) – Obrigatório Peso do item margem Decimal – Obrigatório Percentual da margem de lucro do item ean Number(14) – Obrigatório EAN do produto 4.3.4.3 Parâmetros de Saída Campo Tipo Descrição status Boolean Indicador de sucesso da operação mensagem String Mensagem informativa sobre a operação. 4.3.4.4 Pré-Condição O sistema a consumir este serviço deve ter permissão para utilizá-lo. 4.3.4.5 Pós-Condição O Pedido não será mostrado no RMS até que tenha uma atualização do mesmo via PUT informando que o status do pedido é igual a 2. 4.3.4.6 Sem Disponibilidade Contate o Administrador. 4.3.4.7 PUT- http://<ip-do-servidor>:<porta>/RMSServices/api/PedidoAux 4.3.4.8 Parâmetros de Entrada Campo Tipo Descrição idPedido Number – Automático Id do pedidoAux. Gerado automaticamente pela aplicação idPedidoLoja Number(8) – Obrigatório Id do pedido na loja idClienteLoja Number – Obrigatório Id do cliente na loja valorTotal Decimal – Obrigatório Valor total = valor total + frete - desconto ValorMercadoria Decimal – Obrigatório Valor do pedido sem frete -> valor do pedido sem frete e sem desconto ValorDesconto Decimal – Obrigatório Valor de desconto ValorFrete Decimal – Obrigatório Valor do frete Data DateTime – Obrigatório Data de realização do pedido FormaEntrega Number – Obrigatório Id da forma de entrega DataEntrega DateTime – Obrigatório Data de entrega observacaoPedido Varchar2(60) – Opcional Observações do pedido. Caso vazia, será 'loja eletronica' EnderecoEntrega Varchar2(40) – Obrigatório Endereço de entrega NumeroEntrega Varchar2(10) – Obrigatório Número de entrega ComplementoEntrega Varchar2(20) – Obrigatório Complemento do endereço de entrega BairroEntrega Varchar2(20) – Obrigatório Bairro de entrega CidadeEntrega Varchar2(20) – Obrigatório Cidade de entrega EstadoEntrega Varchar2(2) – Obrigatório UF CepEntrega Number(9) – Obrigatório Cep PaisEntrega Varchar2(3) – Obrigatório País (BRA) FormaPagamento Number – Obrigatório Id da forma de pagamento FilialOrigem Number(8) – Obrigatório Id da filial de origem FilialVenda Number(8) – Obrigatório Id da filial de venda CodigoVendedorRms Number(8) – Obrigatório Id do vendedor padrão CodigoAgenda Number – Obrigatório Id da de agenda do lojista AgendamentoEntrega Number – Obrigatório Id do agendamento de retirada da logística FlagWeb Number(1) – Obrigatório Pedido feito pela Web DiasAgenda Number(2) – Obrigatório Quantidade de dias definido pela agenda CifFob Number(1) – Obrigatório 1 – CIF; 2 – FOB PercentualDesconto Decimal – Obrigatório Percentual do desconto CgcCpf Number(17) – Obrigatório CPF/CNPJ do cliente Rg Varchar2(20) – Obrigatório RG do cliente CondicaoPagamento Number(3) – Obrigatório Condicao de pagamento RetiraEntrega Number(1) – Obrigatório 0 - Retira; 1 - Entrega formaPgtoDescricao Varchar2(40) – Obrigatório Descrição da forma de pagamento formaEntregaDescricao Varchar2(40) – Obrigatório Descrição da forma de entrega NomeSistema Varchar2(30) – Obrigatório Nome do sistema ConfirmacaoAutomatica Number(1) – Obrigatório 0 - Status suspenso; 1 - Status cadastrado HoraEntregaInicio Number(6) – Obrigatório Horário de entrega inicial HoraEntregaFim Number(6) – Obrigatório Horário de entrega final ObservacaoEntrega Varchar2(1000) – Obrigatório Observação da entrega Transportadora Number(8) – Obrigatório Id da transportadora RazaoSocial Varchar2(40) – Obrigatório Nome do cliente InscricaoEstadual Varchar2(25) – Obrigatório Inscrição estadual Ddd Number(4) – Obrigatório DDD do telefone do cliente Telefone Number(10) – Obrigatório Telefone do cliente TipoPessoa Varchar2(1) – Obrigatório F - Física; J - Jurídica Email Varchar2(100) – Obrigatório Email do cliente GpsEntrega Varchar2(40) – Opcional Código GPS do endereço de entrega GpsCobranca Varchar2(40) – Opcional Código GPS do endereço de cobrança statusIntegracao Number(1) – Automático 0 – Pronto para integração; 1 - Integrado com sucesso; 2 – Aguardando liberação. Gerado automaticamente pela aplicação PercentualMargem Decimal – Obrigatório Percentual da margem de lucro Peso Decimal – Obrigatório Peso total dos produtos Volume Double – Obrigatório Volume total dos produtos Itens List<ItemPedidoAux> – Obrigatório Lista de produtos do pedido 4.3.4.9 itemPedidoAux Campo Tipo Descrição idPedidoAux Number – Obrigatório Id do pedido aux idPedidoLoja Number – Obrigatório Id do pedido na loja idItemPedidoloja Number – Obrigatório Id do item no pedido da loja idProdutoLoja Number – Obrigatório Id do produto na loja idProdutoRms Number(8) – Obrigatório Id do produto no RMS com o dígito valorUnitario Decimal – Obrigatório Valor unitário descontoUnitario Decimal – Obrigatório Desconto do produto (individual) valorTotal Decimal – Obrigatório Valor total dos itens -> ((vlUntario-vlDescontoUnitario)*Quantidade) presente Number(1) – Obrigatório Embalar item para presente 0 – Não; 1 – Sim quantidade Number(10,3) – Obrigatório Quantidade de itens solicitado pelo cliente comentario Varchar2(100) – Opcional Comentários peso Numver(9,3) – Obrigatório Peso do item margem Decimal – Obrigatório Percentual da margem de lucro do item ean Number(14) – Obrigatório EAN do produto 4.3.4.10 Parâmetros de Saída Campo Tipo Descrição status Boolean Indicador de sucesso da operação. mensagem String Mensagem informativa sobre a operação.
4.3.4.11 Pré-Condição Não se aplica. 4.3.4.12 Pós-Condição Não se aplica. 4.3.4.13 Sem Disponibilidade Contate o Administrador. 4.3.5 Produto 4.3.5.1 GET - http://<ip-do-servidor>:<porta>/RMSServices/api/Produto 4.3.5.2 Parâmetros de Entrada Campo Tipo Descrição categoria_id long Retorna os produtos da categoria referente. count true Retorna a quantidade de produtos que estão cadastrados no RMS. Serão contados todos os que estão marcados com a flag Internet SIM 4.3.5.3 Parâmetros de Saída Campo Tipo Descrição Codigo Number(7) Id do produto (sem o dígito) Digito Number(1) Dígito Ean Varchar2(13) Ean Departamento Number(3) Código do departamento Secao Number(3) Código da seção Grupo Number(3) Código do grupo SubGrupo Number(3) Código do subgrupo Categoria Number(3) Código da categoria Descricao Varchar2(40) Nome DescricaoReduzida Varchar2(22) Nome reduzido DescricaoComercial Varchar2(30) Nome comercial DescricaoWeb String Nome para a loja web DataEntradaLinha DateTime Data que o produto entrou em linha CodigoPai Number(8) Id do produto pai Peso decimal Peso TipoProduto Number(2) Tipo do produto EmbalagemVenda Varchar2(2) Tipo de embalagem de venda Gramatura Decimal Gramatura de venda TipoGramatura Varchar2(2) Tipo de medida do produto Marca Varchar2(20) Marca AlturaEmbalagemvenda decimal Altura do produto LarguraEmbalagemVenda decimal Largura do produto ComprimentoEmbalagemVenda decimal Comprimento do produto CodigoCor Varchar2(3) Id da Cor Tamanho Varchar2(4) Tamanho do produto Cor Varchar2(3) Nome da cor idClassificacaoExterna Number Id da classificação externa idExternoClassificacao Number Id da classificação na loja web idVinculo Number Vínculo inicial do produto (“Avô”, se houver) 4.3.5.4 Pré-Condição Não se aplica 4.3.5.5 Pós-Condição Não se aplica. 4.3.5.6 Sem Disponibilidade Contate o Administrador. 4.3.5.7 GET - http://<ip-do-servidor>:<porta>/RMSServices/api/Produto/<id> 4.3.5.8 Parâmetros de Entrada Campo Tipo Descrição Id Int - Obrigatório Código RMS do produto 4.3.5.9 Parâmetros de Saída Campo Tipo Descrição Codigo Number(7) Id do produto (sem o dígito) Digito Number(1) Dígito Ean Varchar2(13) Ean Departamento Number(3) Código do departamento Secao Number(3) Código da seção Grupo Number(3) Código do grupo SubGrupo Number(3) Código do subgrupo Categoria Number(3) Código da categoria Descricao Varchar2(40) Nome DescricaoReduzida Varchar2(22) Nome reduzido DescricaoComercial Varchar2(30) Nome comercial DescricaoWeb String Nome para a loja web DataEntradaLinha DateTime Data que o produto entrou em linha CodigoPai Number(8) Id do produto pai Peso decimal Peso TipoProduto Number(2) Tipo do produto EmbalagemVenda Varchar2(2) Tipo de embalagem de venda Gramatura Decimal Gramatura de venda TipoGramatura Varchar2(2) Tipo de medida do produto Marca Varchar2(20) Marca AlturaEmbalagemvenda decimal Altura do produto LarguraEmbalagemVenda decimal Largura do produto ComprimentoEmbalagemVenda decimal Comprimento do produto CodigoCor Varchar2(3) Id da Cor Tamanho Varchar2(4) Tamanho do produto Cor Varchar2(3) Nome da cor idClassificacaoExterna Number Id da classificação externa idExternoClassificacao Number Id da classificação na loja web idVinculo Number Vínculo inicial do produto (“Avô”, se houver) 4.3.5.10 Pré-Condição Não se aplica. 4.3.5.11 Pós-Condição Não se aplica. 4.3.5.12 Sem Disponibilidade Contate o Administrador. |