// 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"
)

// UpdateCoreHRPerson 更新员工的个人信息
//
// doc: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/person/patch
// new doc: https://open.feishu.cn/document/server-docs/corehr-v1/employee/person/patch-2
func (r *CoreHRService) UpdateCoreHRPerson(ctx context.Context, request *UpdateCoreHRPersonReq, options ...MethodOptionFunc) (*UpdateCoreHRPersonResp, *Response, error) {
	if r.cli.mock.mockCoreHRUpdateCoreHRPerson != nil {
		r.cli.Log(ctx, LogLevelDebug, "[lark] CoreHR#UpdateCoreHRPerson mock enable")
		return r.cli.mock.mockCoreHRUpdateCoreHRPerson(ctx, request, options...)
	}

	req := &RawRequestReq{
		Scope:                 "CoreHR",
		API:                   "UpdateCoreHRPerson",
		Method:                "PATCH",
		URL:                   r.cli.openBaseURL + "/open-apis/corehr/v2/persons/:person_id",
		Body:                  request,
		MethodOption:          newMethodOption(options),
		NeedTenantAccessToken: true,
	}
	resp := new(updateCoreHRPersonResp)

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

// MockCoreHRUpdateCoreHRPerson mock CoreHRUpdateCoreHRPerson method
func (r *Mock) MockCoreHRUpdateCoreHRPerson(f func(ctx context.Context, request *UpdateCoreHRPersonReq, options ...MethodOptionFunc) (*UpdateCoreHRPersonResp, *Response, error)) {
	r.mockCoreHRUpdateCoreHRPerson = f
}

// UnMockCoreHRUpdateCoreHRPerson un-mock CoreHRUpdateCoreHRPerson method
func (r *Mock) UnMockCoreHRUpdateCoreHRPerson() {
	r.mockCoreHRUpdateCoreHRPerson = nil
}

// UpdateCoreHRPersonReq ...
type UpdateCoreHRPersonReq struct {
	PersonID              string                                       `path:"person_id" json:"-"`               // 个人信息 ID。该 ID 在创建个人信息时可从响应体中获取（person_id）, 此外你也可以调用[搜索员工信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/employee/search)接口, 获取指定员工的 person_id, 示例值: "12454646"
	ClientToken           *string                                      `query:"client_token" json:"-"`           // 操作的唯一标识, 用于幂等的进行更新操作, 格式为标准的 UUIDV4。此值为空表示将发起一次新的请求, 此值非空表示幂等的进行更新操作, 示例值: "fe599b60-450f-46ff-b2ef-9f6675625b97"
	NoNeedQuery           *bool                                        `query:"no_need_query" json:"-"`          // 根据no_need_query判断更新后是否返回更新后个人信息, 若填写为 “true”则只返回更新结果信息, 示例值: false
	NameList              []*UpdateCoreHRPersonReqName                 `json:"name_list,omitempty"`              // 姓名列表
	Gender                *UpdateCoreHRPersonReqGender                 `json:"gender,omitempty"`                 // 性别, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/get_by_param)接口获取, 按如下参数查询即可: custom_api_name: gender, object_api_name: person
	DateOfBirth           *string                                      `json:"date_of_birth,omitempty"`          // 出生日期, 示例值: "2020-01-01"
	NationalityIDV2       *string                                      `json:"nationality_id_v2,omitempty"`      // 国籍 ID, 可通过[查询国籍信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-nationality/search)接口查询, 示例值: "6862995757234914821"
	Race                  *UpdateCoreHRPersonReqRace                   `json:"race,omitempty"`                   // 民族 / 种族, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/get_by_param)接口获取, 按如下参数查询即可: custom_api_name: ethnicity_race, object_api_name: person
	MaritalStatus         *UpdateCoreHRPersonReqMaritalStatus          `json:"marital_status,omitempty"`         // 婚姻状况, 枚举值可查询[获取字段详情](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/get_by_param)接口获取, 按如下参数查询即可: custom_api_name: marital_status, object_api_name: person
	PhoneList             []*UpdateCoreHRPersonReqPhone                `json:"phone_list,omitempty"`             // 电话列表
	AddressList           []*UpdateCoreHRPersonReqAddress              `json:"address_list,omitempty"`           // 地址列表
	EmailList             []*UpdateCoreHRPersonReqEmail                `json:"email_list,omitempty"`             // 邮箱列表
	WorkExperienceList    []*UpdateCoreHRPersonReqWorkExperience       `json:"work_experience_list,omitempty"`   // 工作经历列表
	EducationList         []*UpdateCoreHRPersonReqEducation            `json:"education_list,omitempty"`         // 教育经历列表
	BankAccountList       []*UpdateCoreHRPersonReqBankAccount          `json:"bank_account_list,omitempty"`      // 银行账户
	NationalIDList        []*UpdateCoreHRPersonReqNationalID           `json:"national_id_list,omitempty"`       // 证件
	DependentList         []*UpdateCoreHRPersonReqDependent            `json:"dependent_list,omitempty"`         // 家庭成员列表
	EmergencyContactList  []*UpdateCoreHRPersonReqEmergencyContact     `json:"emergency_contact_list,omitempty"` // 紧急联系人列表
	DateEnteredWorkforce  *string                                      `json:"date_entered_workforce,omitempty"` // 参加工作日期, 示例值: "2020-10-01"
	ProfileImageID        *string                                      `json:"profile_image_id,omitempty"`       // 头像资源的 ID, 示例值: "dfysuc8x76dsfsw"
	PersonalProfile       []*UpdateCoreHRPersonReqPersonalProfile      `json:"personal_profile,omitempty"`       // 个人资料附件
	NativeRegion          *string                                      `json:"native_region,omitempty"`          // 籍贯 ID, 示例值: "6863326262618752111"
	HukouType             *UpdateCoreHRPersonReqHukouType              `json:"hukou_type,omitempty"`             // 户口类型, 枚举值可通过文档 [枚举常量介绍](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/feishu-people-enum-constant)户口类型（hukou_type）枚举定义部分获得
	HukouLocation         *string                                      `json:"hukou_location,omitempty"`         // 户口所在地, 示例值: "山东省平阴县"
	PoliticalAffiliations []*UpdateCoreHRPersonReqPoliticalAffiliation `json:"political_affiliations,omitempty"` // 政治面貌, 枚举值可通过文档[飞书人事枚举常量](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/feishu-people-enum-constant)政治面貌（political_affiliation）枚举定义部分获得
	TalentID              *string                                      `json:"talent_id,omitempty"`              // 人才 ID, 示例值: "6863326262618752123"
	CustomFields          []*UpdateCoreHRPersonReqCustomField          `json:"custom_fields,omitempty"`          // 自定义字段
	BornCountryRegion     *string                                      `json:"born_country_region,omitempty"`    // 出生国家/地区, 示例值: "中国"
	IsDisabled            *bool                                        `json:"is_disabled,omitempty"`            // 是否残疾, 示例值: true
	DisableCardNumber     *string                                      `json:"disable_card_number,omitempty"`    // 残疾证号, 示例值: "1110000"
	IsMartyrFamily        *bool                                        `json:"is_martyr_family,omitempty"`       // 是否烈属, 示例值: true
	MartyrCardNumber      *string                                      `json:"martyr_card_number,omitempty"`     // 烈属证号, 示例值: "1110000"
	IsOldAlone            *bool                                        `json:"is_old_alone,omitempty"`           // 是否孤老, 示例值: true
	ResidentTaxes         []*UpdateCoreHRPersonReqResidentTaxe         `json:"resident_taxes,omitempty"`         // 居民身份信息, 示例值: 6863326262618752123
	FirstEntryTime        *string                                      `json:"first_entry_time,omitempty"`       // 首次入境日期, 示例值: "2021-01-02"
	LeaveTime             *string                                      `json:"leave_time,omitempty"`             // 预计离境日期, 示例值: "2022-01-02"
}

// UpdateCoreHRPersonReqAddress ...
type UpdateCoreHRPersonReqAddress struct {
	AddressID         *string                                    `json:"address_id,omitempty"`          // 地址 ID, 示例值: "6989822217869624863"
	CountryRegionID   string                                     `json:"country_region_id,omitempty"`   // 国家 / 地区, 示例值: "6862995757234914824"
	RegionID          *string                                    `json:"region_id,omitempty"`           // 主要行政区, 示例值: "6863326815667095047"
	AddressLine1      *string                                    `json:"address_line1,omitempty"`       // 地址行 1, 示例值: "丹佛测试地址-纽埃时区"
	AddressLine2      *string                                    `json:"address_line2,omitempty"`       // 地址行 2, 示例值: "PoewH"
	AddressLine3      *string                                    `json:"address_line3,omitempty"`       // 地址行 3, 示例值: "PoewH"
	AddressLine4      *string                                    `json:"address_line4,omitempty"`       // 地址行 4, 示例值: "jmwJc"
	AddressLine5      *string                                    `json:"address_line5,omitempty"`       // 地址行 5, 示例值: "jmwJc"
	AddressLine6      *string                                    `json:"address_line6,omitempty"`       // 地址行 6, 示例值: "jmwJc"
	AddressLine7      *string                                    `json:"address_line7,omitempty"`       // 地址行 7, 示例值: "jmwJc"
	AddressLine8      *string                                    `json:"address_line8,omitempty"`       // 地址行 8, 示例值: "rafSu"
	AddressLine9      *string                                    `json:"address_line9,omitempty"`       // 地址行 9, 示例值: "McPRG"
	LocalAddressLine1 *string                                    `json:"local_address_line1,omitempty"` // 地址行 1（非拉丁语系的本地文字）, 示例值: "丹佛测试地址-纽埃时区"
	LocalAddressLine2 *string                                    `json:"local_address_line2,omitempty"` // 地址行 2（非拉丁语系的本地文字）, 示例值: "PoewH"
	LocalAddressLine3 *string                                    `json:"local_address_line3,omitempty"` // 地址行 3（非拉丁语系的本地文字）, 示例值: "PoewH"
	LocalAddressLine4 *string                                    `json:"local_address_line4,omitempty"` // 地址行 4（非拉丁语系的本地文字）, 示例值: "jmwJc"
	LocalAddressLine5 *string                                    `json:"local_address_line5,omitempty"` // 地址行 5（非拉丁语系的本地文字）, 示例值: "jmwJc"
	LocalAddressLine6 *string                                    `json:"local_address_line6,omitempty"` // 地址行 6（非拉丁语系的本地文字）, 示例值: "jmwJc"
	LocalAddressLine7 *string                                    `json:"local_address_line7,omitempty"` // 地址行 7（非拉丁语系的本地文字）, 示例值: "jmwJc"
	LocalAddressLine8 *string                                    `json:"local_address_line8,omitempty"` // 地址行 8（非拉丁语系的本地文字）, 示例值: "rafSu"
	LocalAddressLine9 *string                                    `json:"local_address_line9,omitempty"` // 地址行 9（非拉丁语系的本地文字）, 示例值: "McPRG"
	PostalCode        *string                                    `json:"postal_code,omitempty"`         // 邮政编码, 示例值: "611530"
	AddressTypeList   []*UpdateCoreHRPersonReqAddressAddressType `json:"address_type_list,omitempty"`   // 地址类型
	IsPrimary         bool                                       `json:"is_primary,omitempty"`          // 主要地址, 示例值: true
	IsPublic          bool                                       `json:"is_public,omitempty"`           // 公开地址, 示例值: true
	CustomFields      []*UpdateCoreHRPersonReqAddressCustomField `json:"custom_fields,omitempty"`       // 自定义字段
}

// UpdateCoreHRPersonReqAddressAddressType ...
type UpdateCoreHRPersonReqAddressAddressType struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqAddressCustomField ...
type UpdateCoreHRPersonReqAddressCustomField struct {
	CustomApiName string `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识, 示例值: "name"
	Value         string `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7), 示例值: "231"
}

// UpdateCoreHRPersonReqBankAccount ...
type UpdateCoreHRPersonReqBankAccount struct {
	BankName          *string                                             `json:"bank_name,omitempty"`           // 银行名称, 示例值: "中国农业银行"
	BankAccountNumber string                                              `json:"bank_account_number,omitempty"` // 银行账号, 示例值: "6231200000001223"
	AccountHolder     string                                              `json:"account_holder,omitempty"`      // 开户人姓名, 示例值: "孟十五"
	BranchName        *string                                             `json:"branch_name,omitempty"`         // 支行名称, 示例值: "中国农业银行支行"
	BankIDV2          *string                                             `json:"bank_id_v2,omitempty"`          // 银行 ID, 详细信息可通过[查询银行信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-bank/search)接口查询获得, 示例值: "MDBH00000001"
	BranchIDV2        *string                                             `json:"branch_id_v2,omitempty"`        // 支行 ID, 要求必须为填入银行的支行, 详细信息可通过[查询支行信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-bank_branch/search)接口查询获得, 示例值: "MDBK00000017"
	CountryRegionID   *string                                             `json:"country_region_id,omitempty"`   // 国家/地区 ID, 详细信息可通过[查询国家/地区信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-country_region/search)接口查询获得, 示例值: "12"
	BankAccountUsage  []*UpdateCoreHRPersonReqBankAccountBankAccountUsage `json:"bank_account_usage,omitempty"`  // 银行卡用途, 枚举值可通过文档[飞书人事枚举常量](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/feishu-people-enum-constant), 银行卡用途（Bank Account Usage）枚举定义部分获得
	BankAccountType   *UpdateCoreHRPersonReqBankAccountBankAccountType    `json:"bank_account_type,omitempty"`   // 银行卡类型, 枚举值可通过文档[飞书人事枚举常量](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/feishu-people-enum-constant), 银行卡类型（Bank Account Type）枚举定义部分获得
	CurrencyID        *string                                             `json:"currency_id,omitempty"`         // 货币id, 示例值: "12QueryCountryRegionSubdivisionDataReq"
	CustomFields      []*UpdateCoreHRPersonReqBankAccountCustomField      `json:"custom_fields,omitempty"`       // 自定义字段
}

// UpdateCoreHRPersonReqBankAccountBankAccountType ...
type UpdateCoreHRPersonReqBankAccountBankAccountType struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqBankAccountBankAccountUsage ...
type UpdateCoreHRPersonReqBankAccountBankAccountUsage struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqBankAccountCustomField ...
type UpdateCoreHRPersonReqBankAccountCustomField struct {
	CustomApiName string `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识, 示例值: "name"
	Value         string `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7), 示例值: "231"
}

// UpdateCoreHRPersonReqCustomField ...
type UpdateCoreHRPersonReqCustomField struct {
	CustomApiName string `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识, 示例值: "name"
	Value         string `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7), 示例值: "231"
}

// UpdateCoreHRPersonReqDependent ...
type UpdateCoreHRPersonReqDependent struct {
	Relationship                         *UpdateCoreHRPersonReqDependentRelationship            `json:"relationship,omitempty"`                               // 关系
	Gender                               *UpdateCoreHRPersonReqDependentGender                  `json:"gender,omitempty"`                                     // 性别
	DateOfBirth                          *string                                                `json:"date_of_birth,omitempty"`                              // 生日, 示例值: "2020-01-01"
	NationalityIDV2                      *string                                                `json:"nationality_id_v2,omitempty"`                          // 国籍 ID, 可通过[查询国籍信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-nationality/search)接口查询, 示例值: "6862995745046267401"
	NationalIDList                       []*UpdateCoreHRPersonReqDependentNationalID            `json:"national_id_list,omitempty"`                           // 证件号码
	SpousesWorkingStatus                 *UpdateCoreHRPersonReqDependentSpousesWorkingStatus    `json:"spouses_working_status,omitempty"`                     // 配偶工作状态
	IsThisPersonCoveredByHealthInsurance *bool                                                  `json:"is_this_person_covered_by_health_insurance,omitempty"` // 包含家属医疗保险, 示例值: true
	IsThisPersonAllowedForTaxDeduction   *bool                                                  `json:"is_this_person_allowed_for_tax_deduction,omitempty"`   // 允许家属抵扣税款, 示例值: false
	CustomFields                         []*UpdateCoreHRPersonReqDependentCustomField           `json:"custom_fields,omitempty"`                              // 自定义字段
	DependentName                        *string                                                `json:"dependent_name,omitempty"`                             // 家庭成员姓名, 示例值: "张三"
	Employer                             *string                                                `json:"employer,omitempty"`                                   // 工作单位, 示例值: "海淀区交警大队"
	Job                                  *string                                                `json:"job,omitempty"`                                        // 岗位, 示例值: "保安"
	Phone                                *UpdateCoreHRPersonReqDependentPhone                   `json:"phone,omitempty"`                                      // 电话
	Address                              *UpdateCoreHRPersonReqDependentAddress                 `json:"address,omitempty"`                                    // 联系地址
	BirthCertificateOfChild              *UpdateCoreHRPersonReqDependentBirthCertificateOfChild `json:"birth_certificate_of_child,omitempty"`                 // 出生证明
}

// UpdateCoreHRPersonReqDependentAddress ...
type UpdateCoreHRPersonReqDependentAddress struct {
	AddressID         *string                                             `json:"address_id,omitempty"`          // 地址 ID, 示例值: "6989822217869624863"
	CountryRegionID   string                                              `json:"country_region_id,omitempty"`   // 国家 / 地区, 示例值: "6862995757234914824"
	RegionID          *string                                             `json:"region_id,omitempty"`           // 主要行政区, 示例值: "6863326815667095047"
	AddressLine1      *string                                             `json:"address_line1,omitempty"`       // 地址行 1, 示例值: "丹佛测试地址-纽埃时区"
	AddressLine2      *string                                             `json:"address_line2,omitempty"`       // 地址行 2, 示例值: "PoewH"
	AddressLine3      *string                                             `json:"address_line3,omitempty"`       // 地址行 3, 示例值: "PoewH"
	AddressLine4      *string                                             `json:"address_line4,omitempty"`       // 地址行 4, 示例值: "jmwJc"
	AddressLine5      *string                                             `json:"address_line5,omitempty"`       // 地址行 5, 示例值: "jmwJc"
	AddressLine6      *string                                             `json:"address_line6,omitempty"`       // 地址行 6, 示例值: "jmwJc"
	AddressLine7      *string                                             `json:"address_line7,omitempty"`       // 地址行 7, 示例值: "jmwJc"
	AddressLine8      *string                                             `json:"address_line8,omitempty"`       // 地址行 8, 示例值: "rafSu"
	AddressLine9      *string                                             `json:"address_line9,omitempty"`       // 地址行 9, 示例值: "McPRG"
	LocalAddressLine1 *string                                             `json:"local_address_line1,omitempty"` // 地址行 1（非拉丁语系的本地文字）, 示例值: "丹佛测试地址-纽埃时区"
	LocalAddressLine2 *string                                             `json:"local_address_line2,omitempty"` // 地址行 2（非拉丁语系的本地文字）, 示例值: "PoewH"
	LocalAddressLine3 *string                                             `json:"local_address_line3,omitempty"` // 地址行 3（非拉丁语系的本地文字）, 示例值: "PoewH"
	LocalAddressLine4 *string                                             `json:"local_address_line4,omitempty"` // 地址行 4（非拉丁语系的本地文字）, 示例值: "jmwJc"
	LocalAddressLine5 *string                                             `json:"local_address_line5,omitempty"` // 地址行 5（非拉丁语系的本地文字）, 示例值: "jmwJc"
	LocalAddressLine6 *string                                             `json:"local_address_line6,omitempty"` // 地址行 6（非拉丁语系的本地文字）, 示例值: "jmwJc"
	LocalAddressLine7 *string                                             `json:"local_address_line7,omitempty"` // 地址行 7（非拉丁语系的本地文字）, 示例值: "jmwJc"
	LocalAddressLine8 *string                                             `json:"local_address_line8,omitempty"` // 地址行 8（非拉丁语系的本地文字）, 示例值: "rafSu"
	LocalAddressLine9 *string                                             `json:"local_address_line9,omitempty"` // 地址行 9（非拉丁语系的本地文字）, 示例值: "McPRG"
	PostalCode        *string                                             `json:"postal_code,omitempty"`         // 邮政编码, 示例值: "611530"
	CustomFields      []*UpdateCoreHRPersonReqDependentAddressCustomField `json:"custom_fields,omitempty"`       // 自定义字段
}

// UpdateCoreHRPersonReqDependentAddressCustomField ...
type UpdateCoreHRPersonReqDependentAddressCustomField struct {
	CustomApiName string `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识, 示例值: "name"
	Value         string `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7), 示例值: "231"
}

// UpdateCoreHRPersonReqDependentBirthCertificateOfChild ...
type UpdateCoreHRPersonReqDependentBirthCertificateOfChild struct {
	ID *string `json:"id,omitempty"` // 上传文件ID, 示例值: "150018109586e8ea745e47ae8feb3722dbe1d03a181336393633393133303431393831343930373235150200"
}

// UpdateCoreHRPersonReqDependentCustomField ...
type UpdateCoreHRPersonReqDependentCustomField struct {
	CustomApiName string `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识, 示例值: "name"
	Value         string `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7), 示例值: "231"
}

// UpdateCoreHRPersonReqDependentGender ...
type UpdateCoreHRPersonReqDependentGender struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqDependentNationalID ...
type UpdateCoreHRPersonReqDependentNationalID struct {
	NationalIDTypeID string                                                 `json:"national_id_type_id,omitempty"` // 国家证件类型, 示例值: "6863330041896371725"
	NationalIDNumber string                                                 `json:"national_id_number,omitempty"`  // 证件号码, 示例值: "1231131333"
	IssueDate        *string                                                `json:"issue_date,omitempty"`          // 证件签发日期, 示例值: "2020-04-01"
	ExpirationDate   *string                                                `json:"expiration_date,omitempty"`     // 证件到期日期, 示例值: "2020-05-21"
	CountryRegionID  string                                                 `json:"country_region_id,omitempty"`   // 国家 / 地区, 示例值: "6862995757234914824"
	IssuedBy         *string                                                `json:"issued_by,omitempty"`           // 证件签发机构, 示例值: "北京市公安局"
	CustomFields     []*UpdateCoreHRPersonReqDependentNationalIDCustomField `json:"custom_fields,omitempty"`       // 自定义字段
}

// UpdateCoreHRPersonReqDependentNationalIDCustomField ...
type UpdateCoreHRPersonReqDependentNationalIDCustomField struct {
	CustomApiName string `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识, 示例值: "name"
	Value         string `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7), 示例值: "231"
}

// UpdateCoreHRPersonReqDependentPhone ...
type UpdateCoreHRPersonReqDependentPhone struct {
	InternationalAreaCode *UpdateCoreHRPersonReqDependentPhoneInternationalAreaCode `json:"international_area_code,omitempty"` // 国家区号
	PhoneNumber           string                                                    `json:"phone_number,omitempty"`            // 电话号码, 示例值: "010-12345678"
}

// UpdateCoreHRPersonReqDependentPhoneInternationalAreaCode ...
type UpdateCoreHRPersonReqDependentPhoneInternationalAreaCode struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqDependentRelationship ...
type UpdateCoreHRPersonReqDependentRelationship struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqDependentSpousesWorkingStatus ...
type UpdateCoreHRPersonReqDependentSpousesWorkingStatus struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqEducation ...
type UpdateCoreHRPersonReqEducation struct {
	School           []*UpdateCoreHRPersonReqEducationSchool         `json:"school,omitempty"`              // 学校
	LevelOfEducation *UpdateCoreHRPersonReqEducationLevelOfEducation `json:"level_of_education,omitempty"`  // 学历
	StartDate        *string                                         `json:"start_date,omitempty"`          // 开始日期, 示例值: "2011-09-01"
	EndDate          *string                                         `json:"end_date,omitempty"`            // 结束日期, 示例值: "2015-06-30"
	FieldOfStudy     []*UpdateCoreHRPersonReqEducationFieldOfStudy   `json:"field_of_study,omitempty"`      // 专业
	Degree           *UpdateCoreHRPersonReqEducationDegree           `json:"degree,omitempty"`              // 学位
	SchoolName       *UpdateCoreHRPersonReqEducationSchoolName       `json:"school_name,omitempty"`         // 学校名称
	FieldOfStudyName *UpdateCoreHRPersonReqEducationFieldOfStudyName `json:"field_of_study_name,omitempty"` // 专业名称
	CountryRegionID  *string                                         `json:"country_region_id,omitempty"`   // 国家地区ID, 示例值: "1"
	ExpectedEndDate  *string                                         `json:"expected_end_date,omitempty"`   // 预期结束日期, 示例值: "2011-09-01"
	CustomFields     []*UpdateCoreHRPersonReqEducationCustomField    `json:"custom_fields,omitempty"`       // 自定义字段
}

// UpdateCoreHRPersonReqEducationCustomField ...
type UpdateCoreHRPersonReqEducationCustomField struct {
	CustomApiName string `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识, 示例值: "name"
	Value         string `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7), 示例值: "231"
}

// UpdateCoreHRPersonReqEducationDegree ...
type UpdateCoreHRPersonReqEducationDegree struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqEducationFieldOfStudy ...
type UpdateCoreHRPersonReqEducationFieldOfStudy struct {
	Lang  string `json:"lang,omitempty"`  // 语言, 示例值: "zh-CN"
	Value string `json:"value,omitempty"` // 内容, 示例值: "张三"
}

// UpdateCoreHRPersonReqEducationFieldOfStudyName ...
type UpdateCoreHRPersonReqEducationFieldOfStudyName struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqEducationLevelOfEducation ...
type UpdateCoreHRPersonReqEducationLevelOfEducation struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqEducationSchool ...
type UpdateCoreHRPersonReqEducationSchool struct {
	Lang  string `json:"lang,omitempty"`  // 语言, 示例值: "zh-CN"
	Value string `json:"value,omitempty"` // 内容, 示例值: "张三"
}

// UpdateCoreHRPersonReqEducationSchoolName ...
type UpdateCoreHRPersonReqEducationSchoolName struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

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

// UpdateCoreHRPersonReqEmailEmailUsage ...
type UpdateCoreHRPersonReqEmailEmailUsage struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqEmergencyContact ...
type UpdateCoreHRPersonReqEmergencyContact struct {
	Name         *UpdateCoreHRPersonReqEmergencyContactName         `json:"name,omitempty"`         // 姓名
	Relationship *UpdateCoreHRPersonReqEmergencyContactRelationship `json:"relationship,omitempty"` // 关系
	PhoneIst     []*UpdateCoreHRPersonReqEmergencyContactPhoneIst   `json:"phone_ist,omitempty"`    // 电话
	LegalName    *string                                            `json:"legal_name,omitempty"`   // 法定姓名, 示例值: "张三"
}

// UpdateCoreHRPersonReqEmergencyContactName ...
type UpdateCoreHRPersonReqEmergencyContactName struct {
	LocalPrimary       *string                                                      `json:"local_primary,omitempty"`        // 姓 - 本地文字, 示例值: "黄"
	LocalFirstName     *string                                                      `json:"local_first_name,omitempty"`     // 名 - 本地文字, 示例值: "四"
	CountryRegionID    string                                                       `json:"country_region_id,omitempty"`    // 国家 / 地区, 示例值: "6862995757234914824"
	NameType           *UpdateCoreHRPersonReqEmergencyContactNameNameType           `json:"name_type,omitempty"`            // 姓名类型
	LocalFirstName2    *string                                                      `json:"local_first_name_2,omitempty"`   // 名 - 第二本地文字, 示例值: "五"
	LocalPrimary2      *string                                                      `json:"local_primary_2,omitempty"`      // 姓 - 第二本地文字, 示例值: "王"
	AdditionalNameType *UpdateCoreHRPersonReqEmergencyContactNameAdditionalNameType `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             *UpdateCoreHRPersonReqEmergencyContactNameSocial             `json:"social,omitempty"`               // 尊称, 示例值: 王大帅
	Tertiary           *string                                                      `json:"tertiary,omitempty"`             // 婚后姓氏, 示例值: "王"
	Title              *UpdateCoreHRPersonReqEmergencyContactNameTitle              `json:"title,omitempty"`                // 头衔, 示例值: 王
	LocalMiddleName    *string                                                      `json:"local_middle_name,omitempty"`    // 本地中间名, 示例值: "大"
	LocalSecondary     *string                                                      `json:"local_secondary,omitempty"`      // 第二姓氏 - 本地文字, 示例值: "王"
}

// UpdateCoreHRPersonReqEmergencyContactNameAdditionalNameType ...
type UpdateCoreHRPersonReqEmergencyContactNameAdditionalNameType struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqEmergencyContactNameNameType ...
type UpdateCoreHRPersonReqEmergencyContactNameNameType struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqEmergencyContactNameSocial ...
type UpdateCoreHRPersonReqEmergencyContactNameSocial struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqEmergencyContactNameTitle ...
type UpdateCoreHRPersonReqEmergencyContactNameTitle struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqEmergencyContactPhoneIst ...
type UpdateCoreHRPersonReqEmergencyContactPhoneIst struct {
	InternationalAreaCode *UpdateCoreHRPersonReqEmergencyContactPhoneIstInternationalAreaCode `json:"international_area_code,omitempty"` // 国家区号
	PhoneNumber           string                                                              `json:"phone_number,omitempty"`            // 电话号码, 示例值: "010-12345678"
}

// UpdateCoreHRPersonReqEmergencyContactPhoneIstInternationalAreaCode ...
type UpdateCoreHRPersonReqEmergencyContactPhoneIstInternationalAreaCode struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqEmergencyContactRelationship ...
type UpdateCoreHRPersonReqEmergencyContactRelationship struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqGender ...
type UpdateCoreHRPersonReqGender struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqHukouType ...
type UpdateCoreHRPersonReqHukouType struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqMaritalStatus ...
type UpdateCoreHRPersonReqMaritalStatus struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqName ...
type UpdateCoreHRPersonReqName struct {
	LocalPrimary       *string                                      `json:"local_primary,omitempty"`        // 姓 - 本地文字, 示例值: "黄"
	LocalFirstName     *string                                      `json:"local_first_name,omitempty"`     // 名 - 本地文字, 示例值: "四"
	CountryRegionID    string                                       `json:"country_region_id,omitempty"`    // 国家 / 地区, 示例值: "6862995757234914824"
	NameType           *UpdateCoreHRPersonReqNameNameType           `json:"name_type,omitempty"`            // 姓名类型
	LocalFirstName2    *string                                      `json:"local_first_name_2,omitempty"`   // 名 - 第二本地文字, 示例值: "五"
	LocalPrimary2      *string                                      `json:"local_primary_2,omitempty"`      // 姓 - 第二本地文字, 示例值: "王"
	AdditionalNameType *UpdateCoreHRPersonReqNameAdditionalNameType `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             *UpdateCoreHRPersonReqNameSocial             `json:"social,omitempty"`               // 尊称, 示例值: 王大帅
	Tertiary           *string                                      `json:"tertiary,omitempty"`             // 婚后姓氏, 示例值: "王"
	Title              *UpdateCoreHRPersonReqNameTitle              `json:"title,omitempty"`                // 头衔, 示例值: 王
	LocalMiddleName    *string                                      `json:"local_middle_name,omitempty"`    // 本地中间名, 示例值: "大"
	LocalSecondary     *string                                      `json:"local_secondary,omitempty"`      // 第二姓氏 - 本地文字, 示例值: "王"
}

// UpdateCoreHRPersonReqNameAdditionalNameType ...
type UpdateCoreHRPersonReqNameAdditionalNameType struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqNameNameType ...
type UpdateCoreHRPersonReqNameNameType struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqNameSocial ...
type UpdateCoreHRPersonReqNameSocial struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqNameTitle ...
type UpdateCoreHRPersonReqNameTitle struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqNationalID ...
type UpdateCoreHRPersonReqNationalID struct {
	NationalIDTypeID string                                        `json:"national_id_type_id,omitempty"` // 国家证件类型, 示例值: "6863330041896371725"
	NationalIDNumber string                                        `json:"national_id_number,omitempty"`  // 证件号码, 示例值: "1231131333"
	IssueDate        *string                                       `json:"issue_date,omitempty"`          // 证件签发日期, 示例值: "2020-04-01"
	ExpirationDate   *string                                       `json:"expiration_date,omitempty"`     // 证件到期日期, 示例值: "2020-05-21"
	CountryRegionID  string                                        `json:"country_region_id,omitempty"`   // 国家 / 地区, 示例值: "6862995757234914824"
	IssuedBy         *string                                       `json:"issued_by,omitempty"`           // 证件签发机构, 示例值: "北京市公安局"
	CustomFields     []*UpdateCoreHRPersonReqNationalIDCustomField `json:"custom_fields,omitempty"`       // 自定义字段
}

// UpdateCoreHRPersonReqNationalIDCustomField ...
type UpdateCoreHRPersonReqNationalIDCustomField struct {
	CustomApiName string `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识, 示例值: "name"
	Value         string `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7), 示例值: "231"
}

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

// UpdateCoreHRPersonReqPersonalProfileFile ...
type UpdateCoreHRPersonReqPersonalProfileFile struct {
	ID *string `json:"id,omitempty"` // 上传文件ID, 示例值: "150018109586e8ea745e47ae8feb3722dbe1d03a181336393633393133303431393831343930373235150200"
}

// UpdateCoreHRPersonReqPersonalProfilePersonalProfileType ...
type UpdateCoreHRPersonReqPersonalProfilePersonalProfileType struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqPhone ...
type UpdateCoreHRPersonReqPhone struct {
	InternationalAreaCode *UpdateCoreHRPersonReqPhoneInternationalAreaCode `json:"international_area_code,omitempty"` // 国家区号
	PhoneNumber           string                                           `json:"phone_number,omitempty"`            // 电话号码, 示例值: "010-12345678"
}

// UpdateCoreHRPersonReqPhoneInternationalAreaCode ...
type UpdateCoreHRPersonReqPhoneInternationalAreaCode struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqPoliticalAffiliation ...
type UpdateCoreHRPersonReqPoliticalAffiliation struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqRace ...
type UpdateCoreHRPersonReqRace struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqResidentTaxe ...
type UpdateCoreHRPersonReqResidentTaxe struct {
	YearResidentTax    string                                           `json:"year_resident_tax,omitempty"`     // 年度, 示例值: "2023"
	ResidentStatus     *UpdateCoreHRPersonReqResidentTaxeResidentStatus `json:"resident_status,omitempty"`       // 居民身份, 枚举值 api_name 可通过 [获取字段详情](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/get_by_param)接口查询, 查询参数如下: object_api_name = "resident_tax" - custom_api_name = "resident_status"
	TaxCountryRegionID *string                                          `json:"tax_country_region_id,omitempty"` // 国家/地区, 可通过[查询国家/地区信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-country_region/search)接口查询, 示例值: "中国"
	CustomFields       []*UpdateCoreHRPersonReqResidentTaxeCustomField  `json:"custom_fields,omitempty"`         // 自定义字段
}

// UpdateCoreHRPersonReqResidentTaxeCustomField ...
type UpdateCoreHRPersonReqResidentTaxeCustomField struct {
	FieldName string `json:"field_name,omitempty"` // 字段名, 示例值: "name"
	Value     string `json:"value,omitempty"`      // 字段值, 是json转义后的字符串, 根据元数据定义不同, 字段格式不同(123, 123.23, true, [\"id1\", \"id2\], 2006-01-02 15:04:05]), 示例值: "Sandy"
}

// UpdateCoreHRPersonReqResidentTaxeResidentStatus ...
type UpdateCoreHRPersonReqResidentTaxeResidentStatus struct {
	EnumName string `json:"enum_name,omitempty"` // 枚举值, 示例值: "phone_type"
}

// UpdateCoreHRPersonReqWorkExperience ...
type UpdateCoreHRPersonReqWorkExperience struct {
	CompanyOrganization []*UpdateCoreHRPersonReqWorkExperienceCompanyOrganization `json:"company_organization,omitempty"` // 公司 / 组织
	Department          []*UpdateCoreHRPersonReqWorkExperienceDepartment          `json:"department,omitempty"`           // 部门
	Job                 []*UpdateCoreHRPersonReqWorkExperienceJob                 `json:"job,omitempty"`                  // 岗位
	Description         []*UpdateCoreHRPersonReqWorkExperienceDescription         `json:"description,omitempty"`          // 工作描述
	StartDate           *string                                                   `json:"start_date,omitempty"`           // 开始日期, 示例值: "2020-01-01"
	EndDate             *string                                                   `json:"end_date,omitempty"`             // 结束日期, 示例值: "2020-01-01"
	CustomFields        []*UpdateCoreHRPersonReqWorkExperienceCustomField         `json:"custom_fields,omitempty"`        // 自定义字段
}

// UpdateCoreHRPersonReqWorkExperienceCompanyOrganization ...
type UpdateCoreHRPersonReqWorkExperienceCompanyOrganization struct {
	Lang  string `json:"lang,omitempty"`  // 语言, 示例值: "zh-CN"
	Value string `json:"value,omitempty"` // 内容, 示例值: "张三"
}

// UpdateCoreHRPersonReqWorkExperienceCustomField ...
type UpdateCoreHRPersonReqWorkExperienceCustomField struct {
	CustomApiName string `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识, 示例值: "name"
	Value         string `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7), 示例值: "231"
}

// UpdateCoreHRPersonReqWorkExperienceDepartment ...
type UpdateCoreHRPersonReqWorkExperienceDepartment struct {
	Lang  string `json:"lang,omitempty"`  // 语言, 示例值: "zh-CN"
	Value string `json:"value,omitempty"` // 内容, 示例值: "张三"
}

// UpdateCoreHRPersonReqWorkExperienceDescription ...
type UpdateCoreHRPersonReqWorkExperienceDescription struct {
	Lang  string `json:"lang,omitempty"`  // 语言, 示例值: "zh-CN"
	Value string `json:"value,omitempty"` // 内容, 示例值: "张三"
}

// UpdateCoreHRPersonReqWorkExperienceJob ...
type UpdateCoreHRPersonReqWorkExperienceJob struct {
	Lang  string `json:"lang,omitempty"`  // 语言, 示例值: "zh-CN"
	Value string `json:"value,omitempty"` // 内容, 示例值: "张三"
}

// UpdateCoreHRPersonResp ...
type UpdateCoreHRPersonResp struct {
	Person *UpdateCoreHRPersonRespPerson `json:"person,omitempty"` // 个人信息
}

// UpdateCoreHRPersonRespPerson ...
type UpdateCoreHRPersonRespPerson 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                 []*UpdateCoreHRPersonRespPersonName                   `json:"name_list,omitempty"`                   // 姓名列表, 字段权限要求（满足任一）: 获取法定姓名信息, 读写法定姓名信息
	Gender                   *UpdateCoreHRPersonRespPersonGender                   `json:"gender,omitempty"`                      // 性别, 枚举值可查询 [获取字段详情](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/get_by_param)接口获取, 按如下参数查询即可: custom_api_name: gender - object_api_name: person, 字段权限要求（满足任一）: 获取性别信息, 读写性别信息
	DateOfBirth              string                                                `json:"date_of_birth,omitempty"`               // 出生日期, 字段权限要求（满足任一）: 获取生日信息, 读写生日信息
	NationalityIDV2          string                                                `json:"nationality_id_v2,omitempty"`           // 国籍 ID, 可通过[查询国籍信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-nationality/search)接口查询, 字段权限要求（满足任一）: 获取国籍信息, 读写国籍信息
	Race                     *UpdateCoreHRPersonRespPersonRace                     `json:"race,omitempty"`                        // 民族 / 种族, 枚举值可查询 [获取字段详情](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/get_by_param)接口获取, 按如下参数查询即可: custom_api_name: ethnicity_race - object_api_name: person, 字段权限要求: 获取民族/种族信息
	MaritalStatus            *UpdateCoreHRPersonRespPersonMaritalStatus            `json:"marital_status,omitempty"`              // 婚姻状况, 枚举值可查询 [获取字段详情](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/get_by_param)接口获取, 按如下参数查询即可: custom_api_name: marital_status - object_api_name: person, 字段权限要求（满足任一）: 获取婚姻状况信息, 读写婚姻状况信息
	PhoneList                []*UpdateCoreHRPersonRespPersonPhone                  `json:"phone_list,omitempty"`                  // 电话列表, 字段权限要求（满足任一）: 获取个人手机号信息, 读写个人手机号信息
	AddressList              []*UpdateCoreHRPersonRespPersonAddress                `json:"address_list,omitempty"`                // 地址列表, 字段权限要求（满足任一）: 读取个人地址信息, 读写个人地址信息
	EmailList                []*UpdateCoreHRPersonRespPersonEmail                  `json:"email_list,omitempty"`                  // 邮箱列表, 字段权限要求（满足任一）: 获取个人邮箱信息, 读写个人邮箱信息
	WorkExperienceList       []*UpdateCoreHRPersonRespPersonWorkExperience         `json:"work_experience_list,omitempty"`        // 工作经历列表, 字段权限要求（满足任一）: 获取工作履历信息, 读写工作履历信息
	EducationList            []*UpdateCoreHRPersonRespPersonEducation              `json:"education_list,omitempty"`              // 教育经历列表, 字段权限要求（满足任一）: 获取教育经历信息, 读写教育经历信息
	BankAccountList          []*UpdateCoreHRPersonRespPersonBankAccount            `json:"bank_account_list,omitempty"`           // 银行账户, 字段权限要求（满足任一）: 获取银行账号列表信息, 读写银行账号信息
	NationalIDList           []*UpdateCoreHRPersonRespPersonNationalID             `json:"national_id_list,omitempty"`            // 证件, 字段权限要求（满足任一）: 获取证件信息, 读写证件信息
	DependentList            []*UpdateCoreHRPersonRespPersonDependent              `json:"dependent_list,omitempty"`              // 家庭成员列表, 字段权限要求（满足任一）: 获取家庭成员信息, 读写家庭成员信息
	EmergencyContactList     []*UpdateCoreHRPersonRespPersonEmergencyContact       `json:"emergency_contact_list,omitempty"`      // 紧急联系人列表, 字段权限要求（满足任一）: 获取紧急联系人信息, 读写紧急联系人信息
	DateEnteredWorkforce     string                                                `json:"date_entered_workforce,omitempty"`      // 参加工作日期, 字段权限要求（满足任一）: 获取参加工作日期, 读写参加工作日期
	WorkingYears             int64                                                 `json:"working_years,omitempty"`               // 工龄
	ProfileImageID           string                                                `json:"profile_image_id,omitempty"`            // 头像资源的 ID
	EmailAddress             string                                                `json:"email_address,omitempty"`               // 邮箱地址, 字段权限要求（满足任一）: 获取个人邮箱信息, 读写个人邮箱信息
	Age                      int64                                                 `json:"age,omitempty"`                         // 年龄, 字段权限要求（满足任一）: 获取生日信息, 读写生日信息
	HighestLevelOfEducation  *UpdateCoreHRPersonRespPersonHighestLevelOfEducation  `json:"highest_level_of_education,omitempty"`  // 最高学历教育经历, 字段权限要求（满足任一）: 获取教育经历信息, 读写教育经历信息
	HighestDegreeOfEducation *UpdateCoreHRPersonRespPersonHighestDegreeOfEducation `json:"highest_degree_of_education,omitempty"` // 最高学位教育经历, 字段权限要求（满足任一）: 获取教育经历信息, 读写教育经历信息
	PersonalProfile          []*UpdateCoreHRPersonRespPersonPersonalProfile        `json:"personal_profile,omitempty"`            // 个人资料附件, 字段权限要求（满足任一）: 获取个人资料信息, 读写个人资料信息
	NativeRegion             string                                                `json:"native_region,omitempty"`               // 籍贯 ID, 详细信息可通过[查询省份/行政区信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-country_region_subdivision/search)接口查询获得, 字段权限要求（满足任一）: 获取籍贯信息, 读写籍贯信息
	HukouType                *UpdateCoreHRPersonRespPersonHukouType                `json:"hukou_type,omitempty"`                  // 户口类型, 枚举值可通过文档[飞书人事枚举常量](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/feishu-people-enum-constant), 户口类型（hukou_type）枚举定义部分获得, 字段权限要求（满足任一）: 获取户口信息, 读写户口信息
	HukouLocation            string                                                `json:"hukou_location,omitempty"`              // 户口所在地, 字段权限要求（满足任一）: 获取户口信息, 读写户口信息
	TalentID                 string                                                `json:"talent_id,omitempty"`                   // 人才 ID
	CustomFields             []*UpdateCoreHRPersonRespPersonCustomField            `json:"custom_fields,omitempty"`               // 自定义字段, 字段权限要求（满足任一）: 获取个人信息自定义字段信息, 读写个人信息中的自定义字段信息
	NationalIDNumber         string                                                `json:"national_id_number,omitempty"`          // 居民身份证件号码, 字段权限要求（满足任一）: 获取证件信息, 读写证件信息
	FamilyAddress            string                                                `json:"family_address,omitempty"`              // 家庭地址, 字段权限要求（满足任一）: 读取个人地址信息, 读写个人地址信息
	BornCountryRegion        string                                                `json:"born_country_region,omitempty"`         // 出生国家/地区, 字段权限要求（满足任一）: 获取出生国家/地区信息, 读写出生国家/地区信息
	IsDisabled               bool                                                  `json:"is_disabled,omitempty"`                 // 是否残疾, 字段权限要求（满足任一）: 获取残疾信息, 读写残疾信息
	DisableCardNumber        string                                                `json:"disable_card_number,omitempty"`         // 残疾证号, 字段权限要求（满足任一）: 获取残疾信息, 读写残疾信息
	IsMartyrFamily           bool                                                  `json:"is_martyr_family,omitempty"`            // 是否烈属, 字段权限要求（满足任一）: 获取烈属信息, 读写烈属信息
	MartyrCardNumber         string                                                `json:"martyr_card_number,omitempty"`          // 烈属证号, 字段权限要求（满足任一）: 获取烈属信息, 读写烈属信息
	IsOldAlone               bool                                                  `json:"is_old_alone,omitempty"`                // 是否孤老, 字段权限要求（满足任一）: 获取孤老信息, 读写孤老信息
	ResidentTaxes            []*UpdateCoreHRPersonRespPersonResidentTaxe           `json:"resident_taxes,omitempty"`              // 居民身份信息, 字段权限要求（满足任一）: 获取居民身份信息, 读写居民身份信息
	FirstEntryTime           string                                                `json:"first_entry_time,omitempty"`            // 首次入境日期, 字段权限要求（满足任一）: 获取出入境日期信息, 读写出入境日期信息
	LeaveTime                string                                                `json:"leave_time,omitempty"`                  // 预计离境日期, 字段权限要求（满足任一）: 获取出入境日期信息, 读写出入境日期信息
}

// UpdateCoreHRPersonRespPersonAddress ...
type UpdateCoreHRPersonRespPersonAddress 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"`                   // 主要行政区
	AddressLine1             string                                            `json:"address_line1,omitempty"`               // 地址行 1
	AddressLine2             string                                            `json:"address_line2,omitempty"`               // 地址行 2
	AddressLine3             string                                            `json:"address_line3,omitempty"`               // 地址行 3
	AddressLine4             string                                            `json:"address_line4,omitempty"`               // 地址行 4
	AddressLine5             string                                            `json:"address_line5,omitempty"`               // 地址行 5
	AddressLine6             string                                            `json:"address_line6,omitempty"`               // 地址行 6
	AddressLine7             string                                            `json:"address_line7,omitempty"`               // 地址行 7
	AddressLine8             string                                            `json:"address_line8,omitempty"`               // 地址行 8
	AddressLine9             string                                            `json:"address_line9,omitempty"`               // 地址行 9
	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          []*UpdateCoreHRPersonRespPersonAddressAddressType `json:"address_type_list,omitempty"`           // 地址类型, 枚举值可通过文档[飞书人事枚举常量](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/feishu-people-enum-constant)地址类型（address_type）枚举定义部分获得
	IsPrimary                bool                                              `json:"is_primary,omitempty"`                  // 主要地址
	IsPublic                 bool                                              `json:"is_public,omitempty"`                   // 公开地址
	CustomFields             []*UpdateCoreHRPersonRespPersonAddressCustomField `json:"custom_fields,omitempty"`               // 自定义字段
}

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

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

// UpdateCoreHRPersonRespPersonAddressCustomField ...
type UpdateCoreHRPersonRespPersonAddressCustomField struct {
	CustomApiName string                                              `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *UpdateCoreHRPersonRespPersonAddressCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                               `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                              `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7)
}

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

// UpdateCoreHRPersonRespPersonBankAccount ...
type UpdateCoreHRPersonRespPersonBankAccount 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"`         // 支行名称
	BankIDV2          string                                                     `json:"bank_id_v2,omitempty"`          // 银行 ID, 详细信息可通过[查询银行信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-bank/search)接口查询获得
	BranchIDV2        string                                                     `json:"branch_id_v2,omitempty"`        // 支行 ID, 要求必须为填入银行的支行, 详细信息可通过[查询支行信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-bank_branch/search)接口查询获得
	CountryRegionID   string                                                     `json:"country_region_id,omitempty"`   // 国家/地区 ID, 详细信息可通过[查询国家/地区信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-country_region/search)接口查询获得
	BankAccountUsage  []*UpdateCoreHRPersonRespPersonBankAccountBankAccountUsage `json:"bank_account_usage,omitempty"`  // 银行卡用途, 枚举值可通过文档[飞书人事枚举常量](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/feishu-people-enum-constant)银行卡用途（Bank Account Usage）枚举定义部分获得
	BankAccountType   *UpdateCoreHRPersonRespPersonBankAccountBankAccountType    `json:"bank_account_type,omitempty"`   // 银行卡类型, 枚举值可通过文档[飞书人事枚举常量](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/feishu-people-enum-constant)银行卡类型（Bank Account Type）枚举定义部分获得
	CurrencyID        string                                                     `json:"currency_id,omitempty"`         // 货币 ID, 可通过[查询货币信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-currency/search)接口查询获得
	CustomFields      []*UpdateCoreHRPersonRespPersonBankAccountCustomField      `json:"custom_fields,omitempty"`       // 自定义字段
}

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

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

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

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

// UpdateCoreHRPersonRespPersonBankAccountCustomField ...
type UpdateCoreHRPersonRespPersonBankAccountCustomField struct {
	CustomApiName string                                                  `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *UpdateCoreHRPersonRespPersonBankAccountCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                   `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                  `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7)
}

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

// UpdateCoreHRPersonRespPersonCustomField ...
type UpdateCoreHRPersonRespPersonCustomField struct {
	CustomApiName string                                       `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *UpdateCoreHRPersonRespPersonCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                        `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                       `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7)
}

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

// UpdateCoreHRPersonRespPersonDependent ...
type UpdateCoreHRPersonRespPersonDependent struct {
	Name                                 *UpdateCoreHRPersonRespPersonDependentName                    `json:"name,omitempty"`                                       // 姓名
	Relationship                         *UpdateCoreHRPersonRespPersonDependentRelationship            `json:"relationship,omitempty"`                               // 关系
	Gender                               *UpdateCoreHRPersonRespPersonDependentGender                  `json:"gender,omitempty"`                                     // 性别
	DateOfBirth                          string                                                        `json:"date_of_birth,omitempty"`                              // 生日
	NationalityIDV2                      string                                                        `json:"nationality_id_v2,omitempty"`                          // 国籍 ID, 可通过[查询国籍信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-nationality/search)接口查询
	NationalIDList                       []*UpdateCoreHRPersonRespPersonDependentNationalID            `json:"national_id_list,omitempty"`                           // 证件号码
	SpousesWorkingStatus                 *UpdateCoreHRPersonRespPersonDependentSpousesWorkingStatus    `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                         []*UpdateCoreHRPersonRespPersonDependentCustomField           `json:"custom_fields,omitempty"`                              // 自定义字段
	DependentName                        string                                                        `json:"dependent_name,omitempty"`                             // 家庭成员姓名
	Employer                             string                                                        `json:"employer,omitempty"`                                   // 工作单位
	Job                                  string                                                        `json:"job,omitempty"`                                        // 岗位
	Phone                                *UpdateCoreHRPersonRespPersonDependentPhone                   `json:"phone,omitempty"`                                      // 电话
	Address                              *UpdateCoreHRPersonRespPersonDependentAddress                 `json:"address,omitempty"`                                    // 联系地址
	BirthCertificateOfChild              *UpdateCoreHRPersonRespPersonDependentBirthCertificateOfChild `json:"birth_certificate_of_child,omitempty"`                 // 出生证明
}

// UpdateCoreHRPersonRespPersonDependentAddress ...
type UpdateCoreHRPersonRespPersonDependentAddress 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"`                   // 主要行政区
	AddressLine1             string                                                     `json:"address_line1,omitempty"`               // 地址行 1
	AddressLine2             string                                                     `json:"address_line2,omitempty"`               // 地址行 2
	AddressLine3             string                                                     `json:"address_line3,omitempty"`               // 地址行 3
	AddressLine4             string                                                     `json:"address_line4,omitempty"`               // 地址行 4
	AddressLine5             string                                                     `json:"address_line5,omitempty"`               // 地址行 5
	AddressLine6             string                                                     `json:"address_line6,omitempty"`               // 地址行 6
	AddressLine7             string                                                     `json:"address_line7,omitempty"`               // 地址行 7
	AddressLine8             string                                                     `json:"address_line8,omitempty"`               // 地址行 8
	AddressLine9             string                                                     `json:"address_line9,omitempty"`               // 地址行 9
	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          []*UpdateCoreHRPersonRespPersonDependentAddressAddressType `json:"address_type_list,omitempty"`           // 地址类型, 枚举值可通过文档[飞书人事枚举常量](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/feishu-people-enum-constant)地址类型（address_type）枚举定义部分获得
	IsPrimary                bool                                                       `json:"is_primary,omitempty"`                  // 主要地址
	IsPublic                 bool                                                       `json:"is_public,omitempty"`                   // 公开地址
	CustomFields             []*UpdateCoreHRPersonRespPersonDependentAddressCustomField `json:"custom_fields,omitempty"`               // 自定义字段
}

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

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

// UpdateCoreHRPersonRespPersonDependentAddressCustomField ...
type UpdateCoreHRPersonRespPersonDependentAddressCustomField struct {
	CustomApiName string                                                       `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *UpdateCoreHRPersonRespPersonDependentAddressCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                        `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                       `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7)
}

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

// UpdateCoreHRPersonRespPersonDependentBirthCertificateOfChild ...
type UpdateCoreHRPersonRespPersonDependentBirthCertificateOfChild struct {
	ID   string `json:"id,omitempty"`   // 上传文件 ID, 可通过[上传文件](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/person/upload)接口获得
	Name string `json:"name,omitempty"` // 文件名
}

// UpdateCoreHRPersonRespPersonDependentCustomField ...
type UpdateCoreHRPersonRespPersonDependentCustomField struct {
	CustomApiName string                                                `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *UpdateCoreHRPersonRespPersonDependentCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                 `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7)
}

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

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

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

// UpdateCoreHRPersonRespPersonDependentName ...
type UpdateCoreHRPersonRespPersonDependentName struct {
	LocalPrimary                     string                                                       `json:"local_primary,omitempty"`                         // 姓 - 本地文字
	LocalFirstName                   string                                                       `json:"local_first_name,omitempty"`                      // 名 - 本地文字
	CountryRegionID                  string                                                       `json:"country_region_id,omitempty"`                     // 国家 / 地区
	NameType                         *UpdateCoreHRPersonRespPersonDependentNameNameType           `json:"name_type,omitempty"`                             // 姓名类型
	LocalFirstName2                  string                                                       `json:"local_first_name_2,omitempty"`                    // 名 - 第二本地文字
	LocalPrimary2                    string                                                       `json:"local_primary_2,omitempty"`                       // 姓 - 第二本地文字
	AdditionalNameType               *UpdateCoreHRPersonRespPersonDependentNameAdditionalNameType `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                           *UpdateCoreHRPersonRespPersonDependentNameSocial             `json:"social,omitempty"`                                // 尊称
	Tertiary                         string                                                       `json:"tertiary,omitempty"`                              // 婚后姓氏
	Title                            *UpdateCoreHRPersonRespPersonDependentNameTitle              `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"`           // 展示姓名（西方文字）
}

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

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

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

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

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

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

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

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

// UpdateCoreHRPersonRespPersonDependentNationalID ...
type UpdateCoreHRPersonRespPersonDependentNationalID 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     []*UpdateCoreHRPersonRespPersonDependentNationalIDCustomField `json:"custom_fields,omitempty"`       // 自定义字段
}

// UpdateCoreHRPersonRespPersonDependentNationalIDCustomField ...
type UpdateCoreHRPersonRespPersonDependentNationalIDCustomField struct {
	CustomApiName string                                                          `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *UpdateCoreHRPersonRespPersonDependentNationalIDCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                           `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                          `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7)
}

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

// UpdateCoreHRPersonRespPersonDependentPhone ...
type UpdateCoreHRPersonRespPersonDependentPhone struct {
	InternationalAreaCode *UpdateCoreHRPersonRespPersonDependentPhoneInternationalAreaCode `json:"international_area_code,omitempty"` // 国家区号
	PhoneNumber           string                                                           `json:"phone_number,omitempty"`            // 电话号码
	FormattedPhoneNumber  string                                                           `json:"formatted_phone_number,omitempty"`  // 完整电话号码
	DeviceType            *UpdateCoreHRPersonRespPersonDependentPhoneDeviceType            `json:"device_type,omitempty"`             // 设备类型, 可选值如下: mobile_phone: 手机, landline: 座机, fax: 传真
	PhoneUsage            *UpdateCoreHRPersonRespPersonDependentPhonePhoneUsage            `json:"phone_usage,omitempty"`             // 电话用途, 可选值如下: home: 家庭, work: 工作, emergency_contact: 紧急联系人, company: 公司
	IsPrimary             bool                                                             `json:"is_primary,omitempty"`              // 主要电话
	IsPublic              bool                                                             `json:"is_public,omitempty"`               // 公开电话
}

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

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

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

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

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

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

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

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

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

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

// UpdateCoreHRPersonRespPersonEducation ...
type UpdateCoreHRPersonRespPersonEducation struct {
	School           []*UpdateCoreHRPersonRespPersonEducationSchool         `json:"school,omitempty"`              // 学校
	LevelOfEducation *UpdateCoreHRPersonRespPersonEducationLevelOfEducation `json:"level_of_education,omitempty"`  // 学历
	StartDate        string                                                 `json:"start_date,omitempty"`          // 开始日期
	EndDate          string                                                 `json:"end_date,omitempty"`            // 结束日期
	FieldOfStudy     []*UpdateCoreHRPersonRespPersonEducationFieldOfStudy   `json:"field_of_study,omitempty"`      // 专业
	Degree           *UpdateCoreHRPersonRespPersonEducationDegree           `json:"degree,omitempty"`              // 学位
	SchoolName       *UpdateCoreHRPersonRespPersonEducationSchoolName       `json:"school_name,omitempty"`         // 学校名称
	FieldOfStudyName *UpdateCoreHRPersonRespPersonEducationFieldOfStudyName `json:"field_of_study_name,omitempty"` // 专业名称
	CountryRegionID  string                                                 `json:"country_region_id,omitempty"`   // 国家地区 ID, 可通过[查询国家/地区信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-country_region/search)接口查询获得
	ExpectedEndDate  string                                                 `json:"expected_end_date,omitempty"`   // 预期结束日期
	CustomFields     []*UpdateCoreHRPersonRespPersonEducationCustomField    `json:"custom_fields,omitempty"`       // 自定义字段
}

// UpdateCoreHRPersonRespPersonEducationCustomField ...
type UpdateCoreHRPersonRespPersonEducationCustomField struct {
	CustomApiName string                                                `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *UpdateCoreHRPersonRespPersonEducationCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                 `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7)
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// UpdateCoreHRPersonRespPersonEmergencyContact ...
type UpdateCoreHRPersonRespPersonEmergencyContact struct {
	Name         *UpdateCoreHRPersonRespPersonEmergencyContactName          `json:"name,omitempty"`          // 姓名
	Relationship *UpdateCoreHRPersonRespPersonEmergencyContactRelationship  `json:"relationship,omitempty"`  // 关系
	PhoneIst     []*UpdateCoreHRPersonRespPersonEmergencyContactPhoneIst    `json:"phone_ist,omitempty"`     // 电话
	PhoneList    []*UpdateCoreHRPersonRespPersonEmergencyContactPhone       `json:"phone_list,omitempty"`    // 电话
	LegalName    string                                                     `json:"legal_name,omitempty"`    // 法定姓名
	CustomFields []*UpdateCoreHRPersonRespPersonEmergencyContactCustomField `json:"custom_fields,omitempty"` // 自定义字段
}

// UpdateCoreHRPersonRespPersonEmergencyContactCustomField ...
type UpdateCoreHRPersonRespPersonEmergencyContactCustomField struct {
	CustomApiName string                                                       `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *UpdateCoreHRPersonRespPersonEmergencyContactCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                        `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                       `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7)
}

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

// UpdateCoreHRPersonRespPersonEmergencyContactName ...
type UpdateCoreHRPersonRespPersonEmergencyContactName struct {
	LocalPrimary                     string                                                              `json:"local_primary,omitempty"`                         // 姓 - 本地文字
	LocalFirstName                   string                                                              `json:"local_first_name,omitempty"`                      // 名 - 本地文字
	CountryRegionID                  string                                                              `json:"country_region_id,omitempty"`                     // 国家 / 地区
	NameType                         *UpdateCoreHRPersonRespPersonEmergencyContactNameNameType           `json:"name_type,omitempty"`                             // 姓名类型
	LocalFirstName2                  string                                                              `json:"local_first_name_2,omitempty"`                    // 名 - 第二本地文字
	LocalPrimary2                    string                                                              `json:"local_primary_2,omitempty"`                       // 姓 - 第二本地文字
	AdditionalNameType               *UpdateCoreHRPersonRespPersonEmergencyContactNameAdditionalNameType `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                           *UpdateCoreHRPersonRespPersonEmergencyContactNameSocial             `json:"social,omitempty"`                                // 尊称
	Tertiary                         string                                                              `json:"tertiary,omitempty"`                              // 婚后姓氏
	Title                            *UpdateCoreHRPersonRespPersonEmergencyContactNameTitle              `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"`           // 展示姓名（西方文字）
}

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

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

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

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

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

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

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

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

// UpdateCoreHRPersonRespPersonEmergencyContactPhone ...
type UpdateCoreHRPersonRespPersonEmergencyContactPhone struct {
	InternationalAreaCode *UpdateCoreHRPersonRespPersonEmergencyContactPhoneInternationalAreaCode `json:"international_area_code,omitempty"` // 国家区号
	PhoneNumber           string                                                                  `json:"phone_number,omitempty"`            // 电话号码
	FormattedPhoneNumber  string                                                                  `json:"formatted_phone_number,omitempty"`  // 完整电话号码
	DeviceType            *UpdateCoreHRPersonRespPersonEmergencyContactPhoneDeviceType            `json:"device_type,omitempty"`             // 设备类型, 可选值如下: mobile_phone: 手机, landline: 座机, fax: 传真
	PhoneUsage            *UpdateCoreHRPersonRespPersonEmergencyContactPhonePhoneUsage            `json:"phone_usage,omitempty"`             // 电话用途, 可选值如下: home: 家庭, work: 工作, emergency_contact: 紧急联系人, company: 公司
	IsPrimary             bool                                                                    `json:"is_primary,omitempty"`              // 主要电话
	IsPublic              bool                                                                    `json:"is_public,omitempty"`               // 公开电话
}

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

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

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

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

// UpdateCoreHRPersonRespPersonEmergencyContactPhoneIst ...
type UpdateCoreHRPersonRespPersonEmergencyContactPhoneIst struct {
	InternationalAreaCode *UpdateCoreHRPersonRespPersonEmergencyContactPhoneIstInternationalAreaCode `json:"international_area_code,omitempty"` // 国家区号
	PhoneNumber           string                                                                     `json:"phone_number,omitempty"`            // 电话号码
	FormattedPhoneNumber  string                                                                     `json:"formatted_phone_number,omitempty"`  // 完整电话号码
	DeviceType            *UpdateCoreHRPersonRespPersonEmergencyContactPhoneIstDeviceType            `json:"device_type,omitempty"`             // 设备类型, 可选值如下: mobile_phone: 手机, landline: 座机, fax: 传真
	PhoneUsage            *UpdateCoreHRPersonRespPersonEmergencyContactPhoneIstPhoneUsage            `json:"phone_usage,omitempty"`             // 电话用途, 可选值如下: home: 家庭, work: 工作, emergency_contact: 紧急联系人, company: 公司
	IsPrimary             bool                                                                       `json:"is_primary,omitempty"`              // 主要电话
	IsPublic              bool                                                                       `json:"is_public,omitempty"`               // 公开电话
}

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

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

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

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

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

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

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

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

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

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

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

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

// UpdateCoreHRPersonRespPersonHighestDegreeOfEducation ...
type UpdateCoreHRPersonRespPersonHighestDegreeOfEducation struct {
	School           []*UpdateCoreHRPersonRespPersonHighestDegreeOfEducationSchool         `json:"school,omitempty"`              // 学校
	LevelOfEducation *UpdateCoreHRPersonRespPersonHighestDegreeOfEducationLevelOfEducation `json:"level_of_education,omitempty"`  // 学历
	StartDate        string                                                                `json:"start_date,omitempty"`          // 开始日期
	EndDate          string                                                                `json:"end_date,omitempty"`            // 结束日期
	FieldOfStudy     []*UpdateCoreHRPersonRespPersonHighestDegreeOfEducationFieldOfStudy   `json:"field_of_study,omitempty"`      // 专业
	Degree           *UpdateCoreHRPersonRespPersonHighestDegreeOfEducationDegree           `json:"degree,omitempty"`              // 学位
	SchoolName       *UpdateCoreHRPersonRespPersonHighestDegreeOfEducationSchoolName       `json:"school_name,omitempty"`         // 学校名称
	FieldOfStudyName *UpdateCoreHRPersonRespPersonHighestDegreeOfEducationFieldOfStudyName `json:"field_of_study_name,omitempty"` // 专业名称
	CountryRegionID  string                                                                `json:"country_region_id,omitempty"`   // 国家地区 ID, 可通过[查询国家/地区信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-country_region/search)接口查询获得
	ExpectedEndDate  string                                                                `json:"expected_end_date,omitempty"`   // 预期结束日期
	CustomFields     []*UpdateCoreHRPersonRespPersonHighestDegreeOfEducationCustomField    `json:"custom_fields,omitempty"`       // 自定义字段
}

// UpdateCoreHRPersonRespPersonHighestDegreeOfEducationCustomField ...
type UpdateCoreHRPersonRespPersonHighestDegreeOfEducationCustomField struct {
	CustomApiName string                                                               `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *UpdateCoreHRPersonRespPersonHighestDegreeOfEducationCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                                `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                               `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7)
}

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

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

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

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

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

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

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

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

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

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

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

// UpdateCoreHRPersonRespPersonHighestLevelOfEducation ...
type UpdateCoreHRPersonRespPersonHighestLevelOfEducation struct {
	School           []*UpdateCoreHRPersonRespPersonHighestLevelOfEducationSchool         `json:"school,omitempty"`              // 学校
	LevelOfEducation *UpdateCoreHRPersonRespPersonHighestLevelOfEducationLevelOfEducation `json:"level_of_education,omitempty"`  // 学历
	StartDate        string                                                               `json:"start_date,omitempty"`          // 开始日期
	EndDate          string                                                               `json:"end_date,omitempty"`            // 结束日期
	FieldOfStudy     []*UpdateCoreHRPersonRespPersonHighestLevelOfEducationFieldOfStudy   `json:"field_of_study,omitempty"`      // 专业
	Degree           *UpdateCoreHRPersonRespPersonHighestLevelOfEducationDegree           `json:"degree,omitempty"`              // 学位
	SchoolName       *UpdateCoreHRPersonRespPersonHighestLevelOfEducationSchoolName       `json:"school_name,omitempty"`         // 学校名称
	FieldOfStudyName *UpdateCoreHRPersonRespPersonHighestLevelOfEducationFieldOfStudyName `json:"field_of_study_name,omitempty"` // 专业名称
	CountryRegionID  string                                                               `json:"country_region_id,omitempty"`   // 国家地区 ID, 可通过[查询国家/地区信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-country_region/search)接口查询获得
	ExpectedEndDate  string                                                               `json:"expected_end_date,omitempty"`   // 预期结束日期
	CustomFields     []*UpdateCoreHRPersonRespPersonHighestLevelOfEducationCustomField    `json:"custom_fields,omitempty"`       // 自定义字段
}

// UpdateCoreHRPersonRespPersonHighestLevelOfEducationCustomField ...
type UpdateCoreHRPersonRespPersonHighestLevelOfEducationCustomField struct {
	CustomApiName string                                                              `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *UpdateCoreHRPersonRespPersonHighestLevelOfEducationCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                               `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                              `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7)
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// UpdateCoreHRPersonRespPersonName ...
type UpdateCoreHRPersonRespPersonName struct {
	LocalPrimary                     string                                              `json:"local_primary,omitempty"`                         // 姓 - 本地文字
	LocalFirstName                   string                                              `json:"local_first_name,omitempty"`                      // 名 - 本地文字
	CountryRegionID                  string                                              `json:"country_region_id,omitempty"`                     // 国家 / 地区
	NameType                         *UpdateCoreHRPersonRespPersonNameNameType           `json:"name_type,omitempty"`                             // 姓名类型
	LocalFirstName2                  string                                              `json:"local_first_name_2,omitempty"`                    // 名 - 第二本地文字
	LocalPrimary2                    string                                              `json:"local_primary_2,omitempty"`                       // 姓 - 第二本地文字
	AdditionalNameType               *UpdateCoreHRPersonRespPersonNameAdditionalNameType `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                           *UpdateCoreHRPersonRespPersonNameSocial             `json:"social,omitempty"`                                // 尊称
	Tertiary                         string                                              `json:"tertiary,omitempty"`                              // 婚后姓氏
	Title                            *UpdateCoreHRPersonRespPersonNameTitle              `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"`           // 展示姓名（西方文字）
}

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

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

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

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

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

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

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

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

// UpdateCoreHRPersonRespPersonNationalID ...
type UpdateCoreHRPersonRespPersonNationalID 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     []*UpdateCoreHRPersonRespPersonNationalIDCustomField `json:"custom_fields,omitempty"`       // 自定义字段
}

// UpdateCoreHRPersonRespPersonNationalIDCustomField ...
type UpdateCoreHRPersonRespPersonNationalIDCustomField struct {
	CustomApiName string                                                 `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *UpdateCoreHRPersonRespPersonNationalIDCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                  `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                 `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7)
}

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

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

// UpdateCoreHRPersonRespPersonPersonalProfileFile ...
type UpdateCoreHRPersonRespPersonPersonalProfileFile struct {
	ID   string `json:"id,omitempty"`   // 上传文件 ID, 可通过[上传文件](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/person/upload)接口获得
	Name string `json:"name,omitempty"` // 文件名
}

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

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

// UpdateCoreHRPersonRespPersonPhone ...
type UpdateCoreHRPersonRespPersonPhone struct {
	InternationalAreaCode *UpdateCoreHRPersonRespPersonPhoneInternationalAreaCode `json:"international_area_code,omitempty"` // 国家区号
	PhoneNumber           string                                                  `json:"phone_number,omitempty"`            // 电话号码
	FormattedPhoneNumber  string                                                  `json:"formatted_phone_number,omitempty"`  // 完整电话号码
	DeviceType            *UpdateCoreHRPersonRespPersonPhoneDeviceType            `json:"device_type,omitempty"`             // 设备类型, 可选值如下: mobile_phone: 手机, landline: 座机, fax: 传真
	PhoneUsage            *UpdateCoreHRPersonRespPersonPhonePhoneUsage            `json:"phone_usage,omitempty"`             // 电话用途, 可选值如下: home: 家庭, work: 工作, emergency_contact: 紧急联系人, company: 公司
	IsPrimary             bool                                                    `json:"is_primary,omitempty"`              // 主要电话
	IsPublic              bool                                                    `json:"is_public,omitempty"`               // 公开电话
}

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

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

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

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

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

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

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

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

// UpdateCoreHRPersonRespPersonResidentTaxe ...
type UpdateCoreHRPersonRespPersonResidentTaxe struct {
	YearResidentTax    string                                                  `json:"year_resident_tax,omitempty"`     // 年度
	ResidentStatus     *UpdateCoreHRPersonRespPersonResidentTaxeResidentStatus `json:"resident_status,omitempty"`       // 居民身份, 枚举值 api_name 可通过[获取字段详情](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/get_by_param)接口查询, 查询参数如下: object_api_name = "resident_tax" - custom_api_name = "resident_status"
	TaxCountryRegionID string                                                  `json:"tax_country_region_id,omitempty"` // 国家/地区, 可通过[查询国家/地区信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-country_region/search) 接口查询
	CustomFields       []*UpdateCoreHRPersonRespPersonResidentTaxeCustomField  `json:"custom_fields,omitempty"`         // 自定义字段, 字段权限要求（满足任一）: 获取居民身份自定义字段信息, 读写居民身份自定义字段信息
}

// UpdateCoreHRPersonRespPersonResidentTaxeCustomField ...
type UpdateCoreHRPersonRespPersonResidentTaxeCustomField struct {
	FieldName string `json:"field_name,omitempty"` // 字段名
	Value     string `json:"value,omitempty"`      // 字段值, 是json转义后的字符串, 根据元数据定义不同, 字段格式不同(123, 123.23, true, [\"id1\", \"id2\], 2006-01-02 15:04:05])
}

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

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

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

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

// UpdateCoreHRPersonRespPersonWorkExperienceCustomField ...
type UpdateCoreHRPersonRespPersonWorkExperienceCustomField struct {
	CustomApiName string                                                     `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识
	Name          *UpdateCoreHRPersonRespPersonWorkExperienceCustomFieldName `json:"name,omitempty"`            // 自定义字段名称
	Type          int64                                                      `json:"type,omitempty"`            // 自定义字段类型
	Value         string                                                     `json:"value,omitempty"`           // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同。使用方式可参考[操作手册]如何通过 OpenAPI 维护自定义字段](https://feishu.feishu.cn/docx/QlUudBfCtosWMbxx3vxcOFDknn7)
}

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

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

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

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

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