format: 清理代码中的空行和优化导入顺序

统一移除文件末尾多余的空行
调整多个文件中的导入语句顺序以保持一致性
将时间处理函数提取到datetime_utils模块中复用
This commit is contained in:
Wenjie Zhang 2026-01-22 02:17:26 +08:00
parent f5fedb4dec
commit c961df43a9
9 changed files with 10 additions and 15 deletions

View File

@ -30,7 +30,7 @@ from typing import Any
sys.path.insert(0, os.path.dirname(os.path.dirname(__file__))) sys.path.insert(0, os.path.dirname(os.path.dirname(__file__)))
os.environ.setdefault("YUXI_SKIP_APP_INIT", "1") 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 sqlalchemy.orm import declarative_base, sessionmaker
from src import config from src import config

View File

@ -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.user_utils import generate_unique_user_id, validate_username, is_valid_phone_number
from server.utils.common_utils import log_operation from server.utils.common_utils import log_operation
from src.storage.minio import aupload_file_to_minio from src.storage.minio import aupload_file_to_minio
from datetime import datetime as dt, UTC from src.utils.datetime_utils import utc_now_naive
# 使用 naive datetime 以兼容 PostgreSQL TIMESTAMP WITHOUT TIME ZONE 列
_utc_now = lambda: dt.now(UTC).replace(tzinfo=None)
# 创建路由器 # 创建路由器
auth = APIRouter(prefix="/auth", tags=["authentication"]) 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.reset_failed_login()
user.last_login = _utc_now() user.last_login = utc_now_naive()
await db.commit() await db.commit()
# 生成访问令牌 # 生成访问令牌
@ -270,7 +267,7 @@ async def initialize_admin(admin_data: InitializeAdmin, db: AsyncSession = Depen
"password_hash": hashed_password, "password_hash": hashed_password,
"role": "superadmin", "role": "superadmin",
"department_id": default_department.id, "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] hash_suffix = hashlib.md5(user.user_id.encode()).hexdigest()[:4]
user.is_deleted = 1 user.is_deleted = 1
user.deleted_at = _utc_now() user.deleted_at = utc_now_naive()
user.username = f"已注销用户-{hash_suffix}" user.username = f"已注销用户-{hash_suffix}"
user.phone_number = None # 清空手机号,释放该手机号供其他用户使用 user.phone_number = None # 清空手机号,释放该手机号供其他用户使用
user.password_hash = "DELETED" # 禁止登录 user.password_hash = "DELETED" # 禁止登录

View File

@ -4,8 +4,8 @@ from typing import Any
from sqlalchemy import delete, select 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.manager import pg_manager
from src.storage.postgres.models_knowledge import EvaluationBenchmark, EvaluationResult, EvaluationResultDetail
class EvaluationRepository: class EvaluationRepository:

View File

@ -4,8 +4,8 @@ from typing import Any
from sqlalchemy import select from sqlalchemy import select
from src.storage.postgres.models_knowledge import KnowledgeBase
from src.storage.postgres.manager import pg_manager from src.storage.postgres.manager import pg_manager
from src.storage.postgres.models_knowledge import KnowledgeBase
class KnowledgeBaseRepository: class KnowledgeBaseRepository:

View File

@ -4,8 +4,8 @@ from typing import Any
from sqlalchemy import select from sqlalchemy import select
from src.storage.postgres.models_knowledge import KnowledgeFile
from src.storage.postgres.manager import pg_manager from src.storage.postgres.manager import pg_manager
from src.storage.postgres.models_knowledge import KnowledgeFile
class KnowledgeFileRepository: class KnowledgeFileRepository:

View File

@ -43,4 +43,3 @@ class TaskRepository:
async def delete_all(self) -> None: async def delete_all(self) -> None:
async with pg_manager.get_async_session_context() as session: async with pg_manager.get_async_session_context() as session:
await session.execute(delete(TaskRecord)) await session.execute(delete(TaskRecord))

View File

@ -6,11 +6,11 @@ import uuid
from datetime import datetime from datetime import datetime
from typing import Any from typing import Any
from src.services.task_service import TaskContext, tasker
from src.knowledge import knowledge_base from src.knowledge import knowledge_base
from src.models import select_model from src.models import select_model
from src.repositories.evaluation_repository import EvaluationRepository from src.repositories.evaluation_repository import EvaluationRepository
from src.repositories.knowledge_base_repository import KnowledgeBaseRepository from src.repositories.knowledge_base_repository import KnowledgeBaseRepository
from src.services.task_service import TaskContext, tasker
from src.utils import logger from src.utils import logger
from src.utils.evaluation_metrics import EvaluationMetricsCalculator from src.utils.evaluation_metrics import EvaluationMetricsCalculator

View File

@ -326,4 +326,3 @@ tasker = Tasker()
__all__ = ["tasker", "TaskContext", "Tasker"] __all__ = ["tasker", "TaskContext", "Tasker"]

View File

@ -9,8 +9,8 @@ from sqlalchemy.ext.asyncio import AsyncSession, async_sessionmaker, create_asyn
from sqlalchemy.orm import declarative_base from sqlalchemy.orm import declarative_base
from server.utils.singleton import SingletonMeta 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_business import Base as BusinessBase
from src.storage.postgres.models_knowledge import Base as KnowledgeBase
from src.utils import logger from src.utils import logger
# 合并两个 Base # 合并两个 Base