fix: 修复 SQLAlchemy case() 语法
All checks were successful
continuous-integration/drone/push Build is passing

- admin.py: 使用 case() 替代 func.case()
- task_service.py: 同上
- 已在服务器执行数据库迁移创建 user_course_progress 表
This commit is contained in:
yuliang_guo
2026-01-30 15:11:57 +08:00
parent 406efa6f14
commit ef7a41ba01
2 changed files with 4 additions and 4 deletions

View File

@@ -3,7 +3,7 @@
"""
from typing import List, Optional
from datetime import datetime
from sqlalchemy import select, func, and_
from sqlalchemy import select, func, and_, case
from sqlalchemy.ext.asyncio import AsyncSession
from sqlalchemy.orm import joinedload
from app.models.task import Task, TaskCourse, TaskAssignment, TaskStatus, AssignmentStatus
@@ -154,7 +154,7 @@ class TaskService(BaseService[Task]):
stmt = select(
func.count(TaskAssignment.id).label('total'),
func.sum(
func.case(
case(
(TaskAssignment.status == AssignmentStatus.COMPLETED, 1),
else_=0
)