TS-ResHub/resumes/api/schemas.py

60 lines
1.6 KiB
Python

from ninja import Schema
from typing import Optional, List
from datetime import datetime
# 简历单条记录输出结构
class ResumeBasicOut(Schema):
id: int
resume_id: int
name: Optional[str]
job_region: Optional[str]
birthday: Optional[str]
education: Optional[str]
school: Optional[str]
expected_position: Optional[str]
last_active_time: Optional[str]
marital_status: Optional[str]
current_location: Optional[str]
age: Optional[int]
phone: Optional[str]
gender: Optional[str]
job_type: Optional[str]
job_status: Optional[str]
work_1_experience: Optional[str]
work_1_time: Optional[datetime]
work_1_description: Optional[str]
work_2_experience: Optional[str]
work_2_time: Optional[datetime]
work_2_description: Optional[str]
work_3_experience: Optional[str]
work_3_time: Optional[datetime]
work_3_description: Optional[str]
work_4_experience: Optional[str]
work_4_time: Optional[datetime]
work_4_description: Optional[str]
height: Optional[int]
weight: Optional[int]
work_years: Optional[str]
highest_education: Optional[str]
ethnicity: Optional[str]
update_time: Optional[datetime]
job_function: Optional[str]
intended_position: Optional[str]
industry: Optional[str]
expected_salary: Optional[str]
available_time: Optional[str]
job_property: Optional[str]
job_location: Optional[str]
crawl_keywords: Optional[str]
source_id: Optional[int]
# 分页响应结构
class PaginatedResumes(Schema):
count: int
items: List[ResumeBasicOut]