1
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
from datetime import date
|
||||
from typing import Self
|
||||
from typing import Self,List
|
||||
from pydantic import BaseModel, field_serializer, field_validator,model_validator
|
||||
|
||||
|
||||
@@ -10,12 +10,12 @@ class StudentRequest(BaseModel):
|
||||
age:int |None = None
|
||||
gender:str |None = None
|
||||
native_place:str |None = None
|
||||
birthday:date
|
||||
birthday:date |None = None
|
||||
school:str |None = None
|
||||
major:str |None = None
|
||||
degree:str |None = None
|
||||
admission_date:date
|
||||
graduation_date:date
|
||||
admission_date:date |None = None
|
||||
graduation_date:date |None = None
|
||||
@field_validator('age')
|
||||
@classmethod
|
||||
def check_age(cls, v):
|
||||
@@ -51,16 +51,32 @@ class StudentResponse(BaseModel):
|
||||
class StugetResponse(BaseModel):
|
||||
code:int = 200
|
||||
detail:str = 'ok'
|
||||
class_id: int | None = None
|
||||
stu_name: str | None = None
|
||||
age: int | None = None
|
||||
gender: str | None = None
|
||||
native_place: str | None = None
|
||||
birthday: date | None = None
|
||||
school: str | None = None
|
||||
major: str | None = None
|
||||
degree: str | None = None
|
||||
admission_date: date | None = None
|
||||
graduation_date: date | None = None
|
||||
progress: int = 0
|
||||
|
||||
@field_serializer('progress')
|
||||
def int_to_string(cls, progress: int):
|
||||
d1 = {
|
||||
0: '学习中',
|
||||
1: '求职中',
|
||||
2: '已就业'
|
||||
}
|
||||
return d1.get(progress, '暂不明确')
|
||||
|
||||
class StudentPageResponse(BaseModel):
|
||||
code: int = 200
|
||||
detail: str = "ok"
|
||||
page: int
|
||||
page_size: int
|
||||
class_id: int
|
||||
stu_name: str
|
||||
age: int
|
||||
gender: str
|
||||
native_place: str
|
||||
birthday: date
|
||||
school: str
|
||||
major: str
|
||||
degree: str
|
||||
admission_date: date
|
||||
graduation_date: date
|
||||
total: int
|
||||
data: List[StugetResponse]
|
||||
Reference in New Issue
Block a user