Ir para conteúdo
  • Cadastre-se

dev botao

Fuso Horário (TimeZone) do ACBrPixCD


Ver Solução Respondido por EliasCesar,
  • Este tópico foi criado há 186 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Em virtude de meu fuso horário ser distinto de Brasília.
Aqui o GMT é -04:00.
E, todas as datas dos Jsons de retorno do Pix estão com o GMT de Brasilia.
Pergunto se existe alguma forma do componente converter esses horários quando da resposta?

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Olá @icozeira

Estou conversando com o Daniel pra vermos como corrigir essa situação.  
Até o momento a ideia é criar um campo string pra armazenar o fuso horário de retorno ('-03:00'), mas ainda estamos analisando a melhor forma.

Foi criada uma task para o caso: #TK-2866
 

Consultor SAC ACBr

Elias César Vieira
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Assine o
SAC

 
Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
  • Consultores
  • Solution

Olá, 
Foram criados campos para armazenamento do Bias (Diferença em minutos do UTC com o horário local).
Dessa maneira a informação de Timezone que recebemos na resposta da API não é perdida, possibilitando comparar os timezones(API/Local).

Alterações estão disponíveis no SVN, Rev: 26082.

Consultor SAC ACBr

Elias César Vieira
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Assine o
SAC

 
Link para o comentário
Compartilhar em outros sites

  • Consultores
Em 01/07/2022 at 11:12, icozeira disse:

"(...) todas as datas dos Jsons de retorno do Pix estão com o GMT de Brasilia."

O problema inicial seria no momento de receber a informação de resposta da API, certo?

O conteúdo da resposta é, por exemplo:
 

"criacao": "2022-06-10T11:34:13.09-03:00"

...antes o componente desconsiderava o timezone, agora nós salvamos ele em um campo novo.

quando vc ler a CobGerada, poderá ter acesso a informação do timezone em:
"ACBrPixCD1.PSP.epCob.CobGerada.calendario.criacao_Bias"  (Nesse caso do exemplo que eu dei, esse campo estará com valor 180).

Com essa informação será possível comparar com seu horário local ('-04:00' ou 240 minutos), porém no componente ainda continuará com o valor que foi enviado pela API.

Consultor SAC ACBr

Elias César Vieira
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Assine o
SAC

 
Link para o comentário
Compartilhar em outros sites

  • 7 meses depois ...
  • Membros Pro

Vou Ressucitar este tópico

Meu Problema é:

Cobranças PIX Registradas no Banco do Brasil vem com a propriedade TACBrPIXCobGerada.calendario.criacão com a Data e Hora correta (local) e a propriedade TACBrPIXCobGerada.calendario.criacao_Bias com 0

Cobranças PIX Registradas no Siccob  vem com a propriedade TACBrPIXCobGerada.calendario.criacão com a Data e Hora de Greenwich (3 Horas a mais do horario local) e a propriedade TACBrPIXCobGerada.calendario.criacao_Bias com 180

ou seja está correto, só que ao meu ver deveria ser -180 (negativo) e não 180 (positivo)


minha observação está correta?


Daí me deparei com change-log

14/02/2023
-- ACBrPIXSchemasCobV, ACBrPIXSchemasDevolucao, ACBrPIXSchemasLocation, ACBrPIXSchemasLoteCobV --
[*] Criadas propriedades "Bias" para armazenar informação do TimeZone em propriedades TDateTime.
    Por: Elias César


mas não encontrei este Bias com formato TDateTime


Onde estou errando?

Link para o comentário
Compartilhar em outros sites

  • Consultores

Olá @marcelosantos,

Na realidade o Bias = 0(zero) deve ser considerado como o horário UTC.
O valor da propriedade Bias será a diferença em minutos entre o horário local e o horário UTC.

Por exemplo, os seguintes valores correspondem ao mesmo horário:

"criacao":"2023-02-24T17:30:00.00Z"

"criacao":"2023-02-24T14:30:00.00-03:00"

Nas propriedades, os valores ficariam respectivamente:

calendario.criacao = '24/02/2023 17:30:00'
calendario.criacaoBias = 0

calendario.criacao = '24/02/2023 14:30:00'
calendario.criacaoBias = 180

O 180 é positivo, pois é necessário acrescentar 180 minutos ao horário local, para se chegar no horário zero.

...esse seria o funcionamento correto da propriedade, porém já vi casos de PSPs retornando valores incorretos, sem considerar o timezone.

  • Curtir 1
  • Obrigado 1
Consultor SAC ACBr

Elias César Vieira
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Assine o
SAC

 
Link para o comentário
Compartilhar em outros sites

  • 7 meses depois ...
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.