[fix] offset naive dates error (#3104)

This commit is contained in:
Vlad Stan 2025-04-14 13:21:16 +03:00 committed by GitHub
parent 1bb29cf0b1
commit 23b4c2cc16
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 13 additions and 21 deletions

View File

@ -409,13 +409,16 @@ async def get_payments_daily_stats(
data: list[PaymentDailyStats] = []
start_date = min(data_in[0].date, data_out[0].date)
end_date = max(data_in[-1].date, data_out[-1].date)
def _tz(dt: datetime) -> datetime:
return dt.replace(tzinfo=timezone.utc)
start_date = min(_tz(data_in[0].date), _tz(data_out[0].date))
end_date = max(_tz(data_in[-1].date), _tz(data_out[-1].date))
delta = timedelta(days=1)
while start_date <= end_date:
data_in_point = next((x for x in data_in if x.date == start_date), _none)
data_out_point = next((x for x in data_out if x.date == start_date), _none)
data_in_point = next((x for x in data_in if _tz(x.date) == start_date), _none)
data_out_point = next((x for x in data_out if _tz(x.date) == start_date), _none)
balance_total += data_in_point.balance + data_out_point.balance
data.append(

View File

@ -229,11 +229,10 @@ window.PaymentsPageLogic = {
'GET',
`/api/v1/payments/stats/count?${params}&count_by=status`
)
data.sort((a, b) => a.field - b.field)
this.searchOptions.status = data
.map(s => s.field)
.sort()
.reverse()
data.sort((a, b) => a.field - b.field).reverse()
this.searchOptions.status = data.map(s => s.field)
this.paymentsStatusChart.data.datasets[0].data = data.map(s => s.total)
this.paymentsStatusChart.data.labels = [...this.searchOptions.status]
@ -419,11 +418,8 @@ window.PaymentsPageLogic = {
data: [],
backgroundColor: [
'rgb(0, 205, 86)',
'rgb(54, 162, 235)',
'rgb(255, 99, 132)',
'rgb(255, 5, 86)',
'rgb(25, 205, 86)',
'rgb(255, 205, 250)'
'rgb(64, 72, 78)',
'rgb(255, 99, 132)'
],
hoverOffset: 4
}

View File

@ -1112,13 +1112,6 @@ window.WalletPageLogic = {
}
},
watch: {
'g.wallet.id'(newVal, oldVal) {
try {
this.fetchChartData()
} catch (error) {
console.warn(`Chart creation failed: ${error}`)
}
},
'g.updatePayments'(newVal, oldVal) {
this.parse.show = false
if (this.receive.paymentHash === this.g.updatePaymentsHash) {