EM PROCESSO DE HOMOLOGAÇÃO
Visando ampliar a gama de recursos entre o Sistema Yzidro ERP e o E-Commerce, foi desenvolvido uma melhoria para Integrar os pedidos vindos do Mercado Livre diretamente para o sistema, assim como já realizado pela integração com a TRAY.
Foram adicionadas várias melhorias e implementações em diferentes telas do sistema Yzidro, nesse projeto serão apresentadas todas essas mudanças através de tópicos para facilitar o entendimento.
Abaixo as telas que sofreram alteração:
Caso queira conhecer a Integração E-Commerce com a plataforma TRAY, clique [AQUI].
Foram adicionados novos parâmetros do Sistema, “Marcas Insubstituíveis” e “Permitir Estoque Negativo E-commerce” que ficarão em (Vendas > Loja Virtual), conforme exemplo da Imagem 01.
No campo de Marcas Insubstituíveis será determinado quais não poderão ter a substituição por produtos de referência 2 caso não tenham estoque. Já no campo Permitir Estoque Negativo E-commerce, irá definir se permitirá lançar o pedido caso um produto não tenha estoque, por padrão será esse campo virá como "NÃO". Quando o parâmetro for "SIM", mesmo que o produto não tenha estoque o serviço irá verificar o parâmetro e lançar o pedido, deixando o estoque negativo se necessário.
Imagem 01: Novos parâmetros para a Integração Mercado Livre.
No menu (Sistema > Integrações), tivemos alterações no Cadastro de Integrações, foi adicionada a opção de integração com o Mercado Livre através do campo Tipo. Além disso, foram criados campos específicos para autenticar a API do Mercado Livre, com base no “Tipo” selecionado, também tivemos ajustes de nomenclatura, especialmente para o Mercado Livre, onde os termos ficaram como "Client ID (ID do Aplicativo)" e "Client Secret (Chave Secreta)".
Houve também melhorias na visualização, como a adição de um botão de "olho" para exibir o conteúdo do campo "Client Secret (Chave Secreta)", e ajustes de validação, assegurando que a autenticação seja concluída antes de permitir o registro de novos dados.
Quando o campo Tipo for preenchido com a opção de Mercado Livre, será ajustado o Layout com os campos necessários para autenticar a API, Sendo eles:
- ID do APP (ClientID);
- URI de redirecionamento (RedirectURI);
- Chave Secreta (ClientSecret);
- Dias Anteriores;
- MarketPlace.
Imagem 02: Novos campos específicos para a Integração com o Mercado Livre.
Para a geração do Refresh Token, foi Criado um botão ao lado do campo Redirect URI que irá abrir o navegador com a URL “auth" do mercado livre. Após isso abrirá uma janela retornando uma mensagem explicativa da operação e em seguida pedindo para colar o RefreshToken, conforme exemplo das Imagens 03 e 04.
Imagem 03: Botão para geração do Refresh Token e alerta explicativa da operação.
Imagem 04: Campo para colar o Refresh Token gerado no navegador.
Para melhor compreensão abaixo um Vídeo de exemplo da operação:
/homologacao/historico-versao-branch/vdo-004050-001.mp4
Vídeo 01: Demonstração da operação de geração do Token.
Validações:
- Ao incluir um novo registro, não deixará gravar enquanto não realizar a autenticação;
- Ao alterar um registro, permitirá que seja gravado, pois já tem o Token autenticado.
No cadastro de Modelo de Etiqueta, foi criado o campo "Mostrar em" que é um campo (Checked), conforme exemplo da Imagem 05. Terá duas opções:
Esse novo campo não poderá ser “vazio” e por padrão todas as etiquetas antigas receberão a opção "Criação de Etiquetas" que é o padrão já utilizado, os novos modelos devem ser selecionados conforme a necessidade. Esse campo vale para os modelos de Etiqueta ACBr e Código-Fonte;
Imagem 05: Novo campo na tela de Cadastro de Modelo de Etiqueta.
Também foi criado um novo modelo de etiqueta para a Separação de Pedidos E-commerce que vem do Mercado Livre, que será usada na tela de Gestão de Pedidos E-commerce.
Essa nova etiqueta terá as informações de “Referencia 1”, “Referência 2", "Descrição" e “Localização” dos produtos que estão no pedido, conforme exemplo da Imagem 06.
Imagem 06: Nova etiqueta criada para o pedido do Mercado Livre.
Foi alterado o nome do menu de “Cadastro de Status Pedido Web” para “Cadastro de Etapa para Pedidos E-Commerce", assim como o campo “E-Commerce” passa a se chamar "Plataforma". Também foi criado um novo campo “Apelido”, conforme exemplo da Imagem 07.
Imagem 07: Mudanças na tela de Cadastro de Etapa para Pedidos E-Commerce.
A tela foi remodelada para respeitar a Plataforma indicada, conforme exemplos abaixo das regras de exibição:
Quando a Plataforma for (Tray/Tribox/iFood/Cardapio), exibirá as informações já existentes anteriormente:
Quando for "Mercado Livre", exibirá o painel com as informações:
Quando o campo Ação estiver selecionado com "Imprimir Separação", exibirá painel "Parametrização para Impressão de Separação". Permitindo selecionar a Impressora, e listando todas as etiquetas que estão configuradas para "Mostrar Em" > "Separação E-Commerce" já explicado anteriormente, conforme exemplo da Imagem 08.
Imagem 08: Parametrização para Impressão da Etapa do Pedido E-Commerce.
Exemplo: No caso de uma Etapa configurada com a Ação "Imprimir Etiqueta" com a impressora TESTE HOM configurada para imprimir a etiqueta "Etiqueta Separação e-Commerce". Ao clicar na etapa em questão pela tela de Gestão de Pedidos, os pedidos selecionados deverão imprimir a etiqueta automaticamente.
A tela Pesquisa de Status Pedido Web teve seu nome alterado para "Pesquisa de Etapa para Pedidos E-Commerce", também foram adicionadas novas colunas e alterações de nomenclaturas, conforme apresentado abaixo:
Imagem 09: Pesquisa das Etapas para Pedidos E-Commerce.
Foi adicionada a coluna Integração na grid de "Sincronização" do serviço YzCommerce, essa nova coluna irá receber de qual integração aquele grupo pertence, conforme exemplo da Imagem 10.
A estrutura da thread de sincronização de pedidos para o Mercado Livre foi criada, junto com métodos para buscar e validar o Token de acesso. Além disso, foi implementada uma estrutura para sincronizar pedidos e atualizar clientes e itens de venda provenientes do Mercado Livre.
Imagem 10: Nova coluna Integrações no serviço YzCommerce.
Foi adicionado um painel acima da grid de sincronização. Nesse painel haverá um novo filtro chamado “Integração”, ao selecionar, filtrará para trazer somente as threads da integração escolhida, conforme exemplo da Imagem 11;
Imagem 11: Filtro para a Integração no serviço YzCommerce.
O serviço passou por várias mudanças internas, tudo para receber e enviar as informações relacionadas a nova integração do Mercado Livre, conforme apresentado a seguir:
- Foi criada a estrutura da Thread "Sincronizar Pedidos" para o Mercado Livre;
- Foram criados os métodos para solicitações do Mercado Livre, sendo eles:
Obs: Esses métodos vão rodar antes de qualquer solicitação que será feita na API do Mercado Livre, Garantindo assim que os Tokens sejam atualizados automaticamente.
- Foi criada a estrutura de sincronização de Pedidos Mercado Livre;
- Foi criada a estrutura para inserir e atualizar clientes vindos do Mercado Livre automaticamente;
- Foi criado a estrutura para inserir itens na venda;
- Foi criada a Thread de sincronização de Pedidos Incompletos. (Tem como objetivo procurar por pedidos incompletos no sistema, que estejam sem itens vinculados na venda ou que estejam com pagamentos faltando, e em seguida, inserir as informações que faltam no sistema);
- Foi criado a Thread no serviço que vai atualizar Status e Substatus de Entrega dos pedidos Mercado Livre;
- Foi criado o método no serviço que vai verificar se existe alguma NF-e Autorizada vinculada aos pedidos, caso tenha, enviará a NF-e para o pedido direto no mercado livre.
Na tela de Gestão de Pedidos do Ecommerce, foi alterado o nome do botão "Atualizar Status do Pedido", passará a se chamar "Atualizar Etapa do Pedido". O popup que aparece para alterar o status passará a ter dois níveis, sendo o 1º Nível “A plataforma que o pedido pertence” e um 2º Nível com os status dela, conforme exemplo da Imagem 12.
Os status vão receber a descrição que estiver no campo “Apelido” do Cadastro de Etapas, caso esse esteja preenchido.
Imagem 12: Alteração de Status do Pedido E-Commerce.
Também tivemos mudanças na tela de Gestão de Pedidos para receber e enviar informações relacionadas a integração com o Mercado Livre, os quais são:
- Foi adicionado uma observação interna na Grid de Vendas para que seja identificado quando um produto foi substituído por outro, informando qual item foi substituído por qual;
- Foi alterado a visualização do código do produto na Grid de Itens, adicionando Referência 1 e Referência 2;
- Na impressão da venda, foi adicionado Referência 1 e Referência 2;
- Na impressão da venda, foi colocado Colocado Máscara no código do pedido Web e ajustado o Tamanho na impressão do pedido de venda.
Imagem 13: Pedido de Venda do Mercado Livre.