Jump to content

dev botao

Fuso Horário (TimeZone) do ACBrPixCD


icozeira
Go to solution Solved by EliasCesar,
  • Este tópico foi criado há 121 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 to comment
Share on other 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 to comment
Share on other sites

  • 2 weeks later...
  • 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 to comment
Share on other sites

  • Membros Pro

@EliasCesar

Fiz a atualização do componente, mas, não estou encontrando a propriedade p/a informar o valor em minutos.
Qual é o nome da propriedade, por favor?

E, como devo informa-la? No meu caso são -60 minutos em relação a Brasília.
(Estou com a revisão 26082)

Link to comment
Share on other 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 to comment
Share on other sites

  • 7 months later...
  • 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 to comment
Share on other 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.

  • Like 1
  • Thanks 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 to comment
Share on other sites

  • 7 months later...
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.