refactor: update timestamp handling in session management and chat components

This commit is contained in:
Soulter
2025-11-20 17:02:01 +08:00
parent 3ec76636f9
commit 774efb2fe0
5 changed files with 9 additions and 24 deletions
+1 -1
View File
@@ -162,7 +162,7 @@ class PlatformSession(SQLModel, table=True):
Each session can have multiple conversations (对话) associated with it.
"""
__tablename__ = "platform_sessions"
__tablename__ = "platform_sessions" # type: ignore
inner_id: int | None = Field(
primary_key=True,
+4 -4
View File
@@ -1,7 +1,7 @@
import asyncio
import threading
import typing as T
from datetime import datetime, timedelta
from datetime import datetime, timedelta, timezone
from sqlalchemy.ext.asyncio import AsyncSession
from sqlmodel import col, delete, desc, func, or_, select, text, update
@@ -788,13 +788,13 @@ class SQLiteDatabase(BaseDatabase):
async with self.get_db() as session:
session: AsyncSession
async with session.begin():
values = {"updated_at": datetime.now()}
values: dict[str, T.Any] = {"updated_at": datetime.now(timezone.utc)}
if display_name is not None:
values["display_name"] = display_name
await session.execute(
update(PlatformSession)
.where(PlatformSession.session_id == session_id)
.where(col(PlatformSession.session_id == session_id))
.values(**values),
)
@@ -805,6 +805,6 @@ class SQLiteDatabase(BaseDatabase):
async with session.begin():
await session.execute(
delete(PlatformSession).where(
PlatformSession.session_id == session_id,
col(PlatformSession.session_id == session_id),
),
)
+2 -2
View File
@@ -334,8 +334,8 @@ class ChatRoute(Route):
"creator": session.creator,
"display_name": session.display_name,
"is_group": session.is_group,
"created_at": int(session.created_at.timestamp()),
"updated_at": int(session.updated_at.timestamp()),
"created_at": session.created_at.astimezone().isoformat(),
"updated_at": session.updated_at.astimezone().isoformat(),
}
)