fix: 上次同步时间转为本地时区显示,修正时区混淆问题

AppConfig 存储 UTC 时间,模板直接输出导致用户在上海(UTC+8)看到错误时刻。
新增 get_last_sync_at_local() 转本地时区,logs_view 采用本地时间显示。
This commit is contained in:
Hermes Agent
2026-07-16 15:50:03 +08:00
parent a7a637b0c6
commit 057d72b264
2 changed files with 18 additions and 1 deletions
+17
View File
@@ -797,6 +797,23 @@ def get_last_sync_path() -> str | None:
return None
def get_last_sync_at_local() -> str | None:
"""Return the last-sync timestamp formatted in local time (not UTC).
:class:`~app.AppConfig` stores the sync time as an ISO-8601 UTC string
(e.g. ``2026-07-16T07:43:36Z``). This converts it to the system's local
timezone so the UI shows a human-friendly time to the operator.
"""
ts = get_last_sync_at()
if not ts:
return None
try:
dt = datetime.fromisoformat(ts.replace("Z", "+00:00"))
return dt.astimezone().strftime("%Y-%m-%d %H:%M:%S")
except Exception:
return ts
def import_full_history(
path: str,
instance_id: int = 0,