classRecruitQuery(BaseModel):''' RecruitQuery Struct: - `teams`: List of [module.skill.TeamsEnum][]. - `skill`: List of [module.skill.SkillEnum][]. - `status`: List of [module.skill.StatusEnum][]. '''teams:list[TeamsEnum]=Field(default_factory=list,description='list of teams')skill:list[SkillEnum]=Field(default_factory=list,description='list of skills')status:list[StatusEnum]=Field(default_factory=list,description='list of status')classConfig:''' Config '''use_enum_values=True
@uniqueclassTeamsEnumDesc(str,Enum):''' TeamsEnum with desc '''COORDINATOR='總召'SECRETARY='行政'PROGRAM='議程'MARKETING='行銷'SPONSOR='贊助'IT='資訊'PHOTO='攝影(已合併到紀錄)'FINANCE='財務'FIELD='場務'STREAMING='製播'DOCUMENTARY='紀錄'BOOTH='擺攤'
classTobeVolunteerStruct(BaseModel):''' TobeVolunteer Struct: - `uid`: user is. - `ok`: OK to be volunteer. - `teams`: List of [module.skill.TeamsEnum][]. - `skill`: List of [module.skill.SkillEnum][]. - `hours`: Hours. - `status`: Status in [module.skill.StatusEnum][]. - `desc`: Description. '''uid:str=Field(default='',description='user id')ok:bool=Field(default=False,description='ok to be volunteer')teams:list[TeamsEnum]=Field(default_factory=list,description='list of teams')skill:list[SkillEnum]=Field(default_factory=list,description='list of skills')hours:int=Field(default=0,description='Hours in an week')status:StatusEnum|None=Field(description='status')desc:str=Field(default='',description='more description')classConfig:''' Config '''anystr_strip_whitespace:bool=Trueuse_enum_values:bool=True