修复加减分失败但计入记录和添加导出功能

This commit is contained in:
2026-04-16 09:36:57 +08:00
parent bc9e35a45d
commit a33270be0e
4 changed files with 73 additions and 2 deletions

View File

@@ -80,6 +80,18 @@ class ConductService:
fail_count += 1
continue
# 检查分数是否会超出范围(防止溢出)
current_points = student.get("total_points", 0)
new_points = current_points + points_change
if new_points < 0:
details.append({"student_id": student_id, "error": f"分数不能为负(当前{current_points},操作{points_change}"})
fail_count += 1
continue
if new_points > 100:
details.append({"student_id": student_id, "error": f"分数不能超过100当前{current_points},操作{points_change}"})
fail_count += 1
continue
# 创建记录
record_id = await ConductModel.create_record(
student_id=student_id,
@@ -102,7 +114,7 @@ class ConductService:
fail_count += 1
return {
"success": True,
"success": fail_count == 0,
"success_count": success_count,
"fail_count": fail_count,
"details": details