Files
SST/PythonProject/schema/employment_schema.py
T

34 lines
898 B
Python
Raw Normal View History

2026-09-21 14:13:23 +08:00
from fastapi import Query,HTTPException
from pydantic import BaseModel, field_validator
2026-09-21 16:48:27 +08:00
from datetime import date
from typing import Optional
2026-09-21 14:13:23 +08:00
2026-09-21 18:02:12 +08:00
class EmploymentRequest(BaseModel):
2026-09-21 14:13:23 +08:00
stu_id: int=Query(ge=1)
email: str|None
2026-09-21 16:48:27 +08:00
employment_opening_date:date
offer_issuance_date:date
2026-09-21 14:13:23 +08:00
company_name:str
company_address:str|None
salary:float
@field_validator('stu_id')
def check(cls,n):
i = cls.model_dump()
if i['stu_id'] == n:
return n
raise HTTPException(status_code=404,detail='未找到该学生的就业信息!')
class EmploymentResponse(BaseModel):
code:int = 200
detail:str = 'OK'
2026-09-21 16:48:27 +08:00
emp_id:int
2026-09-21 14:13:23 +08:00
stu_id: int
2026-09-21 16:48:27 +08:00
stu_name:Optional[str] = None
class_id:int
2026-09-21 14:13:23 +08:00
email: str | None
2026-09-21 16:48:27 +08:00
employment_opening_date: date
offer_issuance_date: date
2026-09-21 14:13:23 +08:00
company_name: str
company_address: str | None
salary: float