Todo a arquitetura do TOTVS Varejo PDV Omni Smart Hub (POSH) funciona através do envio de lotes.
Podemos imaginar um lote como um container em um navío, esse container contêm os dados que serão enviados para a(s) loja(s).
O envio dos dados segue o seguinte fluxo
Abertura de lote
Envio dos dados
Fechamento do lote
Monitoramento do lote
Abaixo está listado cada passo e as informações para o envio.
Expandir
title
Passo 1 - Abertura de lote
Expandir
title
Detalhamento
Para se abrir um lote é necessário fazer uma requisição para o micro serviço do PDVSync,Core.Controle.
Endpoint: /api/retaguarda/inquilinolotesexternos
Método: Post
Autenticação: Bearer token
Permissão: Retaguarda
O retorno dessa requisição gerará um código chamado loteOrigem, ele é de suma importância, pois, esse código identifica qual o lote que pertence o(s) dado(s) e deverá ser passado no envio dos dados para que a integração funcione corretamente.
Ao ser fechado o lote começa a ser processado pela inteligência do POSH, nesse momento são feitas várias verificações de integridade dos dados e há um processo para enviar os dados para todas as lojas que fazem parte do compartilhamento.
Expandir
title
Retorno da requisição
{ "success":true, "message":"Lote finalizado e processado com sucesso", "data":null }
Expandir
title
Definição dos campos de retorno
Campo
Tipo
Descrição
Success
bool
Indica se a criação do lote foi feita com sucesso
Message
string
Mensagem enviada
Expandir
title
Passo 4 - Monitoramento do lote
Expandir
title
Detalhamento
O monitoramento do lote pode ser feito de várias formas.
Antes é necessário que haja o entendimento que há dois tipos de lote.
Lote Externo - Lote criado pela retaguarda que identifica os dados que serão enviados
Loja Lote - Lote criado pelo POSH para enviar para o PDV Omni
O loja lote é criado pelo POSH quando o lote externo é fechado pela Retaguarda, o passo a passo é o seguinte:
Retaguarda fecha o lote
O POSH verifica os dados do lote
O POSH verifica os corpartilhamentos do inquilino
O POSH cria os loja lotes de acordo com os compartlhamentos do inquilino
Nesse módulo teremos a explicação de como fazer o monitoramento dos dois tipos de lote.
Expandir
title
Monitoramento Lote Externo
Expandir
title
Detalhamento
O monitoramento do lote externo é feito pelas apis do PDVSync.Core.Controle.
Nesse endpoint teremos algumas informações muito importante com relação ao lote aberto pela retaguarda.
Caso ocorra erros durante a criação do lote eles serão enviados nesse campo
Data
objeto
Objeto lote externo
Data.LoteOrigem
string
Número de identificação do lote
Data.Mensagem
string
Mensagem enviada no cadastro do lote
Data.Status
int
Status do lote (Definições na seção abaixo)
Data.TipoLote
List String
Lista de tipos de dados que serão enviados no lote
Data.IdInquilino
string
idInquilino vinculado ao lote
Data.DataAtualização
datetime
Data da ultima atualização do registo
Data.DataCadastro
datetime
Data de criação do lote
Data.Id
string
Identificador do lote no banco
Expandir
title
Status do lote
Código
Nome
Descrição
0
InicioEnvio
Indica que o lote foi aberto pela retaguarda e está sendo enviado os dados para o lote.
1
FimEnvio
Indica que a retaguarda fechou o lote para iniciar o processamento do lote.
2
ValidadoOK
Indica que o POSH validou os dados e criou os loja lotes para baixa
3
ValidadoErro
Indica que ocorreu algum erro no processo e não foram criado os loja lotes. O erro mais comum nesse caso é o POSH não encontra os dados q foram enviados.