danihenrif / gestor-cache

0 stars 0 forks source link

feat: Formatação/Validação dos dados recebidos pelo gestor de acesso #4

Closed artursantiago closed 3 months ago

artursantiago commented 3 months ago

O gestor de acesso vai mandar os dados no seguinte formato:

id de onde vem (esqueci o nome, mas tem no canal deles) dado (Aqui o dado vai ter estruturas diferentes dependendo da fonte)

Então como vamos ter apenas um dashboard que vai consumir todas as informações, pensamos em montar no dash um dto que teria todos os formatos de dados unidos numa unica estrutura. Porém só enviariamos os dados que recebemos do gestor de dados. Assim, vamos conseguir manter uma estrutura padronizado no retorno do metodo para o dashboard

danihenrif commented 3 months ago

entendi foi nada

artursantiago commented 3 months ago

O Gestor de Acesso enviará dados no seguinte formato:

Como teremos apenas um dashboard consumindo todas as informações, pensei em criar um DTO (Data Transfer Object) para o retorno do endpoint findById que inclua todos os possíveis formatos de dados em uma única estrutura.

Então, vamos receber no /cache do gestor de dados e salvar no mongoDB.

Para lidar com os formatos de dados variados de diferentes fontes (CKAN, DKAN, Socrata), podemos criar um DTO abrangente que combine as estruturas dos três formatos em um único objeto JSON. Mesmo que recebamos dados de apenas uma fonte por vez, as outras propriedades no JSON que não forem preenchidas serão enviadas como null. Para enviarmos uma estrutura JSON padronizada para o dashboard.

O pessoal do grupo do gestor de dados ficou de enviar os dados mockados no formato que o dashboard sinalizou no canal deles, então podemos usar ele como base para construir o DTO.

danihenrif commented 3 months ago

tendi

artursantiago commented 3 months ago

Não será mais necessário, o data será retornado e salvo como Object