Objetivo
Este documento tem como objetivo explicar o funcionamento da integração da Categoria.
Pré-Requisitos e Restrições
- Necessário a instalação do serviço winthor-compras-produto. Para realizar a instalação desse serviço, segue link com as devidas explicações:
Comece por aqui -> Parametrizações WTA
Para realizar o cadastro de Categorias no WinThor, acesse o link abaixo:
Como realizar o cadastro de categoria no WinThor?
A categoria cadastrada deve estar com o campo Enviar para E-commerce igual a Sim.
Importante
Quando não houver preenchimento do campo DATA, exemplo (data de cadastro, data de alteração), nossas API's retornarão, por padrão, a informação "1900-01-01T00:00:00".
Caso necessário, realizar o ajuste nos cadastros para que a API apresente a data desejada.
Integração
A integração consiste em enviar todas as categorias que serão utilizados no E-Commerce.
Os dados integrados são:
CATEGORY | PCCATEGORIA |
---|---|
API | Referência Winthor |
id | pccategoria.codcategoria |
name | pccategoria.categoria |
title | pccategoria.categoria |
description | pccategoria.categoria |
keywords | pcpalavraschave.descricao |
lastChange | pccategoria.dtultalter |
section | |
id | pcsecao.codsec |
description | pcsecao.descricao |
title | pcdepto.titulo |
keywords | pcpalavraschave.descricao |
adWordsRemarketingCode | pcdepto.codadwords |
lastChange | pcsecao.dtultalter |
department | |
id | pcdepto.codepto |
name | pcdepto.descricao |
fatherCategoryId | pcdepto.coddeptoprinc |
title | pcdepto.titulo |
description | pcdepto.descricaoecommerce |
keywords | pcpalavraschave.descricao |
adWordsRemarketingCode | pcdepto.codadwords |
lomadeeCampaignCode | pcdepto.codcamplomadee |
lastChange | pcdepto.dtultalter |
updateStockGeneral | pcdepto.atualizainvgeral |
typeMerchandise | pcdepto.tipomerc |
dtcreate | pcdepto.dtcadastro |
isActive | pcdepto.enviaecommerce |
dtcreate | pcsecao.dtcadastro |
dtcreate | pccategoria.dtcadastro dtcreate |
subcategories | |
categoryId | pcsubcategoria.codcategoria |
description | pcsubcategoria.subcategoria |
id | pcsubcategoria.codsubcategoria |
keywords | pchave.descricao |
name | pcsubcategoria.subcategoria |
sectionId | pcsecao.sectionId |
title | (sem referencia de tabela) |
Exemplo do envio da requisição:
method: 'GET', url: '/api/purchases/v1/productCategories/{id secao}/{id categoria}' --> Apresenta apenas uma categoria de acordo com o filtro. method: 'GET', url: '/api/purchases/v1/productCategories/' --> Retorna a lista de categorias de acordo com os parâmetros abaixo.
order : lastChange - ordenação lastChange : 1900-01-01T00:00:00 - data da última alteração page : 1 - número de página pageSize : 10 - quantidade por página sectionId : 1 - código da seção
Exemplo JSON da resposta:
{ "first": false, "items": [ { "description": "string", "dtcreate": "2020-11-16T14:53:16", "id": 0, "keywords": "", "lastChange": "1900-01-01T00:00:00", "name": "string", "section": { "id": 0, "description": "string", "title": "string", "keywords": "", "adWordsRemarketingCode": "", "lastChange": "2020-10-27T09:22:29", "department": { "id": 0, "name": "string", "fatherCategoryId": 0, "title": "string", "description": "string", "keywords": "", "adWordsRemarketingCode": null, "lomadeeCampaignCode": null, "lastChange": "2020-10-27T08:53:07", "updateStockGeneral": boolean, "typeMerchandise": "string", "dtcreate": "2020-07-16T00:00:00", "active": boolean }, "dtcreate": "2020-07-16T00:00:00" }, "sectionId": 0, "subcategories": [], "title": "" } ], "hasNext": true }
Demonstração utilizando o Postman para realizar as requisições na API.
Para que seja realizada uma nova integração atualizando um registro já integrado, o sistema verifica a data de última atualização do registro. Portanto, ao realizar alguma alteração no registro, ele será encaminhado novamente para a view para manter a integridade dos dados do ERP com o E-commerce.