From e79f0e320d368bb5f5e654842e4acc5ff47f1f77 Mon Sep 17 00:00:00 2001 From: chyroc Date: Wed, 25 Oct 2023 17:36:04 +0800 Subject: [PATCH] add: SearchCoreHRProbation --- api_corehr_probation_search.go | 238 +++++++++++++++++++++++++++++++++ 1 file changed, 238 insertions(+) create mode 100644 api_corehr_probation_search.go diff --git a/api_corehr_probation_search.go b/api_corehr_probation_search.go new file mode 100644 index 00000000..89220b50 --- /dev/null +++ b/api_corehr_probation_search.go @@ -0,0 +1,238 @@ +// 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" +) + +// SearchCoreHRProbation 搜索试用期信息 +// +// doc: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/probation/search +func (r *CoreHRService) SearchCoreHRProbation(ctx context.Context, request *SearchCoreHRProbationReq, options ...MethodOptionFunc) (*SearchCoreHRProbationResp, *Response, error) { + if r.cli.mock.mockCoreHRSearchCoreHRProbation != nil { + r.cli.log(ctx, LogLevelDebug, "[lark] CoreHR#SearchCoreHRProbation mock enable") + return r.cli.mock.mockCoreHRSearchCoreHRProbation(ctx, request, options...) + } + + req := &RawRequestReq{ + Scope: "CoreHR", + API: "SearchCoreHRProbation", + Method: "POST", + URL: r.cli.openBaseURL + "/open-apis/corehr/v2/probation/search", + Body: request, + MethodOption: newMethodOption(options), + NeedTenantAccessToken: true, + } + resp := new(searchCoreHRProbationResp) + + response, err := r.cli.RawRequest(ctx, req, resp) + return resp.Data, response, err +} + +// MockCoreHRSearchCoreHRProbation mock CoreHRSearchCoreHRProbation method +func (r *Mock) MockCoreHRSearchCoreHRProbation(f func(ctx context.Context, request *SearchCoreHRProbationReq, options ...MethodOptionFunc) (*SearchCoreHRProbationResp, *Response, error)) { + r.mockCoreHRSearchCoreHRProbation = f +} + +// UnMockCoreHRSearchCoreHRProbation un-mock CoreHRSearchCoreHRProbation method +func (r *Mock) UnMockCoreHRSearchCoreHRProbation() { + r.mockCoreHRSearchCoreHRProbation = nil +} + +// SearchCoreHRProbationReq ... +type SearchCoreHRProbationReq struct { + PageSize int64 `query:"page_size" json:"-"` // 分页大小, 最大 100, 示例值: 100, 取值范围: `1` ~ `100` + PageToken *string `query:"page_token" json:"-"` // 分页标记, 第一次请求不填, 表示从头开始遍历;分页查询结果还有更多项时会同时返回新的 page_token, 下次遍历可采用该 page_token 获取查询结果, 示例值: 6891251722631890445 + UserIDType *IDType `query:"user_id_type" json:"-"` // 用户 ID 类型, 示例值: open_id, 可选值有: open_id: 标识一个用户在某个应用中的身份。同一个用户在不同应用中的 Open ID 不同。[了解更多: 如何获取 Open ID](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-openid), union_id: 标识一个用户在某个应用开发商下的身份。同一用户在同一开发商下的应用中的 Union ID 是相同的, 在不同开发商下的应用中的 Union ID 是不同的。通过 Union ID, 应用开发商可以把同个用户在多个应用中的身份关联起来。[了解更多: 如何获取 Union ID?](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-union-id), user_id: 标识一个用户在某个租户内的身份。同一个用户在租户 A 和租户 B 内的 User ID 是不同的。在同一个租户内, 一个用户的 User ID 在所有应用(包括商店应用)中都保持一致。User ID 主要用于在不同的应用间打通用户数据。[了解更多: 如何获取 User ID?](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-user-id), people_corehr_id: 以飞书人事的 ID 来识别用户, 默认值: `open_id`, 当值为 `user_id`, 字段权限要求: 获取用户 user ID + DepartmentIDType *DepartmentIDType `query:"department_id_type" json:"-"` // 此次调用中使用的部门 ID 类型, 示例值: open_department_id, 可选值有: open_department_id: 以 open_department_id 来标识部门, department_id: 以 department_id 来标识部门, people_corehr_department_id: 以 people_corehr_department_id 来标识部门, 默认值: `open_department_id` + EmploymentIDs []string `json:"employment_ids,omitempty"` // 雇佣 ID 列表, 示例值: ["7140964208476371111"] + DepartmentIDs []string `json:"department_ids,omitempty"` // 部门 ID 列表, 示例值: ["7140964208476371121"] + ProbationStartDateStart *string `json:"probation_start_date_start,omitempty"` // 试用期开始日期 - 搜索范围开始, 需要与搜索范围结束一同使用, 示例值: "2022-05-18" + ProbationStartDateEnd *string `json:"probation_start_date_end,omitempty"` // 试用期开始日期 - 搜索范围结束, 示例值: "2022-05-20" + ProbationExpectedEndDateStart *string `json:"probation_expected_end_date_start,omitempty"` // 试用期预计结束日期 - 搜索范围开始, 需要与搜索范围结束一同使用, 示例值: "2022-06-20" + ProbationExpectedEndDateEnd *string `json:"probation_expected_end_date_end,omitempty"` // 试用期预计结束日期 - 搜索范围结束, 示例值: "2022-07-20" + ActualProbationEndDateStart *string `json:"actual_probation_end_date_start,omitempty"` // 试用期实际结束日期 - 搜索范围开始, 需要与搜索范围结束一同使用, 示例值: "2022-08-20" + ActualProbationEndDateEnd *string `json:"actual_probation_end_date_end,omitempty"` // 试用期实际结束日期 - 搜索范围结束, 示例值: "2022-09-20" + InitiatingTimeStart *string `json:"initiating_time_start,omitempty"` // 转正发起日期 - 搜索范围开始, 需要与搜索范围结束一同使用, 示例值: "2022-10-20" + InitiatingTimeEnd *string `json:"initiating_time_end,omitempty"` // 转正发起日期 - 搜索范围结束, 示例值: "2022-11-20" + ProbationStatus *string `json:"probation_status,omitempty"` // 试用期状态, 示例值: "approved", 可选值有: pending: 审批中, rejected: 已拒绝, waiting: 待发起转正, approved: 审批通过, converted: 已转正, offboarded: 已离职 + FinalAssessmentResult *string `json:"final_assessment_result,omitempty"` // 试用期最终考核结果, 示例值: "approved", 可选值有: approved: 通过, rejected: 不通过 + FinalAssessmentGrade *string `json:"final_assessment_grade,omitempty"` // 试用期最终考核等级, 枚举值 api_name 可通过[【获取字段详情】](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/get_by_param)接口查询, 查询参数如下: object_api_name: probation_management, custom_api_name: final_assessment_grade, 字段权限要求: , 按照试用期考核等级搜索 (corehr:probation.grade.search:read), 示例值: "grade_a" +} + +// SearchCoreHRProbationResp ... +type SearchCoreHRProbationResp struct { + Items []*SearchCoreHRProbationRespItem `json:"items,omitempty"` // 查询的试用期信息 + PageToken string `json:"page_token,omitempty"` // 分页标记, 当 has_more 为 true 时, 会同时返回新的 page_token, 否则不返回 page_token + HasMore bool `json:"has_more,omitempty"` // 是否还有更多项 +} + +// SearchCoreHRProbationRespItem ... +type SearchCoreHRProbationRespItem struct { + EmploymentID string `json:"employment_id,omitempty"` // 雇佣 ID + ProbationID string `json:"probation_id,omitempty"` // 试用期信息 ID + ProbationStartDate string `json:"probation_start_date,omitempty"` // 试用期开始日期 + ProbationExpectedEndDate string `json:"probation_expected_end_date,omitempty"` // 试用期预计结束日期 + ActualProbationEndDate string `json:"actual_probation_end_date,omitempty"` // 试用期实际结束日期 + InitiatingTime string `json:"initiating_time,omitempty"` // 转正发起日期 + SubmissionType *SearchCoreHRProbationRespItemSubmissionType `json:"submission_type,omitempty"` // 发起方, hr_submission: HR 发起, self_submission: 员工发起, system : 系统发起 + InitiatorID string `json:"initiator_id,omitempty"` // 转正发起人的雇佣 ID, 当系统发起转正时该字段为空 + ProbationStatus *SearchCoreHRProbationRespItemProbationStatus `json:"probation_status,omitempty"` // 试用期状态: pending: 审批中, rejected: 已拒绝, waiting: 待发起转正, approved: 审批通过, converted: 已转正, offboarded: 已离职 + SelfReview string `json:"self_review,omitempty"` // 员工自评, 字段权限要求(满足任一): 读取员工自评信息, 读写员工自评信息 + Notes string `json:"notes,omitempty"` // 备注, 字段权限要求(满足任一): 读取试用期备注信息, 读写试用期备注信息 + ProcessID string `json:"process_id,omitempty"` // 流程实例 ID + ConvertedViaBpm bool `json:"converted_via_bpm,omitempty"` // 是否通过 BPM 转正 + CustomFields []*SearchCoreHRProbationRespItemCustomField `json:"custom_fields,omitempty"` // 自定义字段, 字段权限要求(满足任一): 获取试用期自定义字段信息, 读写试用期自定义字段信息 + FinalAssessmentStatus *SearchCoreHRProbationRespItemFinalAssessmentStatus `json:"final_assessment_status,omitempty"` // 试用期考核最终状态: not_started: 未开始, in_process: 进行中, completed: 已完成, no_need: 无需考核 + FinalAssessmentResult *SearchCoreHRProbationRespItemFinalAssessmentResult `json:"final_assessment_result,omitempty"` // 试用期考核最终结果: approved: 通过, rejected: 不通过 + FinalAssessmentScore float64 `json:"final_assessment_score,omitempty"` // 试用期考核最终得分, 字段权限要求(满足任一): 获取试用期考核信息, 读写试用期考核信息 + FinalAssessmentGrade *SearchCoreHRProbationRespItemFinalAssessmentGrade `json:"final_assessment_grade,omitempty"` // 试用期考核最终等级, 枚举值 api_name 可通过[【获取字段详情】](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/get_by_param)接口查询, 查询参数如下: object_api_name = "probation_management", custom_api_name = "final_assessment_grade", 字段权限要求(满足任一): 获取试用期考核信息, 读写试用期考核信息 + FinalAssessmentComment string `json:"final_assessment_comment,omitempty"` // 试用期考核最终评语, 字段权限要求(满足任一): 获取试用期考核信息, 读写试用期考核信息 + FinalAssessmentDetail string `json:"final_assessment_detail,omitempty"` // 最终考核结果页面超链接, 字段权限要求(满足任一): 获取试用期考核信息, 读写试用期考核信息 + Assessments []*SearchCoreHRProbationRespItemAssessment `json:"assessments,omitempty"` // 试用期考核结果列表, 字段权限要求(满足任一): 获取试用期考核信息, 读写试用期考核信息 +} + +// SearchCoreHRProbationRespItemAssessment ... +type SearchCoreHRProbationRespItemAssessment struct { + AssessmentID string `json:"assessment_id,omitempty"` // 考核结果 ID + AssessmentStatus *SearchCoreHRProbationRespItemAssessmentAssessmentStatus `json:"assessment_status,omitempty"` // 考核状态, not_started: 未开始, in_process: 进行中, completed: 已完成, no_need: 无需考核 + AssessmentResult *SearchCoreHRProbationRespItemAssessmentAssessmentResult `json:"assessment_result,omitempty"` // 试用期考核结果, approved: 通过, rejected: 不通过 + AssessmentScore float64 `json:"assessment_score,omitempty"` // 考核得分 + AssessmentGrade *SearchCoreHRProbationRespItemAssessmentAssessmentGrade `json:"assessment_grade,omitempty"` // 试用期考核等级, 枚举值 api_name 可通过[【获取字段详情】](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/custom_field/get_by_param)接口查询, 查询参数如下: object_api_name = "probation_management", custom_api_name = "final_assessment_grade" + AssessmentComment string `json:"assessment_comment,omitempty"` // 考核评语 + AssessmentDetail string `json:"assessment_detail,omitempty"` // 考核结果页面超链接 + IsFinalAsssessment bool `json:"is_final_asssessment,omitempty"` // 是否为最终考核结果 +} + +// SearchCoreHRProbationRespItemAssessmentAssessmentGrade ... +type SearchCoreHRProbationRespItemAssessmentAssessmentGrade struct { + EnumName string `json:"enum_name,omitempty"` // 枚举值 + Display []*SearchCoreHRProbationRespItemAssessmentAssessmentGradeDisplay `json:"display,omitempty"` // 枚举多语展示 +} + +// SearchCoreHRProbationRespItemAssessmentAssessmentGradeDisplay ... +type SearchCoreHRProbationRespItemAssessmentAssessmentGradeDisplay struct { + Lang string `json:"lang,omitempty"` // 语言 + Value string `json:"value,omitempty"` // 内容 +} + +// SearchCoreHRProbationRespItemAssessmentAssessmentResult ... +type SearchCoreHRProbationRespItemAssessmentAssessmentResult struct { + EnumName string `json:"enum_name,omitempty"` // 枚举值 + Display []*SearchCoreHRProbationRespItemAssessmentAssessmentResultDisplay `json:"display,omitempty"` // 枚举多语展示 +} + +// SearchCoreHRProbationRespItemAssessmentAssessmentResultDisplay ... +type SearchCoreHRProbationRespItemAssessmentAssessmentResultDisplay struct { + Lang string `json:"lang,omitempty"` // 语言 + Value string `json:"value,omitempty"` // 内容 +} + +// SearchCoreHRProbationRespItemAssessmentAssessmentStatus ... +type SearchCoreHRProbationRespItemAssessmentAssessmentStatus struct { + EnumName string `json:"enum_name,omitempty"` // 枚举值 + Display []*SearchCoreHRProbationRespItemAssessmentAssessmentStatusDisplay `json:"display,omitempty"` // 枚举多语展示 +} + +// SearchCoreHRProbationRespItemAssessmentAssessmentStatusDisplay ... +type SearchCoreHRProbationRespItemAssessmentAssessmentStatusDisplay struct { + Lang string `json:"lang,omitempty"` // 语言 + Value string `json:"value,omitempty"` // 内容 +} + +// SearchCoreHRProbationRespItemCustomField ... +type SearchCoreHRProbationRespItemCustomField struct { + CustomApiName string `json:"custom_api_name,omitempty"` // 自定义字段 apiname, 即自定义字段的唯一标识 + Name *SearchCoreHRProbationRespItemCustomFieldName `json:"name,omitempty"` // 自定义字段名称 + Type int64 `json:"type,omitempty"` // 自定义字段类型 + Value string `json:"value,omitempty"` // 字段值, 是 json 转义后的字符串, 根据元数据定义不同, 字段格式不同(如 123, 123.23, "true", ["id1", "id2"], "2006-01-02 15:04:05") +} + +// SearchCoreHRProbationRespItemCustomFieldName ... +type SearchCoreHRProbationRespItemCustomFieldName struct { + ZhCn string `json:"zh_cn,omitempty"` // 中文 + EnUs string `json:"en_us,omitempty"` // 英文 +} + +// SearchCoreHRProbationRespItemFinalAssessmentGrade ... +type SearchCoreHRProbationRespItemFinalAssessmentGrade struct { + EnumName string `json:"enum_name,omitempty"` // 枚举值 + Display []*SearchCoreHRProbationRespItemFinalAssessmentGradeDisplay `json:"display,omitempty"` // 枚举多语展示 +} + +// SearchCoreHRProbationRespItemFinalAssessmentGradeDisplay ... +type SearchCoreHRProbationRespItemFinalAssessmentGradeDisplay struct { + Lang string `json:"lang,omitempty"` // 语言 + Value string `json:"value,omitempty"` // 内容 +} + +// SearchCoreHRProbationRespItemFinalAssessmentResult ... +type SearchCoreHRProbationRespItemFinalAssessmentResult struct { + EnumName string `json:"enum_name,omitempty"` // 枚举值 + Display []*SearchCoreHRProbationRespItemFinalAssessmentResultDisplay `json:"display,omitempty"` // 枚举多语展示 +} + +// SearchCoreHRProbationRespItemFinalAssessmentResultDisplay ... +type SearchCoreHRProbationRespItemFinalAssessmentResultDisplay struct { + Lang string `json:"lang,omitempty"` // 语言 + Value string `json:"value,omitempty"` // 内容 +} + +// SearchCoreHRProbationRespItemFinalAssessmentStatus ... +type SearchCoreHRProbationRespItemFinalAssessmentStatus struct { + EnumName string `json:"enum_name,omitempty"` // 枚举值 + Display []*SearchCoreHRProbationRespItemFinalAssessmentStatusDisplay `json:"display,omitempty"` // 枚举多语展示 +} + +// SearchCoreHRProbationRespItemFinalAssessmentStatusDisplay ... +type SearchCoreHRProbationRespItemFinalAssessmentStatusDisplay struct { + Lang string `json:"lang,omitempty"` // 语言 + Value string `json:"value,omitempty"` // 内容 +} + +// SearchCoreHRProbationRespItemProbationStatus ... +type SearchCoreHRProbationRespItemProbationStatus struct { + EnumName string `json:"enum_name,omitempty"` // 枚举值 + Display []*SearchCoreHRProbationRespItemProbationStatusDisplay `json:"display,omitempty"` // 枚举多语展示 +} + +// SearchCoreHRProbationRespItemProbationStatusDisplay ... +type SearchCoreHRProbationRespItemProbationStatusDisplay struct { + Lang string `json:"lang,omitempty"` // 语言 + Value string `json:"value,omitempty"` // 内容 +} + +// SearchCoreHRProbationRespItemSubmissionType ... +type SearchCoreHRProbationRespItemSubmissionType struct { + EnumName string `json:"enum_name,omitempty"` // 枚举值 + Display []*SearchCoreHRProbationRespItemSubmissionTypeDisplay `json:"display,omitempty"` // 枚举多语展示 +} + +// SearchCoreHRProbationRespItemSubmissionTypeDisplay ... +type SearchCoreHRProbationRespItemSubmissionTypeDisplay struct { + Lang string `json:"lang,omitempty"` // 语言 + Value string `json:"value,omitempty"` // 内容 +} + +// searchCoreHRProbationResp ... +type searchCoreHRProbationResp struct { + Code int64 `json:"code,omitempty"` // 错误码, 非 0 表示失败 + Msg string `json:"msg,omitempty"` // 错误描述 + Data *SearchCoreHRProbationResp `json:"data,omitempty"` +}