From 21429c19c16eb890bab4e69fe3d267d12ec6bb41 Mon Sep 17 00:00:00 2001 From: MangoFanFanw Date: Tue, 21 Apr 2026 21:07:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9C=A8=E8=AF=BE=E8=A1=A8=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E8=B7=AF=E7=94=B1=E4=B8=AD=E4=BD=BF=E7=94=A8=20jwxt()?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 从而避免无法获取默认课表以保存到数据库的问题 --- router/admin_router.py | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/router/admin_router.py b/router/admin_router.py index caf2a2d..9ceefd8 100644 --- a/router/admin_router.py +++ b/router/admin_router.py @@ -7,7 +7,7 @@ from pydantic import BaseModel from sqlmodel import Session, delete, select from njupt_api.baselib import config, logger -from njupt_api.zhengfang import ZhengFang, course_list_serializer +from njupt_api.zhengfang import LoginError, course_list_serializer, jwxt from router.enhance.auth import verify_token from router.enhance.lib import AliasDto, ReturnDto, TestDto, get_session from router.enhance.model import Alias, Course @@ -37,8 +37,8 @@ async def validate_token(vtd: ValidateTokenDto) -> ReturnDto: @admin_router.post("/schedule/test", dependencies=[Depends(verify_token)]) async def post_schedule_test(test: TestDto, session: Annotated[Session, Depends(get_session)]) -> ReturnDto: - async with ZhengFang() as zf: - if await zf.login(test.username, test.password): + try: + async with jwxt(test.username, test.password) as zf: if test.scheduleType == "class": final_course_list = course_list_serializer( await zf.get_class_schedule(), @@ -67,13 +67,8 @@ async def post_schedule_test(test: TestDto, session: Annotated[Session, Depends( success=False, message="参数错误,请检查 scheduleType 参数。", ) - logger.error( - f"{test.username} | 获取课程表失败,请检查账号密码是否正确后再试。", - ) - return ReturnDto( - success=False, - message="获取课程表失败,请检查账号密码是否正确后再试。", - ) + except LoginError as e: + return ReturnDto(success=False, message=str(e)) @admin_router.get("/schedule/test", dependencies=[Depends(verify_token)])