From 47d361b527fd03f948b03f50791269c25165964d Mon Sep 17 00:00:00 2001 From: WaterRain <109326062+CATMIAOZHI@users.noreply.github.com> Date: Fri, 3 Jul 2026 06:34:31 +0000 Subject: [PATCH] fix: LineChart tooltip UTC+8 date label mismatch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit LineChart 点击 tooltip 的日期格式化未传入 useUtc8 参数, 导致 UTC+8 模式下首尾数据点标签差 8 小时(日粒度差一天)。 同步补上 UsageChartScreen 中 6 处图表调用的 useUtc8 传递。 --- .../token/ui/dashboard/UsageChartScreen.kt | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/com/rainy/token/ui/dashboard/UsageChartScreen.kt b/app/src/main/java/com/rainy/token/ui/dashboard/UsageChartScreen.kt index c24607d..60655db 100644 --- a/app/src/main/java/com/rainy/token/ui/dashboard/UsageChartScreen.kt +++ b/app/src/main/java/com/rainy/token/ui/dashboard/UsageChartScreen.kt @@ -229,7 +229,8 @@ fun UsageChartScreen( granularity = state.granularity, legendItems = models.mapIndexed { idx, m -> m to modelColors[idx % modelColors.size] - } + }, + useUtc8 = state.useUtc8 ) } } @@ -240,7 +241,8 @@ fun UsageChartScreen( valueSelector = { it.totalRequests.toFloat() }, lineColor = StrawberryPink, formatValue = { "${it.toInt()}次" }, - granularity = state.granularity + granularity = state.granularity, + useUtc8 = state.useUtc8 ) } } @@ -263,7 +265,8 @@ fun UsageChartScreen( stackLabels = { listOf("输出", "输入(未命中)", "命中缓存") }, formatValue = { formatTokenComma(it.toLong()) }, granularity = state.granularity, - tooltipReversed = true + tooltipReversed = true, + useUtc8 = state.useUtc8 ) } ChartLegend( @@ -302,7 +305,8 @@ fun UsageChartScreen( granularity = state.granularity, legendItems = models.mapIndexed { idx, m -> m to modelColors[idx % modelColors.size] - } + }, + useUtc8 = state.useUtc8 ) } } @@ -319,7 +323,8 @@ fun UsageChartScreen( valueSelector = { it.totalRequests.toFloat() }, lineColor = StrawberryPink, formatValue = { "${it.toInt()}次" }, - granularity = state.granularity + granularity = state.granularity, + useUtc8 = state.useUtc8 ) } } @@ -344,7 +349,8 @@ fun UsageChartScreen( stackLabels = { listOf("输出", "输入(未命中)", "命中缓存") }, formatValue = { formatTokenComma(it.toLong()) }, granularity = state.granularity, - tooltipReversed = true + tooltipReversed = true, + useUtc8 = state.useUtc8 ) } ChartLegend( @@ -756,7 +762,7 @@ internal fun LineChart( colors = CardDefaults.cardColors(containerColor = MaterialTheme.colorScheme.surfaceVariant) ) { Row(Modifier.padding(8.dp), horizontalArrangement = Arrangement.SpaceBetween) { - Text(formatChartTime(bucket.ts, granularity, 0, 1).first, style = MaterialTheme.typography.labelSmall) + Text(formatChartTime(bucket.ts, granularity, 0, 1, useUtc8).first, style = MaterialTheme.typography.labelSmall) Text(formatValue(valueSelector(bucket)), style = MaterialTheme.typography.bodySmall, color = StrawberryPink) } }