// Code generated by lark_sdk_gen. DO NOT EDIT.
/**
 * Copyright 2022 chyroc
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package lark

import (
	"context"
)

// SearchCoreHRPreHire 搜索待入职人员信息。
//
// 该接口会按照应用拥有的「待入职人员」的权限范围返回数据, 请确定在「开发者后台 - 权限管理 - 数据权限」中已申请「待入职人员」权限范围
//
// doc: https://open.larkoffice.com/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/pre_hire/search
func (r *CoreHRService) SearchCoreHRPreHire(ctx context.Context, request *SearchCoreHRPreHireReq, options ...MethodOptionFunc) (*SearchCoreHRPreHireResp, *Response, error) {
	if r.cli.mock.mockCoreHRSearchCoreHRPreHire != nil {
		r.cli.Log(ctx, LogLevelDebug, "[lark] CoreHR#SearchCoreHRPreHire mock enable")
		return r.cli.mock.mockCoreHRSearchCoreHRPreHire(ctx, request, options...)
	}

	req := &RawRequestReq{
		Scope:                 "CoreHR",
		API:                   "SearchCoreHRPreHire",
		Method:                "POST",
		URL:                   r.cli.openBaseURL + "/open-apis/corehr/v2/pre_hires/search",
		Body:                  request,
		MethodOption:          newMethodOption(options),
		NeedTenantAccessToken: true,
	}
	resp := new(searchCoreHRPreHireResp)

	response, err := r.cli.RawRequest(ctx, req, resp)
	return resp.Data, response, err
}

// MockCoreHRSearchCoreHRPreHire mock CoreHRSearchCoreHRPreHire method
func (r *Mock) MockCoreHRSearchCoreHRPreHire(f func(ctx context.Context, request *SearchCoreHRPreHireReq, options ...MethodOptionFunc) (*SearchCoreHRPreHireResp, *Response, error)) {
	r.mockCoreHRSearchCoreHRPreHire = f
}

// UnMockCoreHRSearchCoreHRPreHire un-mock CoreHRSearchCoreHRPreHire method
func (r *Mock) UnMockCoreHRSearchCoreHRPreHire() {
	r.mockCoreHRSearchCoreHRPreHire = nil
}

// SearchCoreHRPreHireReq ...
type SearchCoreHRPreHireReq struct {
	PageSize              int64             `query:"page_size" json:"-"`               // 分页大小, 最大 100, 示例值: 100, 取值范围: `1` ～ `100`
	PageToken             *string           `query:"page_token" json:"-"`              // 分页标记, 第一次请求不填, 表示从头开始遍历；分页查询结果还有更多项时会同时返回新的 page_token, 下次遍历可采用该 page_token 获取查询结果, 示例值: 6891251722631890445
	UserIDType            *IDType           `query:"user_id_type" json:"-"`            // 用户 ID 类型, 示例值: open_id, 可选值有: open_id: 标识一个用户在某个应用中的身份。同一个用户在不同应用中的 Open ID 不同。[了解更多: 如何获取 Open ID](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-openid), union_id: 标识一个用户在某个应用开发商下的身份。同一用户在同一开发商下的应用中的 Union ID 是相同的, 在不同开发商下的应用中的 Union ID 是不同的。通过 Union ID, 应用开发商可以把同个用户在多个应用中的身份关联起来。[了解更多: 如何获取 Union ID？](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-union-id), user_id: 标识一个用户在某个租户内的身份。同一个用户在租户 A 和租户 B 内的 User ID 是不同的。在同一个租户内, 一个用户的 User ID 在所有应用（包括商店应用）中都保持一致。User ID 主要用于在不同的应用间打通用户数据。[了解更多: 如何获取 User ID？](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-user-id), people_corehr_id: 以飞书人事的 ID 来识别用户, 默认值: `open_id`, 当值为 `user_id`, 字段权限要求: 获取用户 user ID
	DepartmentIDType      *DepartmentIDType `query:"department_id_type" json:"-"`      // 此次调用中使用的部门 ID 类型, 示例值: open_department_id, 可选值有: open_department_id: 以 open_department_id 来标识部门, department_id: 以 department_id 来标识部门, people_corehr_department_id: 以 people_corehr_department_id 来标识部门, 默认值: `open_department_id`
	WorkerIDs             []string          `json:"worker_ids,omitempty"`              // 待入职人员工号列表, 示例值: ["A55045"], 最大长度: `100`
	PreHireIDs            []string          `json:"pre_hire_ids,omitempty"`            // 待入职人员 ID 列表, 示例值: ["7094136522860922112"], 最大长度: `100`
	OnboardingDateStart   *string           `json:"onboarding_date_start,omitempty"`   // 入职日期-搜索范围开始, 需要与搜索范围结束一同使用, 示例值: "2006-01-02"
	OnboardingDateEnd     *string           `json:"onboarding_date_end,omitempty"`     // 入职日期-搜索范围结束, 示例值: "2006-01-02"
	OnboardingLocationIDs []string          `json:"onboarding_location_ids,omitempty"` // 入职地点 ID 列表, 示例值: ["7094136522860922112"], 最大长度: `100`
	OnboardingStatus      *string           `json:"onboarding_status,omitempty"`       // 入职状态, 示例值: "preboarding", 可选值有: preboarding: 待入职, deleted: 已删除, day_one: 准备就绪, withdrawn: 已撤销, completed: 已完成
	DepartmentIDs         []string          `json:"department_ids,omitempty"`          // 部门 ID 列表, 示例值: ["7094136522860922111"], 最大长度: `100`
	DirectManagerIDs      []string          `json:"direct_manager_ids,omitempty"`      // 直接上级的雇佣 ID 列表, 示例值: ["7094136522860922111"], 最大长度: `100`
	EmployeeTypeIDs       []string          `json:"employee_type_ids,omitempty"`       // 人员类型 ID 列表, 示例值: ["7094136522860922111"], 最大长度: `100`
	JobFamilyIDs          []string          `json:"job_family_ids,omitempty"`          // 序列 ID 列表, 示例值: ["7094136522860922111"], 最大长度: `100`
	KeyWord               *string           `json:"key_word,omitempty"`                // 搜索关键字, 支持对常用名模糊搜索 + 工号精确搜索, 示例值: "张三"
	Rehire                *string           `json:"rehire,omitempty"`                  // 是否离职重聘, 示例值: "张三", 可选值有: to_be_confirmed: 待确认, 系统会判断该员工是否存在历史雇佣记录, 如果存在且需要二次确认时会调用失败, 并返回历史雇佣记录, no: 否, 系统直接标为非离职重聘人员, 不再做重复判断, yes: 是, 要求历史雇佣信息 ID 必填
	Fields                []string          `json:"fields,omitempty"`                  // 返回数据的字段列表, 填写方式: 为空时只返回 pre_hire_id, 不为空时按照传入的字段返回数据, 格式如下: person_info 字段: person_info.gender, person_info.age, employment_info 字段: employment_info.department, onboarding_info 字段: onboarding_info.onboarding_date, probation_info 字段: probation_info.probation_period, contract_info 字段: contract_info.contract_type, 如果要返回所有下级, 只用传上级结构体名称, 例如 person_info, 返回数据越多, 查询接口性能越慢, 请按需填写返回字段, 示例值: ["employment_info.department"], 最大长度: `100`
}

// SearchCoreHRPreHireResp ...
type SearchCoreHRPreHireResp struct {
	Items     []*SearchCoreHRPreHireRespItem `json:"items,omitempty"`      // 查询的部门信息
	PageToken string                         `json:"page_token,omitempty"` // 分页标记, 当 has_more 为 true 时, 会同时返回新的 page_token, 否则不返回 page_token
	HasMore   bool                           `json:"has_more,omitempty"`   // 是否还有更多项
}

// SearchCoreHRPreHireRespItem ...
type SearchCoreHRPreHireRespItem struct {
	PersonInfo     *SearchCoreHRPreHireRespItemPersonInfo     `json:"person_info,omitempty"`     // 个人信息
	EmploymentInfo *SearchCoreHRPreHireRespItemEmploymentInfo `json:"employment_info,omitempty"` // 工作信息
	OnboardingInfo *SearchCoreHRPreHireRespItemOnboardingInfo `json:"onboarding_info,omitempty"` // 入职信息
	ProbationInfo  *SearchCoreHRPreHireRespItemProbationInfo  `json:"probation_info,omitempty"`  // 试用期信息
	ContractInfo   *SearchCoreHRPreHireRespItemContractInfo   `json:"contract_info,omitempty"`   // 合同信息
	PreHireID      string                                     `json:"pre_hire_id,omitempty"`     // 待入职 id
}

// SearchCoreHRPreHireRespItemContractInfo ...
type SearchCoreHRPreHireRespItemContractInfo struct {
	ContractStartDate string `json:"contract_start_date,omitempty"` // 合同开始日期, 字段权限要求（满足任一）: 获取合同期限信息, 读写合同期限信息
	ContractEndDate   string `json:"contract_end_date,omitempty"`   // 合同结束日期, 字段权限要求（满足任一）: 获取合同期限信息, 读写合同期限信息
	ContractType      string `json:"contract_type,omitempty"`       // 合同类型, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/custom_field/get_by_param)接口获取, 按如下参数查询即可: object_api_name = pre_hire, custom_api_name = contract_type
	DurationType      string `json:"duration_type,omitempty"`       // 期限类型, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/custom_field/get_by_param)接口获取, 按如下参数查询即可: object_api_name = pre_hire, custom_api_name = duration_type
	SigningType       string `json:"signing_type,omitempty"`        // 签订类型, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/custom_field/get_by_param)接口获取, 按如下参数查询即可: object_api_name = pre_hire, custom_api_name = signing_type
}

// SearchCoreHRPreHireRespItemEmploymentInfo ...
type SearchCoreHRPreHireRespItemEmploymentInfo struct {
	DepartmentID         string                                                     `json:"department_id,omitempty"`           // 部门 ID, 可以通过[搜索部门信息](https://open.feishu.cn/document/server-docs/corehr-v1/organization-management/department/search)接口获取
	CostCenterRates      []*SearchCoreHRPreHireRespItemEmploymentInfoCostCenterRate `json:"cost_center_rates,omitempty"`       // 成本中心分摊信息
	OfficeLocationID     string                                                     `json:"office_location_id,omitempty"`      // 办公地点 ID, 详细信息可通过[查询地点](https://open.feishu.cn/document/server-docs/corehr-v1/organization-management/location/get)接口获得
	WorkLocationID       string                                                     `json:"work_location_id,omitempty"`        // 工作地点id, 详细信息可通过[批量查询地点]接口获得
	WorkStation          string                                                     `json:"work_station,omitempty"`            // 工位
	WorkerID             string                                                     `json:"worker_id,omitempty"`               // 工号
	CompensationType     *SearchCoreHRPreHireRespItemEmploymentInfoCompensationType `json:"compensation_type,omitempty"`       // 薪资类型, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/custom_field/get_by_param)接口获取, 按如下参数查询即可: custom_api_name: compensation_type, object_api_name: pre_hire, 字段权限要求（满足任一）: 查看员工的薪资类型信息, 读写员工的薪资类型信息
	DirectLeaderID       string                                                     `json:"direct_leader_id,omitempty"`        // 直属上级雇佣 ID, 可以通过[搜索员工信息](https://open.feishu.cn/document/server-docs/corehr-v1/employee/search)接口获取
	JobID                string                                                     `json:"job_id,omitempty"`                  // 职务 ID, 可以通过[查询职务](https://open.feishu.cn/document/server-docs/corehr-v1/job-management/job/get)接口获取, 字段权限要求（满足任一）: 获取员工的职务信息, 获取职务级别信息, 读写员工的职务级别信息
	JobFamilyID          string                                                     `json:"job_family_id,omitempty"`           // 序列 ID, 可以通过[查询序列](https://open.feishu.cn/document/server-docs/corehr-v1/job-management/job_family/get)接口获取
	JobLevelID           string                                                     `json:"job_level_id,omitempty"`            // 职级 ID, 可以通过[查询职级](https://open.feishu.cn/document/server-docs/corehr-v1/job-management/job_level/get)接口获取, 字段权限要求（满足任一）: 获取职务级别信息, 读写员工的职务级别信息
	JobGradeID           string                                                     `json:"job_grade_id,omitempty"`            // 职等 ID, 字段权限要求（满足任一）: 获取职等信息, 读写职等信息
	JobTitle             string                                                     `json:"job_title,omitempty"`               // 职务头衔, 字段权限要求（满足任一）: 获取职务级别信息, 读写员工的职务级别信息
	EmployeeTypeID       string                                                     `json:"employee_type_id,omitempty"`        // 人员类型 ID, 可以通过招聘[查询人员类型](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/employee_type/get)接口获取
	EmploymentType       string                                                     `json:"employment_type,omitempty"`         // 雇佣类型, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/custom_field/get_by_param)接口获取, 按如下参数查询即可: object_api_name = pre_hire, custom_api_name = employment_type
	WorkEmail            string                                                     `json:"work_email,omitempty"`              // 工作邮箱
	CompanyID            string                                                     `json:"company_id,omitempty"`              // 公司 ID, 详细信息可通过[查询单个公司](https://open.feishu.cn/document/server-docs/corehr-v1/organization-management/company/get)接口获得, 字段权限要求（满足任一）: 获取合同主体信息, 读写合同主体信息
	SocialSecurityCityID string                                                     `json:"social_security_city_id,omitempty"` // 社保城市 ID, 详细信息可通过[查询地点](https://open.feishu.cn/document/server-docs/corehr-v1/organization-management/location/get)接口获得
	NonCompeteCovenant   bool                                                       `json:"non_compete_covenant,omitempty"`    // 是否包含竞业条款, 字段权限要求（满足任一）: 查看竞业状态, 读写竞业状态
	WeeklyWorkingHours   int64                                                      `json:"weekly_working_hours,omitempty"`    // 周工作时长（单位: 小时）
	Rehire               string                                                     `json:"rehire,omitempty"`                  // 是否离职重聘, 可选值有: to_be_confirmed: 待确认, 系统会判断该员工是否存在历史雇佣记录, 如果存在且需要二次确认时会调用失败, 并返回历史雇佣记录, no: 否, 系统直接标为非离职重聘人员, 不再做重复判断, yes: 是, 要求历史雇佣信息 ID 必填
	RehireEmploymentID   string                                                     `json:"rehire_employment_id,omitempty"`    // 历史雇佣信息 ID, 雇佣信息详细信息可以通过[查询单个雇佣信息](https://open.feishu.cn/document/server-docs/corehr-v1/employee/employment/get) 获得, 系统会检验当前雇佣信息的合法性, 要求: 雇佣信息为该人员最后一次雇佣记录, 雇佣信息的雇员状态 = "terminated", 该人员不存在其他待入职记录
	WorkingHoursType     string                                                     `json:"working_hours_type,omitempty"`      // 工时制度 ID, 可通过[查询单个工时制度](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/working_hours_type/get)接口获取
	WeeklyWorkingHoursV2 float64                                                    `json:"weekly_working_hours_v2,omitempty"` // 周工作时长v2（单位: 小时）
	OfficeAddress        *SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddress    `json:"office_address,omitempty"`          // 办公地址, 字段权限要求: 获取办公地址
	WorkingCalendarID    string                                                     `json:"working_calendar_id,omitempty"`     // 工作日历, 字段权限要求: 获取工作日历
	UpdatedAt            string                                                     `json:"updated_at,omitempty"`              // 更新时间
	SuspectedRehiring    bool                                                       `json:"suspected_rehiring,omitempty"`      // 是否疑似重聘, 字段权限要求: 获取是否疑似重聘
	CustomFields         []*SearchCoreHRPreHireRespItemEmploymentInfoCustomField    `json:"custom_fields,omitempty"`           // 自定义字段, 字段权限要求: 获取雇佣信息自定义字段信息
}

// SearchCoreHRPreHireRespItemEmploymentInfoCompensationType ...
type SearchCoreHRPreHireRespItemEmploymentInfoCompensationType struct {
	EnumName string                                                              `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemEmploymentInfoCompensationTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemEmploymentInfoCompensationTypeDisplay ...
type SearchCoreHRPreHireRespItemEmploymentInfoCompensationTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemEmploymentInfoCostCenterRate ...
type SearchCoreHRPreHireRespItemEmploymentInfoCostCenterRate struct {
	CostCenterID string `json:"cost_center_id,omitempty"` // 成本中心 ID, 可以通过[搜索成本中心信息](https://open.feishu.cn/document/server-docs/corehr-v1/organization-management/cost_center/search)接口获取对应的成本中心信息
	Rate         int64  `json:"rate,omitempty"`           // 分摊比例
}

// SearchCoreHRPreHireRespItemEmploymentInfoCustomField ...
type SearchCoreHRPreHireRespItemEmploymentInfoCustomField struct {
	CustomApiName string                                                    `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemEmploymentInfoCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                     `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                    `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemEmploymentInfoCustomFieldName ...
type SearchCoreHRPreHireRespItemEmploymentInfoCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddress ...
type SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddress struct {
	FullAddressLocalScript   string                                                               `json:"full_address_local_script,omitempty"`   // 完整地址（本地文字）
	FullAddressWesternScript string                                                               `json:"full_address_western_script,omitempty"` // 完整地址（西方文字）
	AddressID                string                                                               `json:"address_id,omitempty"`                  // 地址 ID
	CountryRegionID          string                                                               `json:"country_region_id,omitempty"`           // 国家 / 地区
	RegionID                 string                                                               `json:"region_id,omitempty"`                   // 主要行政区
	CityIDV2                 string                                                               `json:"city_id_v2,omitempty"`                  // 城市
	DistrictIDV2             string                                                               `json:"district_id_v2,omitempty"`              // 区/县
	LocalAddressLine1        string                                                               `json:"local_address_line1,omitempty"`         // 地址行 1（非拉丁语系的本地文字）
	LocalAddressLine2        string                                                               `json:"local_address_line2,omitempty"`         // 地址行 2（非拉丁语系的本地文字）
	LocalAddressLine3        string                                                               `json:"local_address_line3,omitempty"`         // 地址行 3（非拉丁语系的本地文字）
	LocalAddressLine4        string                                                               `json:"local_address_line4,omitempty"`         // 地址行 4（非拉丁语系的本地文字）
	LocalAddressLine5        string                                                               `json:"local_address_line5,omitempty"`         // 地址行 5（非拉丁语系的本地文字）
	LocalAddressLine6        string                                                               `json:"local_address_line6,omitempty"`         // 地址行 6（非拉丁语系的本地文字）
	LocalAddressLine7        string                                                               `json:"local_address_line7,omitempty"`         // 地址行 7（非拉丁语系的本地文字）
	LocalAddressLine8        string                                                               `json:"local_address_line8,omitempty"`         // 地址行 8（非拉丁语系的本地文字）
	LocalAddressLine9        string                                                               `json:"local_address_line9,omitempty"`         // 地址行 9（非拉丁语系的本地文字）
	PostalCode               string                                                               `json:"postal_code,omitempty"`                 // 邮政编码
	AddressTypeList          []*SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddressAddressType `json:"address_type_list,omitempty"`           // 地址类型
	IsPrimary                bool                                                                 `json:"is_primary,omitempty"`                  // 主要地址
	IsPublic                 bool                                                                 `json:"is_public,omitempty"`                   // 公开地址
	CustomFields             []*SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddressCustomField `json:"custom_fields,omitempty"`               // 自定义字段
}

// SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddressAddressType ...
type SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddressAddressType struct {
	EnumName string                                                                      `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddressAddressTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddressAddressTypeDisplay ...
type SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddressAddressTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddressCustomField ...
type SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddressCustomField struct {
	CustomApiName string                                                                 `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddressCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                                  `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                                 `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddressCustomFieldName ...
type SearchCoreHRPreHireRespItemEmploymentInfoOfficeAddressCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemOnboardingInfo ...
type SearchCoreHRPreHireRespItemOnboardingInfo struct {
	OfferID              string                                                      `json:"offer_id,omitempty"`               // Offer ID, 可以通过招聘[获取 Offer 列表](https://open.feishu.cn/document/server-docs/hire-v1/candidate-management/delivery-process-management/offer/list)接口获取
	OfferHRID            string                                                      `json:"offer_hr_id,omitempty"`            // Offer HR 的 雇佣 ID
	EntryMode            string                                                      `json:"entry_mode,omitempty"`             // 入职方式, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/custom_field/get_by_param)接口获取, 按如下参数查询即可: object_api_name = pre_hire, custom_api_name = onboarding_method
	OnboardingDate       string                                                      `json:"onboarding_date,omitempty"`        // 入职日期
	AtsApplicationID     string                                                      `json:"ats_application_id,omitempty"`     // 招聘投递 ID, 详细信息可以通过招聘[获取投递信息](https://open.feishu.cn/document/server-docs/hire-v1/candidate-management/delivery-process-management/application/get)接口查询获得
	RecruitmentType      string                                                      `json:"recruitment_type,omitempty"`       // 招聘来源, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/custom_field/get_by_param)接口获取, 按如下参数查询即可: object_api_name = pre_hire, custom_api_name = recruitment_type
	OnboardingLocationID string                                                      `json:"onboarding_location_id,omitempty"` // 入职地点 ID, 详细信息可通过[查询单个地点](https://open.feishu.cn/document/server-docs/corehr-v1/organization-management/location/get)接口获得
	CompanySponsoredVisa bool                                                        `json:"company_sponsored_visa,omitempty"` // 需要公司办理签证, 字段权限要求: 查看签证要求
	OnboardingStatus     string                                                      `json:"onboarding_status,omitempty"`      // 入职状态, 可选值有: preboarding: 待入职, deleted: 已删除, day_one: 准备就绪, withdrawn: 已撤销, completed: 已完成
	OnboardingTaskList   []*SearchCoreHRPreHireRespItemOnboardingInfoOnboardingTask  `json:"onboarding_task_list,omitempty"`   // 入职任务列表
	OnboardingAddress    *SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddress `json:"onboarding_address,omitempty"`     // 入职地址, 字段权限要求: 获取入职地址
	FlowName             []*SearchCoreHRPreHireRespItemOnboardingInfoFlowName        `json:"flow_name,omitempty"`              // 入职流程, 字段权限要求: 获取入职流程
}

// SearchCoreHRPreHireRespItemOnboardingInfoFlowName ...
type SearchCoreHRPreHireRespItemOnboardingInfoFlowName struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddress ...
type SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddress struct {
	FullAddressLocalScript   string                                                                   `json:"full_address_local_script,omitempty"`   // 完整地址（本地文字）
	FullAddressWesternScript string                                                                   `json:"full_address_western_script,omitempty"` // 完整地址（西方文字）
	AddressID                string                                                                   `json:"address_id,omitempty"`                  // 地址 ID
	CountryRegionID          string                                                                   `json:"country_region_id,omitempty"`           // 国家 / 地区
	RegionID                 string                                                                   `json:"region_id,omitempty"`                   // 主要行政区
	CityIDV2                 string                                                                   `json:"city_id_v2,omitempty"`                  // 城市
	DistrictIDV2             string                                                                   `json:"district_id_v2,omitempty"`              // 区/县
	LocalAddressLine1        string                                                                   `json:"local_address_line1,omitempty"`         // 地址行 1（非拉丁语系的本地文字）
	LocalAddressLine2        string                                                                   `json:"local_address_line2,omitempty"`         // 地址行 2（非拉丁语系的本地文字）
	LocalAddressLine3        string                                                                   `json:"local_address_line3,omitempty"`         // 地址行 3（非拉丁语系的本地文字）
	LocalAddressLine4        string                                                                   `json:"local_address_line4,omitempty"`         // 地址行 4（非拉丁语系的本地文字）
	LocalAddressLine5        string                                                                   `json:"local_address_line5,omitempty"`         // 地址行 5（非拉丁语系的本地文字）
	LocalAddressLine6        string                                                                   `json:"local_address_line6,omitempty"`         // 地址行 6（非拉丁语系的本地文字）
	LocalAddressLine7        string                                                                   `json:"local_address_line7,omitempty"`         // 地址行 7（非拉丁语系的本地文字）
	LocalAddressLine8        string                                                                   `json:"local_address_line8,omitempty"`         // 地址行 8（非拉丁语系的本地文字）
	LocalAddressLine9        string                                                                   `json:"local_address_line9,omitempty"`         // 地址行 9（非拉丁语系的本地文字）
	PostalCode               string                                                                   `json:"postal_code,omitempty"`                 // 邮政编码
	AddressTypeList          []*SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddressAddressType `json:"address_type_list,omitempty"`           // 地址类型
	IsPrimary                bool                                                                     `json:"is_primary,omitempty"`                  // 主要地址
	IsPublic                 bool                                                                     `json:"is_public,omitempty"`                   // 公开地址
	CustomFields             []*SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddressCustomField `json:"custom_fields,omitempty"`               // 自定义字段
}

// SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddressAddressType ...
type SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddressAddressType struct {
	EnumName string                                                                          `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddressAddressTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddressAddressTypeDisplay ...
type SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddressAddressTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddressCustomField ...
type SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddressCustomField struct {
	CustomApiName string                                                                     `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddressCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                                      `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                                     `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddressCustomFieldName ...
type SearchCoreHRPreHireRespItemOnboardingInfoOnboardingAddressCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemOnboardingInfoOnboardingTask ...
type SearchCoreHRPreHireRespItemOnboardingInfoOnboardingTask struct {
	TaskName   string `json:"task_name,omitempty"`   // 任务名称
	TaskStatus string `json:"task_status,omitempty"` // 任务名称, 可选值有: initiating: 发起中, terminated: 已终止, exception: 异常, in_progress: 进行中, not_started: 未开始, skipped: 已跳过, uninitialized: 未初始化, failed: 已失败, in_review: 审核中, rejected: 已退回, completed: 已完成
	OperatorID string `json:"operator_id,omitempty"` // 当前操作人雇佣 ID
	TaskCode   string `json:"task_code,omitempty"`   // 任务code
}

// SearchCoreHRPreHireRespItemPersonInfo ...
type SearchCoreHRPreHireRespItemPersonInfo struct {
	PersonID                 string                                                         `json:"person_id,omitempty"`                   // 个人信息 ID
	PhoneNumber              string                                                         `json:"phone_number,omitempty"`                // 个人电话, 字段权限要求（满足任一）: 获取个人手机号信息, 读写个人手机号信息
	LegalName                string                                                         `json:"legal_name,omitempty"`                  // 法定姓名, 字段权限要求（满足任一）: 获取法定姓名信息, 读写法定姓名信息
	PreferredName            string                                                         `json:"preferred_name,omitempty"`              // 常用名
	PreferredLocalFullName   string                                                         `json:"preferred_local_full_name,omitempty"`   // 常用本地全名
	PreferredEnglishFullName string                                                         `json:"preferred_english_full_name,omitempty"` // 常用英文全名
	NameList                 []*SearchCoreHRPreHireRespItemPersonInfoName                   `json:"name_list,omitempty"`                   // 姓名列表, 字段权限要求（满足任一）: 获取法定姓名信息, 读写法定姓名信息
	Gender                   *SearchCoreHRPreHireRespItemPersonInfoGender                   `json:"gender,omitempty"`                      // 性别, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/custom_field/get_by_param)接口获取, 按如下参数查询即可: custom_api_name: gender, object_api_name: person, 字段权限要求（满足任一）: 获取性别信息, 读写性别信息
	DateOfBirth              string                                                         `json:"date_of_birth,omitempty"`               // 出生日期, 字段权限要求（满足任一）: 获取生日信息, 读写生日信息
	Race                     *SearchCoreHRPreHireRespItemPersonInfoRace                     `json:"race,omitempty"`                        // 民族 / 种族, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/custom_field/get_by_param)接口获取, 按如下参数查询即可: custom_api_name: ethnicity_race, object_api_name: person, 字段权限要求: 获取民族/种族信息
	MaritalStatus            *SearchCoreHRPreHireRespItemPersonInfoMaritalStatus            `json:"marital_status,omitempty"`              // 婚姻状况, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/custom_field/get_by_param)接口获取, 按如下参数查询即可: custom_api_name: marital_status, object_api_name: person, 字段权限要求（满足任一）: 获取婚姻状况信息, 读写婚姻状况信息
	PhoneList                []*SearchCoreHRPreHireRespItemPersonInfoPhone                  `json:"phone_list,omitempty"`                  // 电话列表, 只有当满足下面所有条件时, 电话在个人信息页才可见, 字段权限要求（满足任一）: 获取个人手机号信息, 读写个人手机号信息
	AddressList              []*SearchCoreHRPreHireRespItemPersonInfoAddress                `json:"address_list,omitempty"`                // 地址列表, 字段权限要求（满足任一）: 读取个人地址信息, 读写个人地址信息
	EmailList                []*SearchCoreHRPreHireRespItemPersonInfoEmail                  `json:"email_list,omitempty"`                  // 邮箱列表, 字段权限要求（满足任一）: 获取个人邮箱信息, 读写个人邮箱信息
	WorkExperienceList       []*SearchCoreHRPreHireRespItemPersonInfoWorkExperience         `json:"work_experience_list,omitempty"`        // 工作经历列表, 字段权限要求（满足任一）: 获取工作履历信息, 读写工作履历信息
	EducationList            []*SearchCoreHRPreHireRespItemPersonInfoEducation              `json:"education_list,omitempty"`              // 教育经历列表, 字段权限要求（满足任一）: 获取教育经历信息, 读写教育经历信息
	BankAccountList          []*SearchCoreHRPreHireRespItemPersonInfoBankAccount            `json:"bank_account_list,omitempty"`           // 银行账户, 字段权限要求（满足任一）: 获取银行账号列表信息, 读写银行账号信息
	NationalIDList           []*SearchCoreHRPreHireRespItemPersonInfoNationalID             `json:"national_id_list,omitempty"`            // 证件, 字段权限要求（满足任一）: 获取证件信息, 读写证件信息
	DependentList            []*SearchCoreHRPreHireRespItemPersonInfoDependent              `json:"dependent_list,omitempty"`              // 家庭成员列表, 字段权限要求（满足任一）: 获取家庭成员信息, 读写家庭成员信息
	EmergencyContactList     []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContact       `json:"emergency_contact_list,omitempty"`      // 紧急联系人列表, 字段权限要求（满足任一）: 获取紧急联系人信息, 读写紧急联系人信息
	DateEnteredWorkforce     string                                                         `json:"date_entered_workforce,omitempty"`      // 参加工作日期, 字段权限要求（满足任一）: 获取参加工作日期, 读写参加工作日期
	ProfileImageID           string                                                         `json:"profile_image_id,omitempty"`            // 头像资源的 ID
	EmailAddress             string                                                         `json:"email_address,omitempty"`               // 邮箱地址, 字段权限要求（满足任一）: 获取个人邮箱信息, 读写个人邮箱信息
	Age                      int64                                                          `json:"age,omitempty"`                         // 年龄, 字段权限要求（满足任一）: 获取生日信息, 读写生日信息
	HighestLevelOfEducation  *SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducation  `json:"highest_level_of_education,omitempty"`  // 最高学历教育经历, 字段权限要求（满足任一）: 获取教育经历信息, 读写教育经历信息
	HighestDegreeOfEducation *SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducation `json:"highest_degree_of_education,omitempty"` // 最高学位教育经历, 字段权限要求（满足任一）: 获取教育经历信息, 读写教育经历信息
	PersonalProfile          []*SearchCoreHRPreHireRespItemPersonInfoPersonalProfile        `json:"personal_profile,omitempty"`            // 个人资料附件, 字段权限要求（满足任一）: 获取个人资料信息, 读写个人资料信息
	NativeRegion             string                                                         `json:"native_region,omitempty"`               // 籍贯 ID, 字段权限要求（满足任一）: 获取籍贯信息, 读写籍贯信息
	HukouType                *SearchCoreHRPreHireRespItemPersonInfoHukouType                `json:"hukou_type,omitempty"`                  // 户口类型, 枚举值可通过文档[枚举常量介绍](https://open.feishu.cn/document/server-docs/corehr-v1/feishu-people-enum-constant)户口类型（hukou_type）枚举定义部分获得, 字段权限要求（满足任一）: 获取户口信息, 读写户口信息
	HukouLocation            string                                                         `json:"hukou_location,omitempty"`              // 户口所在地, 字段权限要求（满足任一）: 获取户口信息, 读写户口信息
	TalentID                 string                                                         `json:"talent_id,omitempty"`                   // 人才 ID
	CustomFields             []*SearchCoreHRPreHireRespItemPersonInfoCustomField            `json:"custom_fields,omitempty"`               // 自定义字段, 字段权限要求（满足任一）: 获取个人信息自定义字段信息, 读写个人信息中的自定义字段信息
	NationalIDNumber         string                                                         `json:"national_id_number,omitempty"`          // 居民身份证件号码, 字段权限要求（满足任一）: 获取证件信息, 读写证件信息
	FamilyAddress            string                                                         `json:"family_address,omitempty"`              // 家庭地址, 字段权限要求（满足任一）: 读取个人地址信息, 读写个人地址信息
	PersonInfoChns           []*SearchCoreHRPreHireRespItemPersonInfoPersonInfoChn          `json:"person_info_chns,omitempty"`            // 个人附加信息
	Religion                 *SearchCoreHRPreHireRespItemPersonInfoReligion                 `json:"religion,omitempty"`                    // 宗教信仰, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/custom_field/get_by_param)接口获取, 按如下参数查询即可: object_api_name: person, custom_api_name: religion, 字段权限要求（满足任一）: 查看宗教信仰信息, 读写宗教信仰信息
}

// SearchCoreHRPreHireRespItemPersonInfoAddress ...
type SearchCoreHRPreHireRespItemPersonInfoAddress struct {
	FullAddressLocalScript   string                                                     `json:"full_address_local_script,omitempty"`   // 完整地址（本地文字）
	FullAddressWesternScript string                                                     `json:"full_address_western_script,omitempty"` // 完整地址（西方文字）
	AddressID                string                                                     `json:"address_id,omitempty"`                  // 地址 ID
	CountryRegionID          string                                                     `json:"country_region_id,omitempty"`           // 国家 / 地区
	RegionID                 string                                                     `json:"region_id,omitempty"`                   // 主要行政区
	LocalAddressLine1        string                                                     `json:"local_address_line1,omitempty"`         // 地址行 1（非拉丁语系的本地文字）
	LocalAddressLine2        string                                                     `json:"local_address_line2,omitempty"`         // 地址行 2（非拉丁语系的本地文字）
	LocalAddressLine3        string                                                     `json:"local_address_line3,omitempty"`         // 地址行 3（非拉丁语系的本地文字）
	LocalAddressLine4        string                                                     `json:"local_address_line4,omitempty"`         // 地址行 4（非拉丁语系的本地文字）
	LocalAddressLine5        string                                                     `json:"local_address_line5,omitempty"`         // 地址行 5（非拉丁语系的本地文字）
	LocalAddressLine6        string                                                     `json:"local_address_line6,omitempty"`         // 地址行 6（非拉丁语系的本地文字）
	LocalAddressLine7        string                                                     `json:"local_address_line7,omitempty"`         // 地址行 7（非拉丁语系的本地文字）
	LocalAddressLine8        string                                                     `json:"local_address_line8,omitempty"`         // 地址行 8（非拉丁语系的本地文字）
	LocalAddressLine9        string                                                     `json:"local_address_line9,omitempty"`         // 地址行 9（非拉丁语系的本地文字）
	PostalCode               string                                                     `json:"postal_code,omitempty"`                 // 邮政编码
	AddressTypeList          []*SearchCoreHRPreHireRespItemPersonInfoAddressAddressType `json:"address_type_list,omitempty"`           // 地址类型
	IsPrimary                bool                                                       `json:"is_primary,omitempty"`                  // 主要地址
	IsPublic                 bool                                                       `json:"is_public,omitempty"`                   // 公开地址
	CustomFields             []*SearchCoreHRPreHireRespItemPersonInfoAddressCustomField `json:"custom_fields,omitempty"`               // 自定义字段
}

// SearchCoreHRPreHireRespItemPersonInfoAddressAddressType ...
type SearchCoreHRPreHireRespItemPersonInfoAddressAddressType struct {
	EnumName string                                                            `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoAddressAddressTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoAddressAddressTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoAddressAddressTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoAddressCustomField ...
type SearchCoreHRPreHireRespItemPersonInfoAddressCustomField struct {
	CustomApiName string                                                       `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemPersonInfoAddressCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                        `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                       `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemPersonInfoAddressCustomFieldName ...
type SearchCoreHRPreHireRespItemPersonInfoAddressCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemPersonInfoBankAccount ...
type SearchCoreHRPreHireRespItemPersonInfoBankAccount struct {
	BankName          string                                                              `json:"bank_name,omitempty"`           // 银行名称
	BankAccountNumber string                                                              `json:"bank_account_number,omitempty"` // 银行账号
	AccountHolder     string                                                              `json:"account_holder,omitempty"`      // 开户人姓名
	BranchName        string                                                              `json:"branch_name,omitempty"`         // 支行名称
	CountryRegionID   string                                                              `json:"country_region_id,omitempty"`   // 国家/地区 ID, 详细信息可通过[查询国家/地区信息](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/location_data/get)接口查询获得
	BankAccountUsage  []*SearchCoreHRPreHireRespItemPersonInfoBankAccountBankAccountUsage `json:"bank_account_usage,omitempty"`  // 银行卡用途, 枚举值可通过文档[枚举常量介绍](https://open.feishu.cn/document/server-docs/corehr-v1/feishu-people-enum-constant)银行卡用途（Bank Account Usage）枚举定义部分获得
	BankAccountType   *SearchCoreHRPreHireRespItemPersonInfoBankAccountBankAccountType    `json:"bank_account_type,omitempty"`   // 银行卡类型, 枚举值可通过文档[枚举常量介绍](https://open.feishu.cn/document/server-docs/corehr-v1/feishu-people-enum-constant)银行卡类型（Bank Account Type）枚举定义部分获得
	CurrencyID        string                                                              `json:"currency_id,omitempty"`         // 货币id
	CustomFields      []*SearchCoreHRPreHireRespItemPersonInfoBankAccountCustomField      `json:"custom_fields,omitempty"`       // 自定义字段
}

// SearchCoreHRPreHireRespItemPersonInfoBankAccountBankAccountType ...
type SearchCoreHRPreHireRespItemPersonInfoBankAccountBankAccountType struct {
	EnumName string                                                                    `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoBankAccountBankAccountTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoBankAccountBankAccountTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoBankAccountBankAccountTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoBankAccountBankAccountUsage ...
type SearchCoreHRPreHireRespItemPersonInfoBankAccountBankAccountUsage struct {
	EnumName string                                                                     `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoBankAccountBankAccountUsageDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoBankAccountBankAccountUsageDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoBankAccountBankAccountUsageDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoBankAccountCustomField ...
type SearchCoreHRPreHireRespItemPersonInfoBankAccountCustomField struct {
	CustomApiName string                                                           `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemPersonInfoBankAccountCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                            `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                           `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemPersonInfoBankAccountCustomFieldName ...
type SearchCoreHRPreHireRespItemPersonInfoBankAccountCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemPersonInfoCustomField ...
type SearchCoreHRPreHireRespItemPersonInfoCustomField struct {
	CustomApiName string                                                `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemPersonInfoCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                 `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemPersonInfoCustomFieldName ...
type SearchCoreHRPreHireRespItemPersonInfoCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemPersonInfoDependent ...
type SearchCoreHRPreHireRespItemPersonInfoDependent struct {
	Name                                 *SearchCoreHRPreHireRespItemPersonInfoDependentName                    `json:"name,omitempty"`                                       // 姓名
	Relationship                         *SearchCoreHRPreHireRespItemPersonInfoDependentRelationship            `json:"relationship,omitempty"`                               // 关系
	Gender                               *SearchCoreHRPreHireRespItemPersonInfoDependentGender                  `json:"gender,omitempty"`                                     // 性别
	DateOfBirth                          string                                                                 `json:"date_of_birth,omitempty"`                              // 生日
	NationalIDList                       []*SearchCoreHRPreHireRespItemPersonInfoDependentNationalID            `json:"national_id_list,omitempty"`                           // 证件号码
	SpousesWorkingStatus                 *SearchCoreHRPreHireRespItemPersonInfoDependentSpousesWorkingStatus    `json:"spouses_working_status,omitempty"`                     // 配偶工作状态
	IsThisPersonCoveredByHealthInsurance bool                                                                   `json:"is_this_person_covered_by_health_insurance,omitempty"` // 包含家属医疗保险
	IsThisPersonAllowedForTaxDeduction   bool                                                                   `json:"is_this_person_allowed_for_tax_deduction,omitempty"`   // 允许家属抵扣税款
	CustomFields                         []*SearchCoreHRPreHireRespItemPersonInfoDependentCustomField           `json:"custom_fields,omitempty"`                              // 自定义字段
	DependentName                        string                                                                 `json:"dependent_name,omitempty"`                             // 家庭成员姓名
	Employer                             string                                                                 `json:"employer,omitempty"`                                   // 工作单位
	Job                                  string                                                                 `json:"job,omitempty"`                                        // 岗位
	Phone                                *SearchCoreHRPreHireRespItemPersonInfoDependentPhone                   `json:"phone,omitempty"`                                      // 电话
	Address                              *SearchCoreHRPreHireRespItemPersonInfoDependentAddress                 `json:"address,omitempty"`                                    // 联系地址
	BirthCertificateOfChild              *SearchCoreHRPreHireRespItemPersonInfoDependentBirthCertificateOfChild `json:"birth_certificate_of_child,omitempty"`                 // 出生证明
}

// SearchCoreHRPreHireRespItemPersonInfoDependentAddress ...
type SearchCoreHRPreHireRespItemPersonInfoDependentAddress struct {
	FullAddressLocalScript   string                                                              `json:"full_address_local_script,omitempty"`   // 完整地址（本地文字）
	FullAddressWesternScript string                                                              `json:"full_address_western_script,omitempty"` // 完整地址（西方文字）
	AddressID                string                                                              `json:"address_id,omitempty"`                  // 地址 ID
	CountryRegionID          string                                                              `json:"country_region_id,omitempty"`           // 国家 / 地区
	RegionID                 string                                                              `json:"region_id,omitempty"`                   // 主要行政区
	LocalAddressLine1        string                                                              `json:"local_address_line1,omitempty"`         // 地址行 1（非拉丁语系的本地文字）
	LocalAddressLine2        string                                                              `json:"local_address_line2,omitempty"`         // 地址行 2（非拉丁语系的本地文字）
	LocalAddressLine3        string                                                              `json:"local_address_line3,omitempty"`         // 地址行 3（非拉丁语系的本地文字）
	LocalAddressLine4        string                                                              `json:"local_address_line4,omitempty"`         // 地址行 4（非拉丁语系的本地文字）
	LocalAddressLine5        string                                                              `json:"local_address_line5,omitempty"`         // 地址行 5（非拉丁语系的本地文字）
	LocalAddressLine6        string                                                              `json:"local_address_line6,omitempty"`         // 地址行 6（非拉丁语系的本地文字）
	LocalAddressLine7        string                                                              `json:"local_address_line7,omitempty"`         // 地址行 7（非拉丁语系的本地文字）
	LocalAddressLine8        string                                                              `json:"local_address_line8,omitempty"`         // 地址行 8（非拉丁语系的本地文字）
	LocalAddressLine9        string                                                              `json:"local_address_line9,omitempty"`         // 地址行 9（非拉丁语系的本地文字）
	PostalCode               string                                                              `json:"postal_code,omitempty"`                 // 邮政编码
	AddressTypeList          []*SearchCoreHRPreHireRespItemPersonInfoDependentAddressAddressType `json:"address_type_list,omitempty"`           // 地址类型
	IsPrimary                bool                                                                `json:"is_primary,omitempty"`                  // 主要地址
	IsPublic                 bool                                                                `json:"is_public,omitempty"`                   // 公开地址
	CustomFields             []*SearchCoreHRPreHireRespItemPersonInfoDependentAddressCustomField `json:"custom_fields,omitempty"`               // 自定义字段
}

// SearchCoreHRPreHireRespItemPersonInfoDependentAddressAddressType ...
type SearchCoreHRPreHireRespItemPersonInfoDependentAddressAddressType struct {
	EnumName string                                                                     `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoDependentAddressAddressTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoDependentAddressAddressTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoDependentAddressAddressTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoDependentAddressCustomField ...
type SearchCoreHRPreHireRespItemPersonInfoDependentAddressCustomField struct {
	CustomApiName string                                                                `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemPersonInfoDependentAddressCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                                 `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                                `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemPersonInfoDependentAddressCustomFieldName ...
type SearchCoreHRPreHireRespItemPersonInfoDependentAddressCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemPersonInfoDependentBirthCertificateOfChild ...
type SearchCoreHRPreHireRespItemPersonInfoDependentBirthCertificateOfChild struct {
	ID string `json:"id,omitempty"` // 上传文件ID
}

// SearchCoreHRPreHireRespItemPersonInfoDependentCustomField ...
type SearchCoreHRPreHireRespItemPersonInfoDependentCustomField struct {
	CustomApiName string                                                         `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemPersonInfoDependentCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                          `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                         `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemPersonInfoDependentCustomFieldName ...
type SearchCoreHRPreHireRespItemPersonInfoDependentCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemPersonInfoDependentGender ...
type SearchCoreHRPreHireRespItemPersonInfoDependentGender struct {
	EnumName string                                                         `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoDependentGenderDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoDependentGenderDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoDependentGenderDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoDependentName ...
type SearchCoreHRPreHireRespItemPersonInfoDependentName struct {
	LocalPrimary                     string                                                                `json:"local_primary,omitempty"`                         // 姓 - 本地文字
	LocalFirstName                   string                                                                `json:"local_first_name,omitempty"`                      // 名 - 本地文字
	CountryRegionID                  string                                                                `json:"country_region_id,omitempty"`                     // 国家 / 地区
	NameType                         *SearchCoreHRPreHireRespItemPersonInfoDependentNameNameType           `json:"name_type,omitempty"`                             // 姓名类型
	LocalFirstName2                  string                                                                `json:"local_first_name_2,omitempty"`                    // 名 - 第二本地文字
	LocalPrimary2                    string                                                                `json:"local_primary_2,omitempty"`                       // 姓 - 第二本地文字
	AdditionalNameType               *SearchCoreHRPreHireRespItemPersonInfoDependentNameAdditionalNameType `json:"additional_name_type,omitempty"`                  // 补充姓名类型
	FirstName                        string                                                                `json:"first_name,omitempty"`                            // 名
	FullName                         string                                                                `json:"full_name,omitempty"`                             // 全名
	Hereditary                       string                                                                `json:"hereditary,omitempty"`                            // 姓氏称谓
	CustomName                       string                                                                `json:"custom_name,omitempty"`                           // 自定义姓名（未传入时, 姓名将默认根据所属国家 / 地区规则对相关姓、名字段拼接）
	CustomLocalName                  string                                                                `json:"custom_local_name,omitempty"`                     // 本地文字的自定义姓名（未传入时, 本地文字的姓名将默认根据所属国家 / 地区规则对本地文字的相关姓、名字段拼接）
	MiddleName                       string                                                                `json:"middle_name,omitempty"`                           // 中间名
	NamePrimary                      string                                                                `json:"name_primary,omitempty"`                          // 姓
	Secondary                        string                                                                `json:"secondary,omitempty"`                             // 第二姓氏
	Social                           *SearchCoreHRPreHireRespItemPersonInfoDependentNameSocial             `json:"social,omitempty"`                                // 尊称
	Tertiary                         string                                                                `json:"tertiary,omitempty"`                              // 婚后姓氏
	Title                            *SearchCoreHRPreHireRespItemPersonInfoDependentNameTitle              `json:"title,omitempty"`                                 // 头衔
	LocalMiddleName                  string                                                                `json:"local_middle_name,omitempty"`                     // 本地中间名
	LocalSecondary                   string                                                                `json:"local_secondary,omitempty"`                       // 第二姓氏 - 本地文字
	DisplayNameLocalAndWesternScript string                                                                `json:"display_name_local_and_western_script,omitempty"` // 展示姓名（本地和西方文字）
	DisplayNameLocalScript           string                                                                `json:"display_name_local_script,omitempty"`             // 展示姓名（本地文字）
	DisplayNameWesternScript         string                                                                `json:"display_name_western_script,omitempty"`           // 展示姓名（西方文字）
}

// SearchCoreHRPreHireRespItemPersonInfoDependentNameAdditionalNameType ...
type SearchCoreHRPreHireRespItemPersonInfoDependentNameAdditionalNameType struct {
	EnumName string                                                                         `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoDependentNameAdditionalNameTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoDependentNameAdditionalNameTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoDependentNameAdditionalNameTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoDependentNameNameType ...
type SearchCoreHRPreHireRespItemPersonInfoDependentNameNameType struct {
	EnumName string                                                               `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoDependentNameNameTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoDependentNameNameTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoDependentNameNameTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoDependentNameSocial ...
type SearchCoreHRPreHireRespItemPersonInfoDependentNameSocial struct {
	EnumName string                                                             `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoDependentNameSocialDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoDependentNameSocialDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoDependentNameSocialDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoDependentNameTitle ...
type SearchCoreHRPreHireRespItemPersonInfoDependentNameTitle struct {
	EnumName string                                                            `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoDependentNameTitleDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoDependentNameTitleDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoDependentNameTitleDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoDependentNationalID ...
type SearchCoreHRPreHireRespItemPersonInfoDependentNationalID struct {
	NationalIDTypeID string                                                                 `json:"national_id_type_id,omitempty"` // 国家证件类型
	NationalIDNumber string                                                                 `json:"national_id_number,omitempty"`  // 证件号码
	IssueDate        string                                                                 `json:"issue_date,omitempty"`          // 证件签发日期
	ExpirationDate   string                                                                 `json:"expiration_date,omitempty"`     // 证件到期日期
	CountryRegionID  string                                                                 `json:"country_region_id,omitempty"`   // 国家 / 地区
	IssuedBy         string                                                                 `json:"issued_by,omitempty"`           // 证件签发机构
	CustomFields     []*SearchCoreHRPreHireRespItemPersonInfoDependentNationalIDCustomField `json:"custom_fields,omitempty"`       // 自定义字段
}

// SearchCoreHRPreHireRespItemPersonInfoDependentNationalIDCustomField ...
type SearchCoreHRPreHireRespItemPersonInfoDependentNationalIDCustomField struct {
	CustomApiName string                                                                   `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemPersonInfoDependentNationalIDCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                                    `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                                   `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemPersonInfoDependentNationalIDCustomFieldName ...
type SearchCoreHRPreHireRespItemPersonInfoDependentNationalIDCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemPersonInfoDependentPhone ...
type SearchCoreHRPreHireRespItemPersonInfoDependentPhone struct {
	InternationalAreaCode *SearchCoreHRPreHireRespItemPersonInfoDependentPhoneInternationalAreaCode `json:"international_area_code,omitempty"` // 国家区号
	PhoneNumber           string                                                                    `json:"phone_number,omitempty"`            // 电话号码
	FormattedPhoneNumber  string                                                                    `json:"formatted_phone_number,omitempty"`  // 完整电话号码
	DeviceType            *SearchCoreHRPreHireRespItemPersonInfoDependentPhoneDeviceType            `json:"device_type,omitempty"`             // 设备类型
	PhoneUsage            *SearchCoreHRPreHireRespItemPersonInfoDependentPhonePhoneUsage            `json:"phone_usage,omitempty"`             // 电话用途
	IsPrimary             bool                                                                      `json:"is_primary,omitempty"`              // 主要电话
	IsPublic              bool                                                                      `json:"is_public,omitempty"`               // 公开电话
}

// SearchCoreHRPreHireRespItemPersonInfoDependentPhoneDeviceType ...
type SearchCoreHRPreHireRespItemPersonInfoDependentPhoneDeviceType struct {
	EnumName string                                                                  `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoDependentPhoneDeviceTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoDependentPhoneDeviceTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoDependentPhoneDeviceTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoDependentPhoneInternationalAreaCode ...
type SearchCoreHRPreHireRespItemPersonInfoDependentPhoneInternationalAreaCode struct {
	EnumName string                                                                             `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoDependentPhoneInternationalAreaCodeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoDependentPhoneInternationalAreaCodeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoDependentPhoneInternationalAreaCodeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoDependentPhonePhoneUsage ...
type SearchCoreHRPreHireRespItemPersonInfoDependentPhonePhoneUsage struct {
	EnumName string                                                                  `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoDependentPhonePhoneUsageDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoDependentPhonePhoneUsageDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoDependentPhonePhoneUsageDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoDependentRelationship ...
type SearchCoreHRPreHireRespItemPersonInfoDependentRelationship struct {
	EnumName string                                                               `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoDependentRelationshipDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoDependentRelationshipDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoDependentRelationshipDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoDependentSpousesWorkingStatus ...
type SearchCoreHRPreHireRespItemPersonInfoDependentSpousesWorkingStatus struct {
	EnumName string                                                                       `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoDependentSpousesWorkingStatusDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoDependentSpousesWorkingStatusDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoDependentSpousesWorkingStatusDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEducation ...
type SearchCoreHRPreHireRespItemPersonInfoEducation struct {
	School           []*SearchCoreHRPreHireRespItemPersonInfoEducationSchool         `json:"school,omitempty"`              // 学校
	LevelOfEducation *SearchCoreHRPreHireRespItemPersonInfoEducationLevelOfEducation `json:"level_of_education,omitempty"`  // 学历
	StartDate        string                                                          `json:"start_date,omitempty"`          // 开始日期
	EndDate          string                                                          `json:"end_date,omitempty"`            // 结束日期
	FieldOfStudy     []*SearchCoreHRPreHireRespItemPersonInfoEducationFieldOfStudy   `json:"field_of_study,omitempty"`      // 专业
	Degree           *SearchCoreHRPreHireRespItemPersonInfoEducationDegree           `json:"degree,omitempty"`              // 学位
	SchoolName       *SearchCoreHRPreHireRespItemPersonInfoEducationSchoolName       `json:"school_name,omitempty"`         // 学校名称
	FieldOfStudyName *SearchCoreHRPreHireRespItemPersonInfoEducationFieldOfStudyName `json:"field_of_study_name,omitempty"` // 专业名称
	CountryRegionID  string                                                          `json:"country_region_id,omitempty"`   // 国家地区 ID
	ExpectedEndDate  string                                                          `json:"expected_end_date,omitempty"`   // 预期结束日期
	CustomFields     []*SearchCoreHRPreHireRespItemPersonInfoEducationCustomField    `json:"custom_fields,omitempty"`       // 自定义字段
}

// SearchCoreHRPreHireRespItemPersonInfoEducationCustomField ...
type SearchCoreHRPreHireRespItemPersonInfoEducationCustomField struct {
	CustomApiName string                                                         `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemPersonInfoEducationCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                          `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                         `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemPersonInfoEducationCustomFieldName ...
type SearchCoreHRPreHireRespItemPersonInfoEducationCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemPersonInfoEducationDegree ...
type SearchCoreHRPreHireRespItemPersonInfoEducationDegree struct {
	EnumName string                                                         `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEducationDegreeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEducationDegreeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEducationDegreeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEducationFieldOfStudy ...
type SearchCoreHRPreHireRespItemPersonInfoEducationFieldOfStudy struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEducationFieldOfStudyName ...
type SearchCoreHRPreHireRespItemPersonInfoEducationFieldOfStudyName struct {
	EnumName string                                                                   `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEducationFieldOfStudyNameDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEducationFieldOfStudyNameDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEducationFieldOfStudyNameDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEducationLevelOfEducation ...
type SearchCoreHRPreHireRespItemPersonInfoEducationLevelOfEducation struct {
	EnumName string                                                                   `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEducationLevelOfEducationDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEducationLevelOfEducationDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEducationLevelOfEducationDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEducationSchool ...
type SearchCoreHRPreHireRespItemPersonInfoEducationSchool struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEducationSchoolName ...
type SearchCoreHRPreHireRespItemPersonInfoEducationSchoolName struct {
	EnumName string                                                             `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEducationSchoolNameDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEducationSchoolNameDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEducationSchoolNameDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEmail ...
type SearchCoreHRPreHireRespItemPersonInfoEmail struct {
	Email      string                                                `json:"email,omitempty"`       // 邮箱地址
	IsPrimary  bool                                                  `json:"is_primary,omitempty"`  // 是否为主要邮箱
	IsPublic   bool                                                  `json:"is_public,omitempty"`   // 是否为公开邮箱
	EmailUsage *SearchCoreHRPreHireRespItemPersonInfoEmailEmailUsage `json:"email_usage,omitempty"` // 邮箱用途, 枚举值可通过文档[枚举常量介绍](https://open.feishu.cn/document/server-docs/corehr-v1/feishu-people-enum-constant)邮箱用途（email_usage）枚举定义获得
}

// SearchCoreHRPreHireRespItemPersonInfoEmailEmailUsage ...
type SearchCoreHRPreHireRespItemPersonInfoEmailEmailUsage struct {
	EnumName string                                                         `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEmailEmailUsageDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEmailEmailUsageDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEmailEmailUsageDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContact ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContact struct {
	Name         *SearchCoreHRPreHireRespItemPersonInfoEmergencyContactName          `json:"name,omitempty"`          // 姓名
	Relationship *SearchCoreHRPreHireRespItemPersonInfoEmergencyContactRelationship  `json:"relationship,omitempty"`  // 关系
	PhoneIst     []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIst    `json:"phone_ist,omitempty"`     // 电话
	PhoneList    []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhone       `json:"phone_list,omitempty"`    // 电话
	LegalName    string                                                              `json:"legal_name,omitempty"`    // 法定姓名
	CustomFields []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactCustomField `json:"custom_fields,omitempty"` // 自定义字段
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactCustomField ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactCustomField struct {
	CustomApiName string                                                                `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemPersonInfoEmergencyContactCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                                 `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                                `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactCustomFieldName ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactName ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactName struct {
	LocalPrimary                     string                                                                       `json:"local_primary,omitempty"`                         // 姓 - 本地文字
	LocalFirstName                   string                                                                       `json:"local_first_name,omitempty"`                      // 名 - 本地文字
	CountryRegionID                  string                                                                       `json:"country_region_id,omitempty"`                     // 国家 / 地区
	NameType                         *SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameNameType           `json:"name_type,omitempty"`                             // 姓名类型
	LocalFirstName2                  string                                                                       `json:"local_first_name_2,omitempty"`                    // 名 - 第二本地文字
	LocalPrimary2                    string                                                                       `json:"local_primary_2,omitempty"`                       // 姓 - 第二本地文字
	AdditionalNameType               *SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameAdditionalNameType `json:"additional_name_type,omitempty"`                  // 补充姓名类型
	FirstName                        string                                                                       `json:"first_name,omitempty"`                            // 名
	FullName                         string                                                                       `json:"full_name,omitempty"`                             // 全名
	Hereditary                       string                                                                       `json:"hereditary,omitempty"`                            // 姓氏称谓
	CustomName                       string                                                                       `json:"custom_name,omitempty"`                           // 自定义姓名（未传入时, 姓名将默认根据所属国家 / 地区规则对相关姓、名字段拼接）
	CustomLocalName                  string                                                                       `json:"custom_local_name,omitempty"`                     // 本地文字的自定义姓名（未传入时, 本地文字的姓名将默认根据所属国家 / 地区规则对本地文字的相关姓、名字段拼接）
	MiddleName                       string                                                                       `json:"middle_name,omitempty"`                           // 中间名
	NamePrimary                      string                                                                       `json:"name_primary,omitempty"`                          // 姓
	Secondary                        string                                                                       `json:"secondary,omitempty"`                             // 第二姓氏
	Social                           *SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameSocial             `json:"social,omitempty"`                                // 尊称
	Tertiary                         string                                                                       `json:"tertiary,omitempty"`                              // 婚后姓氏
	Title                            *SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameTitle              `json:"title,omitempty"`                                 // 头衔
	LocalMiddleName                  string                                                                       `json:"local_middle_name,omitempty"`                     // 本地中间名
	LocalSecondary                   string                                                                       `json:"local_secondary,omitempty"`                       // 第二姓氏 - 本地文字
	DisplayNameLocalAndWesternScript string                                                                       `json:"display_name_local_and_western_script,omitempty"` // 展示姓名（本地和西方文字）
	DisplayNameLocalScript           string                                                                       `json:"display_name_local_script,omitempty"`             // 展示姓名（本地文字）
	DisplayNameWesternScript         string                                                                       `json:"display_name_western_script,omitempty"`           // 展示姓名（西方文字）
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameAdditionalNameType ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameAdditionalNameType struct {
	EnumName string                                                                                `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameAdditionalNameTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameAdditionalNameTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameAdditionalNameTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameNameType ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameNameType struct {
	EnumName string                                                                      `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameNameTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameNameTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameNameTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameSocial ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameSocial struct {
	EnumName string                                                                    `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameSocialDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameSocialDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameSocialDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameTitle ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameTitle struct {
	EnumName string                                                                   `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameTitleDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameTitleDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactNameTitleDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhone ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhone struct {
	InternationalAreaCode *SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneInternationalAreaCode `json:"international_area_code,omitempty"` // 国家区号
	PhoneNumber           string                                                                           `json:"phone_number,omitempty"`            // 电话号码
	FormattedPhoneNumber  string                                                                           `json:"formatted_phone_number,omitempty"`  // 完整电话号码
	DeviceType            *SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneDeviceType            `json:"device_type,omitempty"`             // 设备类型
	PhoneUsage            *SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhonePhoneUsage            `json:"phone_usage,omitempty"`             // 电话用途
	IsPrimary             bool                                                                             `json:"is_primary,omitempty"`              // 主要电话
	IsPublic              bool                                                                             `json:"is_public,omitempty"`               // 公开电话
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneDeviceType ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneDeviceType struct {
	EnumName string                                                                         `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneDeviceTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneDeviceTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneDeviceTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneInternationalAreaCode ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneInternationalAreaCode struct {
	EnumName string                                                                                    `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneInternationalAreaCodeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneInternationalAreaCodeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneInternationalAreaCodeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIst ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIst struct {
	InternationalAreaCode *SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstInternationalAreaCode `json:"international_area_code,omitempty"` // 国家区号
	PhoneNumber           string                                                                              `json:"phone_number,omitempty"`            // 电话号码
	FormattedPhoneNumber  string                                                                              `json:"formatted_phone_number,omitempty"`  // 完整电话号码
	DeviceType            *SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstDeviceType            `json:"device_type,omitempty"`             // 设备类型
	PhoneUsage            *SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstPhoneUsage            `json:"phone_usage,omitempty"`             // 电话用途
	IsPrimary             bool                                                                                `json:"is_primary,omitempty"`              // 主要电话
	IsPublic              bool                                                                                `json:"is_public,omitempty"`               // 公开电话
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstDeviceType ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstDeviceType struct {
	EnumName string                                                                            `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstDeviceTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstDeviceTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstDeviceTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstInternationalAreaCode ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstInternationalAreaCode struct {
	EnumName string                                                                                       `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstInternationalAreaCodeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstInternationalAreaCodeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstInternationalAreaCodeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstPhoneUsage ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstPhoneUsage struct {
	EnumName string                                                                            `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstPhoneUsageDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstPhoneUsageDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhoneIstPhoneUsageDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhonePhoneUsage ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhonePhoneUsage struct {
	EnumName string                                                                         `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhonePhoneUsageDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhonePhoneUsageDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactPhonePhoneUsageDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactRelationship ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactRelationship struct {
	EnumName string                                                                      `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoEmergencyContactRelationshipDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoEmergencyContactRelationshipDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoEmergencyContactRelationshipDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoGender ...
type SearchCoreHRPreHireRespItemPersonInfoGender struct {
	EnumName string                                                `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoGenderDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoGenderDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoGenderDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducation ...
type SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducation struct {
	School           []*SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationSchool         `json:"school,omitempty"`              // 学校
	LevelOfEducation *SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationLevelOfEducation `json:"level_of_education,omitempty"`  // 学历
	StartDate        string                                                                         `json:"start_date,omitempty"`          // 开始日期
	EndDate          string                                                                         `json:"end_date,omitempty"`            // 结束日期
	FieldOfStudy     []*SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationFieldOfStudy   `json:"field_of_study,omitempty"`      // 专业
	Degree           *SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationDegree           `json:"degree,omitempty"`              // 学位
	SchoolName       *SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationSchoolName       `json:"school_name,omitempty"`         // 学校名称
	FieldOfStudyName *SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationFieldOfStudyName `json:"field_of_study_name,omitempty"` // 专业名称
	CountryRegionID  string                                                                         `json:"country_region_id,omitempty"`   // 国家地区 ID
	ExpectedEndDate  string                                                                         `json:"expected_end_date,omitempty"`   // 预期结束日期
	CustomFields     []*SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationCustomField    `json:"custom_fields,omitempty"`       // 自定义字段
}

// SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationCustomField ...
type SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationCustomField struct {
	CustomApiName string                                                                        `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                                         `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                                        `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationCustomFieldName ...
type SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationDegree ...
type SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationDegree struct {
	EnumName string                                                                        `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationDegreeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationDegreeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationDegreeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationFieldOfStudy ...
type SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationFieldOfStudy struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationFieldOfStudyName ...
type SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationFieldOfStudyName struct {
	EnumName string                                                                                  `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationFieldOfStudyNameDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationFieldOfStudyNameDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationFieldOfStudyNameDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationLevelOfEducation ...
type SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationLevelOfEducation struct {
	EnumName string                                                                                  `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationLevelOfEducationDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationLevelOfEducationDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationLevelOfEducationDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationSchool ...
type SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationSchool struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationSchoolName ...
type SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationSchoolName struct {
	EnumName string                                                                            `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationSchoolNameDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationSchoolNameDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoHighestDegreeOfEducationSchoolNameDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducation ...
type SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducation struct {
	School           []*SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationSchool         `json:"school,omitempty"`              // 学校
	LevelOfEducation *SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationLevelOfEducation `json:"level_of_education,omitempty"`  // 学历
	StartDate        string                                                                        `json:"start_date,omitempty"`          // 开始日期
	EndDate          string                                                                        `json:"end_date,omitempty"`            // 结束日期
	FieldOfStudy     []*SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationFieldOfStudy   `json:"field_of_study,omitempty"`      // 专业
	Degree           *SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationDegree           `json:"degree,omitempty"`              // 学位
	SchoolName       *SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationSchoolName       `json:"school_name,omitempty"`         // 学校名称
	FieldOfStudyName *SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationFieldOfStudyName `json:"field_of_study_name,omitempty"` // 专业名称
	CountryRegionID  string                                                                        `json:"country_region_id,omitempty"`   // 国家地区ID
	ExpectedEndDate  string                                                                        `json:"expected_end_date,omitempty"`   // 预期结束日期
	CustomFields     []*SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationCustomField    `json:"custom_fields,omitempty"`       // 自定义字段
}

// SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationCustomField ...
type SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationCustomField struct {
	CustomApiName string                                                                       `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                                        `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                                       `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationCustomFieldName ...
type SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationDegree ...
type SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationDegree struct {
	EnumName string                                                                       `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationDegreeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationDegreeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationDegreeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationFieldOfStudy ...
type SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationFieldOfStudy struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationFieldOfStudyName ...
type SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationFieldOfStudyName struct {
	EnumName string                                                                                 `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationFieldOfStudyNameDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationFieldOfStudyNameDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationFieldOfStudyNameDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationLevelOfEducation ...
type SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationLevelOfEducation struct {
	EnumName string                                                                                 `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationLevelOfEducationDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationLevelOfEducationDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationLevelOfEducationDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationSchool ...
type SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationSchool struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationSchoolName ...
type SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationSchoolName struct {
	EnumName string                                                                           `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationSchoolNameDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationSchoolNameDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoHighestLevelOfEducationSchoolNameDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoHukouType ...
type SearchCoreHRPreHireRespItemPersonInfoHukouType struct {
	EnumName string                                                   `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoHukouTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoHukouTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoHukouTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoMaritalStatus ...
type SearchCoreHRPreHireRespItemPersonInfoMaritalStatus struct {
	EnumName string                                                       `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoMaritalStatusDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoMaritalStatusDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoMaritalStatusDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoName ...
type SearchCoreHRPreHireRespItemPersonInfoName struct {
	LocalPrimary                     string                                                       `json:"local_primary,omitempty"`                         // 姓 - 本地文字
	LocalFirstName                   string                                                       `json:"local_first_name,omitempty"`                      // 名 - 本地文字
	CountryRegionID                  string                                                       `json:"country_region_id,omitempty"`                     // 国家 / 地区
	NameType                         *SearchCoreHRPreHireRespItemPersonInfoNameNameType           `json:"name_type,omitempty"`                             // 姓名类型
	LocalFirstName2                  string                                                       `json:"local_first_name_2,omitempty"`                    // 名 - 第二本地文字
	LocalPrimary2                    string                                                       `json:"local_primary_2,omitempty"`                       // 姓 - 第二本地文字
	AdditionalNameType               *SearchCoreHRPreHireRespItemPersonInfoNameAdditionalNameType `json:"additional_name_type,omitempty"`                  // 补充姓名类型
	FirstName                        string                                                       `json:"first_name,omitempty"`                            // 名
	FullName                         string                                                       `json:"full_name,omitempty"`                             // 全名
	Hereditary                       string                                                       `json:"hereditary,omitempty"`                            // 姓氏称谓
	CustomName                       string                                                       `json:"custom_name,omitempty"`                           // 自定义姓名（未传入时, 姓名将默认根据所属国家 / 地区规则对相关姓、名字段拼接）
	CustomLocalName                  string                                                       `json:"custom_local_name,omitempty"`                     // 本地文字的自定义姓名（未传入时, 本地文字的姓名将默认根据所属国家 / 地区规则对本地文字的相关姓、名字段拼接）
	MiddleName                       string                                                       `json:"middle_name,omitempty"`                           // 中间名
	NamePrimary                      string                                                       `json:"name_primary,omitempty"`                          // 姓
	Secondary                        string                                                       `json:"secondary,omitempty"`                             // 第二姓氏
	Social                           *SearchCoreHRPreHireRespItemPersonInfoNameSocial             `json:"social,omitempty"`                                // 尊称
	Tertiary                         string                                                       `json:"tertiary,omitempty"`                              // 婚后姓氏
	Title                            *SearchCoreHRPreHireRespItemPersonInfoNameTitle              `json:"title,omitempty"`                                 // 头衔
	LocalMiddleName                  string                                                       `json:"local_middle_name,omitempty"`                     // 本地中间名
	LocalSecondary                   string                                                       `json:"local_secondary,omitempty"`                       // 第二姓氏 - 本地文字
	DisplayNameLocalAndWesternScript string                                                       `json:"display_name_local_and_western_script,omitempty"` // 展示姓名（本地和西方文字）
	DisplayNameLocalScript           string                                                       `json:"display_name_local_script,omitempty"`             // 展示姓名（本地文字）
	DisplayNameWesternScript         string                                                       `json:"display_name_western_script,omitempty"`           // 展示姓名（西方文字）
}

// SearchCoreHRPreHireRespItemPersonInfoNameAdditionalNameType ...
type SearchCoreHRPreHireRespItemPersonInfoNameAdditionalNameType struct {
	EnumName string                                                                `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoNameAdditionalNameTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoNameAdditionalNameTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoNameAdditionalNameTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoNameNameType ...
type SearchCoreHRPreHireRespItemPersonInfoNameNameType struct {
	EnumName string                                                      `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoNameNameTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoNameNameTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoNameNameTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoNameSocial ...
type SearchCoreHRPreHireRespItemPersonInfoNameSocial struct {
	EnumName string                                                    `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoNameSocialDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoNameSocialDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoNameSocialDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoNameTitle ...
type SearchCoreHRPreHireRespItemPersonInfoNameTitle struct {
	EnumName string                                                   `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoNameTitleDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoNameTitleDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoNameTitleDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoNationalID ...
type SearchCoreHRPreHireRespItemPersonInfoNationalID struct {
	NationalIDTypeID string                                                        `json:"national_id_type_id,omitempty"` // 国家证件类型
	NationalIDNumber string                                                        `json:"national_id_number,omitempty"`  // 证件号码
	IssueDate        string                                                        `json:"issue_date,omitempty"`          // 证件签发日期
	ExpirationDate   string                                                        `json:"expiration_date,omitempty"`     // 证件到期日期
	CountryRegionID  string                                                        `json:"country_region_id,omitempty"`   // 国家 / 地区
	IssuedBy         string                                                        `json:"issued_by,omitempty"`           // 证件签发机构
	CustomFields     []*SearchCoreHRPreHireRespItemPersonInfoNationalIDCustomField `json:"custom_fields,omitempty"`       // 自定义字段
}

// SearchCoreHRPreHireRespItemPersonInfoNationalIDCustomField ...
type SearchCoreHRPreHireRespItemPersonInfoNationalIDCustomField struct {
	CustomApiName string                                                          `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemPersonInfoNationalIDCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                           `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                          `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemPersonInfoNationalIDCustomFieldName ...
type SearchCoreHRPreHireRespItemPersonInfoNationalIDCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemPersonInfoPersonInfoChn ...
type SearchCoreHRPreHireRespItemPersonInfoPersonInfoChn struct {
	NativeRegion  string                                                       `json:"native_region,omitempty"`  // 籍贯 ID, 字段权限要求（满足任一）: 获取籍贯信息, 读写籍贯信息
	HukouType     *SearchCoreHRPreHireRespItemPersonInfoPersonInfoChnHukouType `json:"hukou_type,omitempty"`     // 户口类型, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/server-docs/corehr-v1/basic-infomation/custom_field/get_by_param)接口获取, 按如下参数查询即可: custom_api_name: hukou_type, object_api_name: person_info_chn, 字段权限要求（满足任一）: 获取户口信息, 读写户口信息
	HukouLocation string                                                       `json:"hukou_location,omitempty"` // 户口所在地, 字段权限要求（满足任一）: 获取户口信息, 读写户口信息
}

// SearchCoreHRPreHireRespItemPersonInfoPersonInfoChnHukouType ...
type SearchCoreHRPreHireRespItemPersonInfoPersonInfoChnHukouType struct {
	EnumName string                                                                `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoPersonInfoChnHukouTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoPersonInfoChnHukouTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoPersonInfoChnHukouTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoPersonalProfile ...
type SearchCoreHRPreHireRespItemPersonInfoPersonalProfile struct {
	PersonalProfileType *SearchCoreHRPreHireRespItemPersonInfoPersonalProfilePersonalProfileType `json:"personal_profile_type,omitempty"` // 资料类型
	Files               []*SearchCoreHRPreHireRespItemPersonInfoPersonalProfileFile              `json:"files,omitempty"`                 // 上传文件列表
}

// SearchCoreHRPreHireRespItemPersonInfoPersonalProfileFile ...
type SearchCoreHRPreHireRespItemPersonInfoPersonalProfileFile struct {
	ID string `json:"id,omitempty"` // 上传文件ID
}

// SearchCoreHRPreHireRespItemPersonInfoPersonalProfilePersonalProfileType ...
type SearchCoreHRPreHireRespItemPersonInfoPersonalProfilePersonalProfileType struct {
	EnumName string                                                                            `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoPersonalProfilePersonalProfileTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoPersonalProfilePersonalProfileTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoPersonalProfilePersonalProfileTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoPhone ...
type SearchCoreHRPreHireRespItemPersonInfoPhone struct {
	InternationalAreaCode *SearchCoreHRPreHireRespItemPersonInfoPhoneInternationalAreaCode `json:"international_area_code,omitempty"` // 国家区号
	PhoneNumber           string                                                           `json:"phone_number,omitempty"`            // 电话号码
	FormattedPhoneNumber  string                                                           `json:"formatted_phone_number,omitempty"`  // 完整电话号码
	DeviceType            *SearchCoreHRPreHireRespItemPersonInfoPhoneDeviceType            `json:"device_type,omitempty"`             // 设备类型
	PhoneUsage            *SearchCoreHRPreHireRespItemPersonInfoPhonePhoneUsage            `json:"phone_usage,omitempty"`             // 电话用途
	IsPrimary             bool                                                             `json:"is_primary,omitempty"`              // 主要电话
	IsPublic              bool                                                             `json:"is_public,omitempty"`               // 公开电话
}

// SearchCoreHRPreHireRespItemPersonInfoPhoneDeviceType ...
type SearchCoreHRPreHireRespItemPersonInfoPhoneDeviceType struct {
	EnumName string                                                         `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoPhoneDeviceTypeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoPhoneDeviceTypeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoPhoneDeviceTypeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoPhoneInternationalAreaCode ...
type SearchCoreHRPreHireRespItemPersonInfoPhoneInternationalAreaCode struct {
	EnumName string                                                                    `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoPhoneInternationalAreaCodeDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoPhoneInternationalAreaCodeDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoPhoneInternationalAreaCodeDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoPhonePhoneUsage ...
type SearchCoreHRPreHireRespItemPersonInfoPhonePhoneUsage struct {
	EnumName string                                                         `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoPhonePhoneUsageDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoPhonePhoneUsageDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoPhonePhoneUsageDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoRace ...
type SearchCoreHRPreHireRespItemPersonInfoRace struct {
	EnumName string                                              `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoRaceDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoRaceDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoRaceDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoReligion ...
type SearchCoreHRPreHireRespItemPersonInfoReligion struct {
	EnumName string                                                  `json:"enum_name,omitempty"` // 枚举值
	Display  []*SearchCoreHRPreHireRespItemPersonInfoReligionDisplay `json:"display,omitempty"`   // 枚举多语展示
}

// SearchCoreHRPreHireRespItemPersonInfoReligionDisplay ...
type SearchCoreHRPreHireRespItemPersonInfoReligionDisplay struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoWorkExperience ...
type SearchCoreHRPreHireRespItemPersonInfoWorkExperience struct {
	CompanyOrganization []*SearchCoreHRPreHireRespItemPersonInfoWorkExperienceCompanyOrganization `json:"company_organization,omitempty"` // 公司 / 组织
	Department          []*SearchCoreHRPreHireRespItemPersonInfoWorkExperienceDepartment          `json:"department,omitempty"`           // 部门
	Job                 []*SearchCoreHRPreHireRespItemPersonInfoWorkExperienceJob                 `json:"job,omitempty"`                  // 岗位
	Description         []*SearchCoreHRPreHireRespItemPersonInfoWorkExperienceDescription         `json:"description,omitempty"`          // 工作描述
	StartDate           string                                                                    `json:"start_date,omitempty"`           // 开始日期
	EndDate             string                                                                    `json:"end_date,omitempty"`             // 结束日期
	CustomFields        []*SearchCoreHRPreHireRespItemPersonInfoWorkExperienceCustomField         `json:"custom_fields,omitempty"`        // 自定义字段
}

// SearchCoreHRPreHireRespItemPersonInfoWorkExperienceCompanyOrganization ...
type SearchCoreHRPreHireRespItemPersonInfoWorkExperienceCompanyOrganization struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoWorkExperienceCustomField ...
type SearchCoreHRPreHireRespItemPersonInfoWorkExperienceCustomField struct {
	CustomApiName string                                                              `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *SearchCoreHRPreHireRespItemPersonInfoWorkExperienceCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                               `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                              `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同（如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05"）
}

// SearchCoreHRPreHireRespItemPersonInfoWorkExperienceCustomFieldName ...
type SearchCoreHRPreHireRespItemPersonInfoWorkExperienceCustomFieldName struct {
	ZhCn string `json:"zh_cn,omitempty"` // 中文
	EnUs string `json:"en_us,omitempty"` // 英文
}

// SearchCoreHRPreHireRespItemPersonInfoWorkExperienceDepartment ...
type SearchCoreHRPreHireRespItemPersonInfoWorkExperienceDepartment struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoWorkExperienceDescription ...
type SearchCoreHRPreHireRespItemPersonInfoWorkExperienceDescription struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemPersonInfoWorkExperienceJob ...
type SearchCoreHRPreHireRespItemPersonInfoWorkExperienceJob struct {
	Lang  string `json:"lang,omitempty"`  // 语言
	Value string `json:"value,omitempty"` // 内容
}

// SearchCoreHRPreHireRespItemProbationInfo ...
type SearchCoreHRPreHireRespItemProbationInfo struct {
	ProbationStartDate string `json:"probation_start_date,omitempty"` // 试用期开始日期
	ProbationEndDate   string `json:"probation_end_date,omitempty"`   // 试用期结束日期
	ProbationPeriod    int64  `json:"probation_period,omitempty"`     // 试用期时长（单位: 天）
}

// searchCoreHRPreHireResp ...
type searchCoreHRPreHireResp struct {
	Code  int64                    `json:"code,omitempty"` // 错误码, 非 0 表示失败
	Msg   string                   `json:"msg,omitempty"`  // 错误描述
	Data  *SearchCoreHRPreHireResp `json:"data,omitempty"`
	Error *ErrorDetail             `json:"error,omitempty"`
}
