From c961df43a95be67386fadf47636875d78609c444 Mon Sep 17 00:00:00 2001 From: Wenjie Zhang Date: Thu, 22 Jan 2026 02:17:26 +0800 Subject: [PATCH] =?UTF-8?q?format:=20=E6=B8=85=E7=90=86=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E4=B8=AD=E7=9A=84=E7=A9=BA=E8=A1=8C=E5=92=8C=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E9=A1=BA=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 统一移除文件末尾多余的空行 调整多个文件中的导入语句顺序以保持一致性 将时间处理函数提取到datetime_utils模块中复用 --- scripts/migrate_business_from_sqlite.py | 2 +- server/routers/auth_router.py | 11 ++++------- src/repositories/evaluation_repository.py | 2 +- src/repositories/knowledge_base_repository.py | 2 +- src/repositories/knowledge_file_repository.py | 2 +- src/repositories/task_repository.py | 1 - src/services/evaluation_service.py | 2 +- src/services/task_service.py | 1 - src/storage/postgres/manager.py | 2 +- 9 files changed, 10 insertions(+), 15 deletions(-) diff --git a/scripts/migrate_business_from_sqlite.py b/scripts/migrate_business_from_sqlite.py index 1fcb338f..252ee2d0 100644 --- a/scripts/migrate_business_from_sqlite.py +++ b/scripts/migrate_business_from_sqlite.py @@ -30,7 +30,7 @@ from typing import Any sys.path.insert(0, os.path.dirname(os.path.dirname(__file__))) os.environ.setdefault("YUXI_SKIP_APP_INIT", "1") -from sqlalchemy import Boolean, Column, DateTime, Integer, String, Text, create_engine, select, text +from sqlalchemy import Column, DateTime, Integer, String, Text, create_engine, select, text from sqlalchemy.orm import declarative_base, sessionmaker from src import config diff --git a/server/routers/auth_router.py b/server/routers/auth_router.py index 4e75d456..59d7ba67 100644 --- a/server/routers/auth_router.py +++ b/server/routers/auth_router.py @@ -23,10 +23,7 @@ from server.utils.auth_utils import AuthUtils from server.utils.user_utils import generate_unique_user_id, validate_username, is_valid_phone_number from server.utils.common_utils import log_operation from src.storage.minio import aupload_file_to_minio -from datetime import datetime as dt, UTC - -# 使用 naive datetime 以兼容 PostgreSQL TIMESTAMP WITHOUT TIME ZONE 列 -_utc_now = lambda: dt.now(UTC).replace(tzinfo=None) +from src.utils.datetime_utils import utc_now_naive # 创建路由器 auth = APIRouter(prefix="/auth", tags=["authentication"]) @@ -180,7 +177,7 @@ async def login_for_access_token(form_data: OAuth2PasswordRequestForm = Depends( # 登录成功,重置失败计数器 user.reset_failed_login() - user.last_login = _utc_now() + user.last_login = utc_now_naive() await db.commit() # 生成访问令牌 @@ -270,7 +267,7 @@ async def initialize_admin(admin_data: InitializeAdmin, db: AsyncSession = Depen "password_hash": hashed_password, "role": "superadmin", "department_id": default_department.id, - "last_login": _utc_now(), + "last_login": utc_now_naive(), } ) @@ -679,7 +676,7 @@ async def delete_user( hash_suffix = hashlib.md5(user.user_id.encode()).hexdigest()[:4] user.is_deleted = 1 - user.deleted_at = _utc_now() + user.deleted_at = utc_now_naive() user.username = f"已注销用户-{hash_suffix}" user.phone_number = None # 清空手机号,释放该手机号供其他用户使用 user.password_hash = "DELETED" # 禁止登录 diff --git a/src/repositories/evaluation_repository.py b/src/repositories/evaluation_repository.py index 03f61f74..c51d9cbe 100644 --- a/src/repositories/evaluation_repository.py +++ b/src/repositories/evaluation_repository.py @@ -4,8 +4,8 @@ from typing import Any from sqlalchemy import delete, select -from src.storage.postgres.models_knowledge import EvaluationBenchmark, EvaluationResult, EvaluationResultDetail from src.storage.postgres.manager import pg_manager +from src.storage.postgres.models_knowledge import EvaluationBenchmark, EvaluationResult, EvaluationResultDetail class EvaluationRepository: diff --git a/src/repositories/knowledge_base_repository.py b/src/repositories/knowledge_base_repository.py index 63b0c239..ef591750 100644 --- a/src/repositories/knowledge_base_repository.py +++ b/src/repositories/knowledge_base_repository.py @@ -4,8 +4,8 @@ from typing import Any from sqlalchemy import select -from src.storage.postgres.models_knowledge import KnowledgeBase from src.storage.postgres.manager import pg_manager +from src.storage.postgres.models_knowledge import KnowledgeBase class KnowledgeBaseRepository: diff --git a/src/repositories/knowledge_file_repository.py b/src/repositories/knowledge_file_repository.py index 5ac97362..520a5448 100644 --- a/src/repositories/knowledge_file_repository.py +++ b/src/repositories/knowledge_file_repository.py @@ -4,8 +4,8 @@ from typing import Any from sqlalchemy import select -from src.storage.postgres.models_knowledge import KnowledgeFile from src.storage.postgres.manager import pg_manager +from src.storage.postgres.models_knowledge import KnowledgeFile class KnowledgeFileRepository: diff --git a/src/repositories/task_repository.py b/src/repositories/task_repository.py index 8e8af1dd..5f089f64 100644 --- a/src/repositories/task_repository.py +++ b/src/repositories/task_repository.py @@ -43,4 +43,3 @@ class TaskRepository: async def delete_all(self) -> None: async with pg_manager.get_async_session_context() as session: await session.execute(delete(TaskRecord)) - diff --git a/src/services/evaluation_service.py b/src/services/evaluation_service.py index 6720facb..1280fac7 100644 --- a/src/services/evaluation_service.py +++ b/src/services/evaluation_service.py @@ -6,11 +6,11 @@ import uuid from datetime import datetime from typing import Any -from src.services.task_service import TaskContext, tasker from src.knowledge import knowledge_base from src.models import select_model from src.repositories.evaluation_repository import EvaluationRepository from src.repositories.knowledge_base_repository import KnowledgeBaseRepository +from src.services.task_service import TaskContext, tasker from src.utils import logger from src.utils.evaluation_metrics import EvaluationMetricsCalculator diff --git a/src/services/task_service.py b/src/services/task_service.py index a23b3dbd..d4741b6c 100644 --- a/src/services/task_service.py +++ b/src/services/task_service.py @@ -326,4 +326,3 @@ tasker = Tasker() __all__ = ["tasker", "TaskContext", "Tasker"] - diff --git a/src/storage/postgres/manager.py b/src/storage/postgres/manager.py index 9a7647eb..49cd67ca 100644 --- a/src/storage/postgres/manager.py +++ b/src/storage/postgres/manager.py @@ -9,8 +9,8 @@ from sqlalchemy.ext.asyncio import AsyncSession, async_sessionmaker, create_asyn from sqlalchemy.orm import declarative_base from server.utils.singleton import SingletonMeta -from src.storage.postgres.models_knowledge import Base as KnowledgeBase from src.storage.postgres.models_business import Base as BusinessBase +from src.storage.postgres.models_knowledge import Base as KnowledgeBase from src.utils import logger # 合并两个 Base