Files
SST/PythonProject/schema/grade_schema.py
T

30 lines
720 B
Python
Raw Normal View History

2026-09-21 22:34:34 +08:00
2026-09-22 12:46:31 +08:00
from pydantic import BaseModel, Field, field_validator
2026-09-21 16:53:39 +08:00
2026-09-21 12:24:56 +08:00
class GradeRequest(BaseModel):
2026-09-22 10:49:05 +08:00
stu_id:int = Field(description="学生编号")
exam_order:int = Field(description='考核序次')
score:float = Field(description='成绩')
2026-09-21 12:24:56 +08:00
2026-09-22 12:46:31 +08:00
@field_validator("score")
def check_score(cls, v):
if not (0 <= v <= 100):
raise ValueError("成绩必须在0~100之间")
return v
@field_validator("exam_order")
def check_exam_order(cls, v):
if v <= 0:
raise ValueError("考核序次必须大于0")
return v
2026-09-21 16:28:55 +08:00
class GradeResponse(BaseModel):
code: int = 200
detail: str = 'OK'
2026-09-22 10:49:05 +08:00
score_id: float
2026-09-21 21:40:48 +08:00
stu_id:int
2026-09-21 16:28:55 +08:00
exam_order:int
2026-09-21 21:40:48 +08:00
score:float