@satorijs/adapter-lark 3.10.6 → 3.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/lib/index.cjs +2880 -2370
  2. package/lib/internal.d.ts +4 -4
  3. package/lib/types/acs.d.ts +212 -172
  4. package/lib/types/admin.d.ts +331 -291
  5. package/lib/types/aily.d.ts +331 -216
  6. package/lib/types/apaas.d.ts +646 -494
  7. package/lib/types/application.d.ts +559 -458
  8. package/lib/types/approval.d.ts +826 -791
  9. package/lib/types/attendance.d.ts +1094 -994
  10. package/lib/types/auth.d.ts +66 -61
  11. package/lib/types/authen.d.ts +221 -186
  12. package/lib/types/baike.d.ts +258 -233
  13. package/lib/types/base.d.ts +74 -0
  14. package/lib/types/bitable.d.ts +830 -770
  15. package/lib/types/board.d.ts +29 -14
  16. package/lib/types/calendar.d.ts +660 -605
  17. package/lib/types/cardkit.d.ts +149 -134
  18. package/lib/types/compensation.d.ts +84 -49
  19. package/lib/types/contact.d.ts +1279 -1204
  20. package/lib/types/corehr.d.ts +4982 -4526
  21. package/lib/types/directory.d.ts +447 -0
  22. package/lib/types/docs.d.ts +28 -18
  23. package/lib/types/document_ai.d.ts +347 -252
  24. package/lib/types/docx.d.ts +428 -383
  25. package/lib/types/drive.d.ts +1093 -1048
  26. package/lib/types/ehr.d.ts +66 -51
  27. package/lib/types/event.d.ts +16 -6
  28. package/lib/types/helpdesk.d.ts +816 -741
  29. package/lib/types/hire.d.ts +3955 -3589
  30. package/lib/types/human_authentication.d.ts +32 -22
  31. package/lib/types/im.d.ts +1420 -1295
  32. package/lib/types/index.d.ts +1422 -330
  33. package/lib/types/lingo.d.ts +279 -249
  34. package/lib/types/mail.d.ts +1032 -675
  35. package/lib/types/mdm.d.ts +105 -37
  36. package/lib/types/minutes.d.ts +73 -26
  37. package/lib/types/moments.d.ts +23 -13
  38. package/lib/types/okr.d.ts +266 -225
  39. package/lib/types/optical_char_recognition.d.ts +22 -12
  40. package/lib/types/passport.d.ts +58 -48
  41. package/lib/types/payroll.d.ts +210 -53
  42. package/lib/types/performance.d.ts +463 -414
  43. package/lib/types/personal_settings.d.ts +93 -82
  44. package/lib/types/report.d.ts +79 -58
  45. package/lib/types/search.d.ts +265 -235
  46. package/lib/types/security_and_compliance.d.ts +30 -19
  47. package/lib/types/sheets.d.ts +356 -321
  48. package/lib/types/speech_to_text.d.ts +44 -34
  49. package/lib/types/task.d.ts +998 -1087
  50. package/lib/types/tenant.d.ts +25 -15
  51. package/lib/types/translation.d.ts +42 -32
  52. package/lib/types/trust_party.d.ts +81 -0
  53. package/lib/types/vc.d.ts +1218 -1123
  54. package/lib/types/verification.d.ts +11 -6
  55. package/lib/types/wiki.d.ts +270 -235
  56. package/lib/types/workplace.d.ts +58 -38
  57. package/lib/utils.d.ts +2 -2
  58. package/package.json +4 -4
  59. package/src/bot.ts +15 -15
  60. package/src/internal.ts +29 -12
  61. package/src/message.ts +10 -10
  62. package/src/types/acs.ts +234 -186
  63. package/src/types/admin.ts +353 -305
  64. package/src/types/aily.ts +375 -233
  65. package/src/types/apaas.ts +754 -568
  66. package/src/types/application.ts +633 -507
  67. package/src/types/approval.ts +914 -872
  68. package/src/types/attendance.ts +1226 -1104
  69. package/src/types/auth.ts +72 -66
  70. package/src/types/authen.ts +233 -191
  71. package/src/types/baike.ts +276 -246
  72. package/src/types/base.ts +93 -0
  73. package/src/types/bitable.ts +966 -894
  74. package/src/types/board.ts +34 -16
  75. package/src/types/calendar.ts +751 -685
  76. package/src/types/cardkit.ts +164 -146
  77. package/src/types/compensation.ts +97 -55
  78. package/src/types/contact.ts +1465 -1375
  79. package/src/types/corehr.ts +5664 -5077
  80. package/src/types/directory.ts +569 -0
  81. package/src/types/docs.ts +31 -19
  82. package/src/types/document_ai.ts +401 -287
  83. package/src/types/docx.ts +492 -438
  84. package/src/types/drive.ts +1266 -1213
  85. package/src/types/ehr.ts +71 -53
  86. package/src/types/event.ts +19 -7
  87. package/src/types/helpdesk.ts +930 -840
  88. package/src/types/hire.ts +4453 -4019
  89. package/src/types/human_authentication.ts +35 -23
  90. package/src/types/im.ts +1626 -1476
  91. package/src/types/index.ts +1532 -346
  92. package/src/types/lingo.ts +299 -263
  93. package/src/types/mail.ts +1231 -779
  94. package/src/types/mdm.ts +122 -39
  95. package/src/types/minutes.ts +88 -28
  96. package/src/types/moments.ts +26 -14
  97. package/src/types/okr.ts +286 -238
  98. package/src/types/optical_char_recognition.ts +25 -13
  99. package/src/types/passport.ts +62 -50
  100. package/src/types/payroll.ts +254 -57
  101. package/src/types/performance.ts +528 -467
  102. package/src/types/personal_settings.ts +101 -89
  103. package/src/types/report.ts +86 -62
  104. package/src/types/search.ts +285 -249
  105. package/src/types/security_and_compliance.ts +33 -21
  106. package/src/types/sheets.ts +421 -379
  107. package/src/types/speech_to_text.ts +48 -36
  108. package/src/types/task.ts +1152 -1260
  109. package/src/types/tenant.ts +29 -17
  110. package/src/types/translation.ts +46 -34
  111. package/src/types/trust_party.ts +110 -0
  112. package/src/types/vc.ts +1397 -1283
  113. package/src/types/verification.ts +13 -7
  114. package/src/types/wiki.ts +293 -251
  115. package/src/types/workplace.ts +65 -41
  116. package/src/utils.ts +3 -3
@@ -1,1198 +1,1320 @@
1
- import { ApprovalInfo, ArchiveField, ArchiveReportData, ArchiveReportMeta, File, FlexibleRule, FreePunchCfg, Group, GroupMeta, LangText, LateOffLateOnRule, LateOffLateOnSetting, LeaveAccrualRecord, LeaveEmployExpireRecord, LeaveNeedPunchCfg, Location, Machine, MemberStatusChange, OvertimeClockCfg, OvertimeRule, PunchMember, PunchSpecialDateShift, PunchTimeRule, RestRule, RestTimeFlexibleConfig, Shift, ShiftAttendanceTimeConfig, ShiftMiddleTimeRule, UserAllowedRemedy, UserApproval, UserBase, UserDailyShift, UserFlow, UserSetting, UserStatsData, UserStatsField, UserStatsView, UserTask, UserTaskRemedy, UserTmpDailyShift } from '.'
2
- import { Internal, Pagination } from '../internal'
1
+ import * as Lark from '.'
2
+ import { Internal, Paginated, Pagination } from '../internal'
3
3
 
4
4
  declare module '../internal' {
5
5
  interface Internal {
6
- /**
7
- * 创建班次
8
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/shift/create
9
- */
10
- createAttendanceShift(body: CreateAttendanceShiftRequest, query?: CreateAttendanceShiftQuery): Promise<CreateAttendanceShiftResponse>
11
- /**
12
- * 删除班次
13
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/shift/delete
14
- */
15
- deleteAttendanceShift(shift_id: string): Promise<void>
16
- /**
17
- * 按 ID 查询班次
18
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/shift/get
19
- */
20
- getAttendanceShift(shift_id: string): Promise<GetAttendanceShiftResponse>
21
- /**
22
- * 按名称查询班次
23
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/shift/query
24
- */
25
- queryAttendanceShift(query?: QueryAttendanceShiftQuery): Promise<QueryAttendanceShiftResponse>
26
- /**
27
- * 查询所有班次
28
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/shift/list
29
- */
30
- listAttendanceShift(query?: Pagination): Paginated<Shift, 'shift_list'>
31
- /**
32
- * 创建或修改排班表
33
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_daily_shift/batch_create
34
- */
35
- batchCreateAttendanceUserDailyShift(body: BatchCreateAttendanceUserDailyShiftRequest, query?: BatchCreateAttendanceUserDailyShiftQuery): Promise<BatchCreateAttendanceUserDailyShiftResponse>
36
- /**
37
- * 查询排班表
38
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_daily_shift/query
39
- */
40
- queryAttendanceUserDailyShift(body: QueryAttendanceUserDailyShiftRequest, query?: QueryAttendanceUserDailyShiftQuery): Promise<QueryAttendanceUserDailyShiftResponse>
41
- /**
42
- * 创建或修改临时排班
43
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_daily_shift/batch_create_temp
44
- */
45
- batchCreateTempAttendanceUserDailyShift(body: BatchCreateTempAttendanceUserDailyShiftRequest, query?: BatchCreateTempAttendanceUserDailyShiftQuery): Promise<BatchCreateTempAttendanceUserDailyShiftResponse>
46
- /**
47
- * 查询考勤组下所有成员
48
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/group/list_user
49
- */
50
- listUserAttendanceGroup(group_id: string, query?: ListUserAttendanceGroupQuery): Paginated<UserBase, 'users'>
51
- /**
52
- * 创建或修改考勤组
53
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/group/create
54
- */
55
- createAttendanceGroup(body: CreateAttendanceGroupRequest, query?: CreateAttendanceGroupQuery): Promise<CreateAttendanceGroupResponse>
56
- /**
57
- * 删除考勤组
58
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/group/delete
59
- */
60
- deleteAttendanceGroup(group_id: string): Promise<void>
61
- /**
62
- * 按 ID 查询考勤组
63
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/group/get
64
- */
65
- getAttendanceGroup(group_id: string, query?: GetAttendanceGroupQuery): Promise<GetAttendanceGroupResponse>
66
- /**
67
- * 按名称查询考勤组
68
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/group/search
69
- */
70
- searchAttendanceGroup(body: SearchAttendanceGroupRequest): Promise<SearchAttendanceGroupResponse>
71
- /**
72
- * 查询所有考勤组
73
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/group/list
74
- */
75
- listAttendanceGroup(query?: Pagination): Paginated<GroupMeta, 'group_list'>
76
- /**
77
- * 修改用户人脸识别信息
78
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_setting/modify
79
- */
80
- modifyAttendanceUserSetting(body: ModifyAttendanceUserSettingRequest, query?: ModifyAttendanceUserSettingQuery): Promise<ModifyAttendanceUserSettingResponse>
81
- /**
82
- * 批量查询用户人脸识别信息
83
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_setting/query
84
- */
85
- queryAttendanceUserSetting(body: QueryAttendanceUserSettingRequest, query?: QueryAttendanceUserSettingQuery): Promise<QueryAttendanceUserSettingResponse>
86
- /**
87
- * 上传用户人脸识别照片
88
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/file/upload
89
- */
90
- uploadAttendanceFile(form: UploadAttendanceFileForm, query?: UploadAttendanceFileQuery): Promise<UploadAttendanceFileResponse>
91
- /**
92
- * 下载用户人脸识别照片
93
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/file/download
94
- */
95
- downloadAttendanceFile(file_id: string): Promise<ArrayBuffer>
96
- /**
97
- * 更新统计设置
98
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_stats_view/update
99
- */
100
- updateAttendanceUserStatsView(user_stats_view_id: string, body: UpdateAttendanceUserStatsViewRequest, query?: UpdateAttendanceUserStatsViewQuery): Promise<UpdateAttendanceUserStatsViewResponse>
101
- /**
102
- * 查询统计表头
103
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_stats_field/query
104
- */
105
- queryAttendanceUserStatsField(body: QueryAttendanceUserStatsFieldRequest, query?: QueryAttendanceUserStatsFieldQuery): Promise<QueryAttendanceUserStatsFieldResponse>
106
- /**
107
- * 查询统计设置
108
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_stats_view/query
109
- */
110
- queryAttendanceUserStatsView(body: QueryAttendanceUserStatsViewRequest, query?: QueryAttendanceUserStatsViewQuery): Promise<QueryAttendanceUserStatsViewResponse>
111
- /**
112
- * 查询统计数据
113
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_stats_data/query
114
- */
115
- queryAttendanceUserStatsData(body: QueryAttendanceUserStatsDataRequest, query?: QueryAttendanceUserStatsDataQuery): Promise<QueryAttendanceUserStatsDataResponse>
116
- /**
117
- * 获取审批通过数据
118
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_approval/query
119
- */
120
- queryAttendanceUserApproval(body: QueryAttendanceUserApprovalRequest, query?: QueryAttendanceUserApprovalQuery): Promise<QueryAttendanceUserApprovalResponse>
121
- /**
122
- * 写入审批结果
123
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_approval/create
124
- */
125
- createAttendanceUserApproval(body: CreateAttendanceUserApprovalRequest, query?: CreateAttendanceUserApprovalQuery): Promise<CreateAttendanceUserApprovalResponse>
126
- /**
127
- * 通知审批状态更新
128
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/approval_info/process
129
- */
130
- processAttendanceApprovalInfo(body: ProcessAttendanceApprovalInfoRequest): Promise<ProcessAttendanceApprovalInfoResponse>
131
- /**
132
- * 通知补卡审批发起
133
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_task_remedy/create
134
- */
135
- createAttendanceUserTaskRemedy(body: CreateAttendanceUserTaskRemedyRequest, query?: CreateAttendanceUserTaskRemedyQuery): Promise<CreateAttendanceUserTaskRemedyResponse>
136
- /**
137
- * 获取可补卡时间
138
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_task_remedy/query_user_allowed_remedys
139
- */
140
- queryUserAllowedRemedysAttendanceUserTaskRemedy(body: QueryUserAllowedRemedysAttendanceUserTaskRemedyRequest, query?: QueryUserAllowedRemedysAttendanceUserTaskRemedyQuery): Promise<QueryUserAllowedRemedysAttendanceUserTaskRemedyResponse>
141
- /**
142
- * 获取补卡记录
143
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_task_remedy/query
144
- */
145
- queryAttendanceUserTaskRemedy(body: QueryAttendanceUserTaskRemedyRequest, query?: QueryAttendanceUserTaskRemedyQuery): Promise<QueryAttendanceUserTaskRemedyResponse>
146
- /**
147
- * 查询归档报表表头
148
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/archive_rule/user_stats_fields_query
149
- */
150
- userStatsFieldsQueryAttendanceArchiveRule(body: UserStatsFieldsQueryAttendanceArchiveRuleRequest, query?: UserStatsFieldsQueryAttendanceArchiveRuleQuery): Promise<UserStatsFieldsQueryAttendanceArchiveRuleResponse>
151
- /**
152
- * 写入归档报表结果
153
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/archive_rule/upload_report
154
- */
155
- uploadReportAttendanceArchiveRule(body: UploadReportAttendanceArchiveRuleRequest, query?: UploadReportAttendanceArchiveRuleQuery): Promise<UploadReportAttendanceArchiveRuleResponse>
156
- /**
157
- * 删除归档报表行数据
158
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/archive_rule/del_report
159
- */
160
- delReportAttendanceArchiveRule(body: DelReportAttendanceArchiveRuleRequest, query?: DelReportAttendanceArchiveRuleQuery): Promise<void>
161
- /**
162
- * 查询所有归档规则
163
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/archive_rule/list
164
- */
165
- listAttendanceArchiveRule(query?: Pagination): Paginated<ArchiveReportMeta>
166
- /**
167
- * 导入打卡流水
168
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_flow/batch_create
169
- */
170
- batchCreateAttendanceUserFlow(body: BatchCreateAttendanceUserFlowRequest, query?: BatchCreateAttendanceUserFlowQuery): Promise<BatchCreateAttendanceUserFlowResponse>
171
- /**
172
- * 查询打卡流水
173
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_flow/get
174
- */
175
- getAttendanceUserFlow(user_flow_id: string, query?: GetAttendanceUserFlowQuery): Promise<GetAttendanceUserFlowResponse>
176
- /**
177
- * 批量查询打卡流水
178
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_flow/query
179
- */
180
- queryAttendanceUserFlow(body: QueryAttendanceUserFlowRequest, query?: QueryAttendanceUserFlowQuery): Promise<QueryAttendanceUserFlowResponse>
181
- /**
182
- * 查询打卡结果
183
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_task/query
184
- */
185
- queryAttendanceUserTask(body: QueryAttendanceUserTaskRequest, query?: QueryAttendanceUserTaskQuery): Promise<QueryAttendanceUserTaskResponse>
186
- /**
187
- * 通过过期时间获取发放记录
188
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/leave_employ_expire_record/get
189
- */
190
- getAttendanceLeaveEmployExpireRecord(leave_id: string, body: GetAttendanceLeaveEmployExpireRecordRequest, query?: GetAttendanceLeaveEmployExpireRecordQuery): Promise<GetAttendanceLeaveEmployExpireRecordResponse>
191
- /**
192
- * 修改发放记录
193
- * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/leave_accrual_record/patch
194
- */
195
- patchAttendanceLeaveAccrualRecord(leave_id: string, body: PatchAttendanceLeaveAccrualRecordRequest, query?: PatchAttendanceLeaveAccrualRecordQuery): Promise<PatchAttendanceLeaveAccrualRecordResponse>
6
+ attendance: Attendance.Methods
196
7
  }
197
8
  }
198
9
 
199
- export interface CreateAttendanceShiftRequest {
200
- /** 班次名称 */
201
- shift_name: string
202
- /** 打卡次数 */
203
- punch_times: number
204
- /** 排班组子负责人id列表 */
205
- sub_shift_leader_ids?: string[]
206
- /** 是否弹性打卡 */
207
- is_flexible?: boolean
208
- /** 弹性打卡时间,设置【上班最多可晚到】与【下班最多可早走】时间,如果不设置flexible_rule则生效 */
209
- flexible_minutes?: number
210
- /** 弹性打卡时间设置 */
211
- flexible_rule?: FlexibleRule[]
212
- /** 不需要打下班卡 */
213
- no_need_off?: boolean
214
- /** 打卡规则 */
215
- punch_time_rule: PunchTimeRule[]
216
- /** 晚走晚到规则 */
217
- late_off_late_on_rule?: LateOffLateOnRule[]
218
- /** 休息规则 */
219
- rest_time_rule?: RestRule[]
220
- /** 打卡规则 */
221
- overtime_rule?: OvertimeRule[]
222
- /** 日期类型,【是否弹性打卡 = ture】时,不可设置为“休息日” 可选值:1:工作日 2:休息日 示例值:(默认值)1 */
223
- day_type?: number
224
- /** 班外休息规则 */
225
- overtime_rest_time_rule?: RestRule[]
226
- /** 晚到多久记为严重迟到(优先级比原有字段高) */
227
- late_minutes_as_serious_late?: number
228
- /** 半天分割规则 */
229
- shift_middle_time_rule?: ShiftMiddleTimeRule
230
- /** 应出勤配置 */
231
- shift_attendance_time_config?: ShiftAttendanceTimeConfig
232
- /** 晚走次日晚到配置规则 */
233
- late_off_late_on_setting?: LateOffLateOnSetting
234
- /** 班次id(更新班次时需要传递) */
235
- id?: string
236
- /** 休息弹性设置 */
237
- rest_time_flexible_configs?: RestTimeFlexibleConfig[]
238
- }
239
-
240
- export interface CreateAttendanceShiftQuery {
241
- /** 用户 ID 的类型 不提供则用户相关字段无效 */
242
- employee_type?: 'employee_id' | 'employee_no'
243
- }
244
-
245
- export interface CreateAttendanceShiftResponse {
246
- /** 班次 */
247
- shift?: Shift
248
- }
249
-
250
- export interface GetAttendanceShiftResponse {
251
- /** 班次Id */
252
- shift_id: string
253
- /** 班次名称 */
254
- shift_name: string
255
- /** 打卡次数 */
256
- punch_times: number
257
- /** 排班组子负责人id列表 */
258
- sub_shift_leader_ids?: string[]
259
- /** 是否弹性打卡 */
260
- is_flexible?: boolean
261
- /** 弹性打卡时间,设置【上班最多可晚到】与【下班最多可早走】时间,如果不设置flexible_rule则生效 */
262
- flexible_minutes?: number
263
- /** 弹性打卡时间设置 */
264
- flexible_rule?: FlexibleRule[]
265
- /** 不需要打下班卡 */
266
- no_need_off?: boolean
267
- /** 打卡规则 */
268
- punch_time_rule: PunchTimeRule[]
269
- /** 晚走晚到规则 */
270
- late_off_late_on_rule?: LateOffLateOnRule[]
271
- /** 休息规则 */
272
- rest_time_rule?: RestRule[]
273
- /** 打卡规则 */
274
- overtime_rule?: OvertimeRule[]
275
- /** 日期类型,【是否弹性打卡 = ture】时,不可设置为“休息日” 可选值:1:工作日 2:休息日 示例值:(默认值)1 */
276
- day_type?: number
277
- /** 班外休息规则 */
278
- overtime_rest_time_rule?: RestRule[]
279
- /** 晚到多久记为严重迟到(优先级比原有字段高) */
280
- late_minutes_as_serious_late?: number
281
- /** 半天分割规则 */
282
- shift_middle_time_rule?: ShiftMiddleTimeRule
283
- /** 应出勤配置 */
284
- shift_attendance_time_config?: ShiftAttendanceTimeConfig
285
- /** 晚走次日晚到配置规则 */
286
- late_off_late_on_setting?: LateOffLateOnSetting
287
- /** 班次id(更新班次时需要传递) */
288
- id?: string
289
- /** 休息弹性设置 */
290
- rest_time_flexible_configs?: RestTimeFlexibleConfig[]
291
- }
292
-
293
- export interface QueryAttendanceShiftQuery {
294
- /** 班次名称 */
295
- shift_name: string
296
- }
297
-
298
- export interface QueryAttendanceShiftResponse {
299
- /** 班次Id */
300
- shift_id: string
301
- /** 班次名称 */
302
- shift_name: string
303
- /** 打卡次数 */
304
- punch_times: number
305
- /** 排班组子负责人id列表 */
306
- sub_shift_leader_ids?: string[]
307
- /** 是否弹性打卡 */
308
- is_flexible?: boolean
309
- /** 弹性打卡时间,设置【上班最多可晚到】与【下班最多可早走】时间,如果不设置flexible_rule则生效 */
310
- flexible_minutes?: number
311
- /** 弹性打卡时间设置 */
312
- flexible_rule?: FlexibleRule[]
313
- /** 不需要打下班卡 */
314
- no_need_off?: boolean
315
- /** 打卡规则 */
316
- punch_time_rule: PunchTimeRule[]
317
- /** 晚走晚到规则 */
318
- late_off_late_on_rule?: LateOffLateOnRule[]
319
- /** 休息规则 */
320
- rest_time_rule?: RestRule[]
321
- /** 打卡规则 */
322
- overtime_rule?: OvertimeRule[]
323
- /** 日期类型,【是否弹性打卡 = ture】时,不可设置为“休息日” 可选值:1:工作日 2:休息日 示例值:(默认值)1 */
324
- day_type?: number
325
- /** 班外休息规则 */
326
- overtime_rest_time_rule?: RestRule[]
327
- /** 晚到多久记为严重迟到(优先级比原有字段高) */
328
- late_minutes_as_serious_late?: number
329
- /** 半天分割规则 */
330
- shift_middle_time_rule?: ShiftMiddleTimeRule
331
- /** 应出勤配置 */
332
- shift_attendance_time_config?: ShiftAttendanceTimeConfig
333
- /** 晚走次日晚到配置规则 */
334
- late_off_late_on_setting?: LateOffLateOnSetting
335
- /** 班次id(更新班次时需要传递) */
336
- id?: string
337
- /** 休息弹性设置 */
338
- rest_time_flexible_configs?: RestTimeFlexibleConfig[]
339
- }
340
-
341
- export interface BatchCreateAttendanceUserDailyShiftRequest {
342
- /** 班表信息列表 */
343
- user_daily_shifts: UserDailyShift[]
344
- /** 操作人uid,如果您未操作[考勤管理后台“API 接入”流程](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/attendance-development-guidelines),则此字段为必填字段 */
345
- operator_id?: string
346
- }
347
-
348
- export interface BatchCreateAttendanceUserDailyShiftQuery {
349
- /** 请求体和响应体中的 user_id 的员工工号类型 */
350
- employee_type: 'employee_id' | 'employee_no'
351
- }
352
-
353
- export interface BatchCreateAttendanceUserDailyShiftResponse {
354
- /** 班表信息列表 */
355
- user_daily_shifts?: UserDailyShift[]
356
- }
357
-
358
- export interface QueryAttendanceUserDailyShiftRequest {
359
- /** employee_no 或 employee_id 列表 */
360
- user_ids: string[]
361
- /** 查询的起始工作日 */
362
- check_date_from: number
363
- /** 查询的结束工作日 */
364
- check_date_to: number
365
- }
366
-
367
- export interface QueryAttendanceUserDailyShiftQuery {
368
- /** 请求体中的 user_ids 和响应体中的 user_id 的员工工号类型 */
369
- employee_type: 'employee_id' | 'employee_no'
370
- }
371
-
372
- export interface QueryAttendanceUserDailyShiftResponse {
373
- /** 班表信息列表 */
374
- user_daily_shifts?: UserDailyShift[]
375
- }
376
-
377
- export interface BatchCreateTempAttendanceUserDailyShiftRequest {
378
- /** 临时班表信息列表(数量限制50以内) */
379
- user_tmp_daily_shifts: UserTmpDailyShift[]
380
- /** 操作人uid */
381
- operator_id?: string
382
- }
383
-
384
- export interface BatchCreateTempAttendanceUserDailyShiftQuery {
385
- /** 请求体和响应体中的 user_id 的员工工号类型 */
386
- employee_type: 'employee_id' | 'employee_no'
387
- }
388
-
389
- export interface BatchCreateTempAttendanceUserDailyShiftResponse {
390
- /** 临时班表信息列表 */
391
- user_tmp_daily_shifts?: UserTmpDailyShift[]
392
- }
393
-
394
- export interface ListUserAttendanceGroupQuery extends Pagination {
395
- /** 用户 ID 的类型 */
396
- employee_type: string
397
- /** 部门 ID 的类型 */
398
- dept_type: string
399
- /** 打卡类型 */
400
- member_clock_type: number
401
- }
402
-
403
- export interface CreateAttendanceGroupRequest {
404
- /** 6921319402260496386 */
405
- group: Group
406
- /** 操作人uid,如果您未操作[考勤管理后台“API 接入”流程](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/attendance-development-guidelines),则此字段为必填字段 */
407
- operator_id?: string
408
- }
409
-
410
- export interface CreateAttendanceGroupQuery {
411
- /** 用户 ID 的类型 */
412
- employee_type: 'employee_id' | 'employee_no'
413
- /** 部门 ID 的类型 */
414
- dept_type: 'open_id'
415
- }
416
-
417
- export interface CreateAttendanceGroupResponse {
418
- group?: Group
419
- }
420
-
421
- export interface GetAttendanceGroupQuery {
422
- /** 用户 ID 的类型 */
423
- employee_type: 'employee_id' | 'employee_no'
424
- /** 部门 ID 的类型 */
425
- dept_type: 'open_id'
426
- }
427
-
428
- export interface GetAttendanceGroupResponse {
429
- /** 考勤组的Id, 需要从获取用户打卡结果信息的接口中获取groupId,修改考勤组时必填 */
430
- group_id?: string
431
- /** 考勤组名称 */
432
- group_name: string
433
- /** 考勤组时区 */
434
- time_zone: string
435
- /** 参加考勤的部门id列表 */
436
- bind_dept_ids?: string[]
437
- /** 无需考勤的部门id列表 */
438
- except_dept_ids?: string[]
439
- /** 参加考勤的人员id列表 */
440
- bind_user_ids?: string[]
441
- /** 参加考勤的人员id列表 */
442
- except_user_ids?: string[]
443
- /** 考勤组主负责人id列表 */
444
- group_leader_ids: string[]
445
- /** 考勤组子负责人id列表 */
446
- sub_group_leader_ids?: string[]
447
- /** 是否允许外勤打卡 */
448
- allow_out_punch?: boolean
449
- /** 外勤打卡需审批,先审批后打卡(需要允许外勤打卡才能设置生效) */
450
- out_punch_need_approval?: boolean
451
- /** 外勤打卡需审批,先打卡后审批(需要允许外勤打卡才能设置生效) */
452
- out_punch_need_post_approval?: boolean
453
- /** 外勤打卡需填写备注(需要允许外勤打卡才能设置生效) */
454
- out_punch_need_remark?: boolean
455
- /** 外勤打卡需拍照(需要允许外勤打卡才能设置生效) */
456
- out_punch_need_photo?: boolean
457
- /** 外勤打卡允许员工隐藏详细地址(需要允许外勤打卡才能设置生效) */
458
- out_punch_allowed_hide_addr?: boolean
459
- /** 外勤打卡允许微调地址(需要允许外勤打卡才能设置生效) */
460
- out_punch_allowed_adjust_addr?: boolean
461
- /** 微调范围,默认为 50 米 */
462
- adjust_range?: number
463
- /** 是否允许pc打卡 */
464
- allow_pc_punch?: boolean
465
- /** 是否允许补卡 */
466
- allow_remedy?: boolean
467
- /** 补卡次数是否限制(需要允许补卡才能设置生效) */
468
- remedy_limit?: boolean
469
- /** 补卡次数(需要允许补卡才能设置生效) */
470
- remedy_limit_count?: number
471
- /** 补卡时间是否限制(需要允许补卡才能设置生效) */
472
- remedy_date_limit?: boolean
473
- /** 补卡时间,几天内可以发起补卡(需要允许补卡才能设置生效) */
474
- remedy_date_num?: number
475
- /** 允许缺卡补卡(需要允许补卡才能设置生效) */
476
- allow_remedy_type_lack?: boolean
477
- /** 允许迟到补卡(需要允许补卡才能设置生效) */
478
- allow_remedy_type_late?: boolean
479
- /** 允许早退补卡(需要允许补卡才能设置生效) */
480
- allow_remedy_type_early?: boolean
481
- /** 允许正常补卡(需要允许补卡才能设置生效) */
482
- allow_remedy_type_normal?: boolean
483
- /** 是否展示累计时长 */
484
- show_cumulative_time?: boolean
485
- /** 是否展示加班时长 */
486
- show_over_time?: boolean
487
- /** 是否隐藏员工打卡详情 */
488
- hide_staff_punch_time?: boolean
489
- /** 是否开启人脸打卡 */
490
- face_punch?: boolean
491
- /** 人脸打卡规则, 1:每次打卡均需人脸识别 2:疑似需要 */
492
- face_punch_cfg?: number
493
- /** 人脸打卡规则, false:开启活体验证 true:0动作验证,仅在 face_punch_cfg = 1 时有效 */
494
- face_live_need_action?: boolean
495
- /** 脸识别失败时允许普通拍照打卡 */
496
- face_downgrade?: boolean
497
- /** 是否允许替换基准图片 */
498
- replace_basic_pic?: boolean
499
- /** 考勤机信息 */
500
- machines?: Machine[]
501
- /** GPS打卡的地址范围 */
502
- gps_range?: number
503
- /** GPS打卡的地址信息 */
504
- locations?: Location[]
505
- /** 考勤类型 0:固定考勤 2:排班考勤, 3:自由班次 */
506
- group_type: number
507
- /** 固定班次必需填 */
508
- punch_day_shift_ids: string[]
509
- free_punch_cfg?: FreePunchCfg
510
- /** 国家日历 id,(0:不根据国家日历休息, 1:中国,2:美国,3:日本,4:印度,5:新加坡),默认 1 */
511
- calendar_id: number
512
- /** 强制需要打卡的日期 */
513
- need_punch_special_days?: PunchSpecialDateShift[]
514
- /** 强制不需要打卡的日期 */
515
- no_need_punch_special_days?: PunchSpecialDateShift[]
516
- /** 自由班次下工作日不打卡是否记为缺卡 */
517
- work_day_no_punch_as_lack?: boolean
518
- /** 补卡周期类型 */
519
- remedy_period_type?: number
520
- /** 补卡自定义周期起始日期 */
521
- remedy_period_custom_date?: number
522
- /** 打卡类型,位运算。1:GPS打卡;2:wifi打卡;4:考勤机打卡;8:IP打卡 */
523
- punch_type?: number
524
- /** 生效时间,精确到秒的时间戳 */
525
- effect_time?: string
526
- /** 固定班次生效时间,精确到秒的时间戳 */
527
- fixshift_effect_time?: string
528
- /** 参加考勤的人员、部门变动生效时间,精确到秒的时间戳 */
529
- member_effect_time?: string
530
- /** 休息日打卡需审批 */
531
- rest_clockIn_need_approval?: boolean
532
- /** 每次打卡均需拍照 */
533
- clockIn_need_photo?: boolean
534
- /** 人员异动打卡设置 */
535
- member_status_change?: MemberStatusChange
536
- /** 请假离岗或返岗是否需打卡 */
537
- leave_need_punch?: boolean
538
- /** 请假离岗或返岗打卡规则 */
539
- leave_need_punch_cfg?: LeaveNeedPunchCfg
540
- /** 外出期间是否需打卡 */
541
- go_out_need_punch?: number
542
- /** 外出期间打卡规则 */
543
- go_out_need_punch_cfg?: LeaveNeedPunchCfg
544
- /** 出差期间是否需打卡 */
545
- travel_need_punch?: number
546
- /** 出差期间打卡规则 */
547
- travel_need_punch_cfg?: LeaveNeedPunchCfg
548
- /** 需要打卡的人员配置(新) */
549
- need_punch_members?: PunchMember[]
550
- /** 无需打卡的人员配置(新) */
551
- no_need_punch_members?: PunchMember[]
552
- /** 是否直接保存可以自动变更的冲突规则 */
553
- save_auto_changes?: boolean
554
- /** 人员异动开关(人员组织架构变更后是否允许自动调整到该考勤组) */
555
- org_change_auto_adjust?: boolean
556
- /** 默认出勤的部门id列表 */
557
- bind_default_dept_ids?: string[]
558
- /** 默认出勤的用户ID列表 */
559
- bind_default_user_ids?: string[]
560
- /** 加班打卡规则 */
561
- overtime_clock_cfg?: OvertimeClockCfg
562
- /** 节假日id,(如果考勤组使用了自定义节假日,请用此参数传入节假日id) */
563
- new_calendar_id?: string
564
- /** 定位不准时是否允许申请打卡 */
565
- allow_apply_punch?: boolean
566
- }
567
-
568
- export interface SearchAttendanceGroupRequest {
569
- /** 考勤组名称 */
570
- group_name: string
571
- }
572
-
573
- export interface SearchAttendanceGroupResponse {
574
- /** 考勤组列表 */
575
- group_list?: GroupMeta[]
576
- }
577
-
578
- export interface ModifyAttendanceUserSettingRequest {
579
- /** 用户设置 */
580
- user_setting?: UserSetting
581
- }
582
-
583
- export interface ModifyAttendanceUserSettingQuery {
584
- /** 请求体和响应体中的 user_id 的员工工号类型 */
585
- employee_type: 'employee_id' | 'employee_no'
586
- }
587
-
588
- export interface ModifyAttendanceUserSettingResponse {
589
- /** 用户设置 */
590
- user_setting?: UserSetting
591
- }
592
-
593
- export interface QueryAttendanceUserSettingRequest {
594
- /** employee_no 或 employee_id 列表 */
595
- user_ids: string[]
596
- }
597
-
598
- export interface QueryAttendanceUserSettingQuery {
599
- /** 请求体中的 user_ids 和响应体中的 user_id 的员工工号类型 */
600
- employee_type: 'employee_id' | 'employee_no'
601
- }
602
-
603
- export interface QueryAttendanceUserSettingResponse {
604
- /** 用户设置信息列表 */
605
- user_settings?: UserSetting[]
606
- }
607
-
608
- export interface UploadAttendanceFileForm {
609
- /** 文件内容 */
610
- file?: Blob
611
- }
612
-
613
- export interface UploadAttendanceFileQuery {
614
- /** 带后缀的文件名 */
615
- file_name: string
616
- }
617
-
618
- export interface UploadAttendanceFileResponse {
619
- file?: File
620
- }
621
-
622
- export interface UpdateAttendanceUserStatsViewRequest {
623
- /** 统计设置 */
624
- view: UserStatsView
625
- }
626
-
627
- export interface UpdateAttendanceUserStatsViewQuery {
628
- /** 员工工号类型 */
629
- employee_type: 'employee_id' | 'employee_no'
630
- }
631
-
632
- export interface UpdateAttendanceUserStatsViewResponse {
633
- /** 视图 */
634
- view?: UserStatsView
635
- }
636
-
637
- export interface QueryAttendanceUserStatsFieldRequest {
638
- /** 语言类型 */
639
- locale: 'en' | 'ja' | 'zh'
640
- /** 统计类型 */
641
- stats_type: 'daily' | 'month'
642
- /** 开始时间 */
643
- start_date: number
644
- /** 结束时间(时间间隔不超过 40 天) */
645
- end_date: number
646
- }
647
-
648
- export interface QueryAttendanceUserStatsFieldQuery {
649
- /** 响应体中的 user_id 的员工工号类型 */
650
- employee_type: 'employee_id' | 'employee_no'
651
- }
652
-
653
- export interface QueryAttendanceUserStatsFieldResponse {
654
- user_stats_field?: UserStatsField
655
- }
656
-
657
- export interface QueryAttendanceUserStatsViewRequest {
658
- /** 语言类型 */
659
- locale: 'en' | 'ja' | 'zh'
660
- /** 统计类型 */
661
- stats_type: 'daily' | 'month'
662
- /** 查询用户id,同【查询统计数据】、【更新统计设置】user_id */
663
- user_id?: string
664
- }
665
-
666
- export interface QueryAttendanceUserStatsViewQuery {
667
- /** 响应体中的 user_id 的员工工号类型 */
668
- employee_type: 'employee_id' | 'employee_no'
669
- }
670
-
671
- export interface QueryAttendanceUserStatsViewResponse {
672
- view?: UserStatsView
673
- }
674
-
675
- export interface QueryAttendanceUserStatsDataRequest {
676
- /** 语言类型 */
677
- locale: 'en' | 'ja' | 'zh'
678
- /** 统计类型 */
679
- stats_type: 'daily' | 'month'
680
- /** 开始时间 */
681
- start_date: number
682
- /** 结束时间(时间间隔不超过 40 天) */
683
- end_date: number
684
- /** 查询的用户 ID 列表(用户数量不超过 200) */
685
- user_ids?: string[]
686
- /** 是否需要历史数据 */
687
- need_history?: boolean
688
- /** 只展示当前考勤组 */
689
- current_group_only?: boolean
690
- /** 查询用户id,同【更新统计设置】、【查询统计设置】user_id */
691
- user_id?: string
692
- }
693
-
694
- export interface QueryAttendanceUserStatsDataQuery {
695
- /** 请求体中的 user_ids 和响应体中的 user_id 的员工工号类型 */
696
- employee_type: 'employee_id' | 'employee_no'
697
- }
698
-
699
- export interface QueryAttendanceUserStatsDataResponse {
700
- /** 用户统计数据 */
701
- user_datas?: UserStatsData[]
702
- /** 无权限获取的用户列表 */
703
- invalid_user_list?: string[]
704
- }
705
-
706
- export const enum QueryAttendanceUserApprovalRequestStatus {
707
- /** 待审批 */
708
- Todo = 0,
709
- /** 审批未通过 */
710
- Rejected = 1,
711
- /** 审批通过 */
712
- Approved = 2,
713
- /** 审批已取消 */
714
- Canceled = 3,
715
- /** 已撤回 */
716
- Reverted = 4,
717
- }
718
-
719
- export interface QueryAttendanceUserApprovalRequest {
720
- /** employee_no 或 employee_id 列表 */
721
- user_ids: string[]
722
- /** 查询的起始工作日 */
723
- check_date_from: number
724
- /** 查询的结束工作日,与 check_date_from 的时间间隔不超过 30 天 */
725
- check_date_to: number
726
- /** 查询依据的时间类型(不填默认依据PeriodTime) */
727
- check_date_type?: 'PeriodTime' | 'CreateTime' | 'UpdateTime'
728
- /** 查询状态(不填默认查询已通过状态) */
729
- status?: QueryAttendanceUserApprovalRequestStatus
730
- /** 查询的起始时间,精确到秒的时间戳 */
731
- check_time_from?: string
732
- /** 查询的结束时间,精确到秒的时间戳 */
733
- check_time_to?: string
734
- }
735
-
736
- export interface QueryAttendanceUserApprovalQuery {
737
- /** 请求体中的 user_ids 和响应体中的 user_id 的员工工号类型 */
738
- employee_type: 'employee_id' | 'employee_no' | 'open_id'
739
- }
740
-
741
- export interface QueryAttendanceUserApprovalResponse {
742
- /** 审批结果列表 */
743
- user_approvals?: UserApproval[]
744
- }
745
-
746
- export interface CreateAttendanceUserApprovalRequest {
747
- /** 审批信息 */
748
- user_approval?: UserApproval
749
- }
750
-
751
- export interface CreateAttendanceUserApprovalQuery {
752
- /** 请求体和响应体中的 user_id 的员工工号类型 */
753
- employee_type: 'employee_id' | 'employee_no' | 'open_id'
754
- }
755
-
756
- export interface CreateAttendanceUserApprovalResponse {
757
- /** 审批信息 */
758
- user_approval?: UserApproval
759
- }
760
-
761
- export interface ProcessAttendanceApprovalInfoRequest {
762
- /** 审批实例 ID,获取方式:1)[获取审批通过数据](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_approval/query) 2)[写入审批结果](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_approval/create) 3)[通知补卡审批发起(补卡情况下)](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_task_remedy/create) */
763
- approval_id: string
764
- /** 审批类型,leave:请假,out:外出,overtime:加班,trip:出差,remedy:补卡 */
765
- approval_type: string
766
- /** 审批状态,1:不通过,2:通过,4:撤销 */
767
- status: number
768
- }
769
-
770
- export interface ProcessAttendanceApprovalInfoResponse {
771
- /** 审批信息 */
772
- approval_info?: ApprovalInfo
773
- }
774
-
775
- export interface CreateAttendanceUserTaskRemedyRequest {
776
- /** 用户工号 */
777
- user_id: string
778
- /** 补卡日期 */
779
- remedy_date: number
780
- /** 第几次上下班,可能值0,1,2 */
781
- punch_no: number
782
- /** 上班/下班,1是上班,2是下班 */
783
- work_type: number
784
- /** 补卡时间 */
785
- remedy_time: string
786
- /** 补卡原因 */
787
- reason: string
788
- /** 补卡时间戳,精确到秒的时间戳 */
789
- time?: string
790
- }
791
-
792
- export interface CreateAttendanceUserTaskRemedyQuery {
793
- /** 请求体和响应体中的 user_id 的员工工号类型 */
794
- employee_type: 'employee_id' | 'employee_no'
795
- }
796
-
797
- export interface CreateAttendanceUserTaskRemedyResponse {
798
- /** 补卡审批信息 */
799
- user_remedy?: UserTaskRemedy
800
- }
801
-
802
- export interface QueryUserAllowedRemedysAttendanceUserTaskRemedyRequest {
803
- /** 用户 ID */
804
- user_id: string
805
- /** 补卡日期 */
806
- remedy_date: number
807
- }
808
-
809
- export interface QueryUserAllowedRemedysAttendanceUserTaskRemedyQuery {
810
- /** 请求体和响应体中的 user_id 的员工工号类型 */
811
- employee_type: 'employee_id' | 'employee_no'
812
- }
813
-
814
- export interface QueryUserAllowedRemedysAttendanceUserTaskRemedyResponse {
815
- /** 用户可补卡时间 */
816
- user_allowed_remedys?: UserAllowedRemedy[]
817
- }
818
-
819
- export const enum QueryAttendanceUserTaskRemedyRequestStatus {
820
- /** 待审批 */
821
- Pending = 0,
822
- /** 未通过 */
823
- Rejected = 1,
824
- /** 已通过 */
825
- Pass = 2,
826
- /** 已取消 */
827
- Cancel = 3,
828
- /** 已撤回 */
829
- Withdraw = 4,
830
- }
831
-
832
- export interface QueryAttendanceUserTaskRemedyRequest {
833
- /** employee_no 或 employee_id 列表 */
834
- user_ids: string[]
835
- /** 查询的起始时间,精确到秒的时间戳 */
836
- check_time_from: string
837
- /** 查询的结束时间,精确到秒的时间戳 */
838
- check_time_to: string
839
- /** 查询依据的时间类型(不填默认依据PeriodTime) */
840
- check_date_type?: 'PeriodTime' | 'CreateTime' | 'UpdateTime'
841
- /** 查询状态(不填默认查询已通过状态) */
842
- status?: QueryAttendanceUserTaskRemedyRequestStatus
843
- }
844
-
845
- export interface QueryAttendanceUserTaskRemedyQuery {
846
- /** 请求体中的 user_ids 和响应体中的 user_id 的员工工号类型 */
847
- employee_type: 'employee_id' | 'employee_no'
848
- }
849
-
850
- export interface QueryAttendanceUserTaskRemedyResponse {
851
- /** 补卡记录列表 */
852
- user_remedys?: UserTaskRemedy[]
853
- }
854
-
855
- export interface UserStatsFieldsQueryAttendanceArchiveRuleRequest {
856
- /** 语言类型 */
857
- locale?: string
858
- /** 月份 */
859
- month: string
860
- /** 归档规则id */
861
- archive_rule_id: string
862
- /** 操作者id */
863
- operator_id: string
864
- }
865
-
866
- export interface UserStatsFieldsQueryAttendanceArchiveRuleQuery {
867
- /** 用户 ID 的类型 */
868
- employee_type: string
869
- }
870
-
871
- export interface UserStatsFieldsQueryAttendanceArchiveRuleResponse {
872
- /** 统计数据表头 */
873
- archive_report_fields?: ArchiveField[]
874
- }
875
-
876
- export interface UploadReportAttendanceArchiveRuleRequest {
877
- /** 月份 */
878
- month: string
879
- /** 操作者ID */
880
- operator_id: string
881
- /** 归档报表内容(不超过50个) */
882
- archive_report_datas?: ArchiveReportData[]
883
- /** 归档规则id */
884
- archive_rule_id: string
885
- }
886
-
887
- export interface UploadReportAttendanceArchiveRuleQuery {
888
- /** 用户 ID 的类型 */
889
- employee_type: string
890
- }
891
-
892
- export interface UploadReportAttendanceArchiveRuleResponse {
893
- /** 无效的code */
894
- invalid_code?: string[]
895
- /** 无效的member_id */
896
- invalid_member_id?: string[]
897
- }
898
-
899
- export interface DelReportAttendanceArchiveRuleRequest {
900
- /** 月份 */
901
- month: string
902
- /** 操作者ID */
903
- operator_id: string
904
- /** 归档规则id */
905
- archive_rule_id: string
906
- /** 用户id */
907
- user_ids?: string[]
908
- }
909
-
910
- export interface DelReportAttendanceArchiveRuleQuery {
911
- /** 员工工号类型 */
912
- employee_type: string
913
- }
914
-
915
- export interface BatchCreateAttendanceUserFlowRequest {
916
- /** 打卡流水记录列表 */
917
- flow_records: UserFlow[]
918
- }
919
-
920
- export interface BatchCreateAttendanceUserFlowQuery {
921
- /** 请求体和响应体中的 user_id 和 creator_id 的员工工号类型 */
922
- employee_type: 'employee_id' | 'employee_no'
923
- }
10
+ export namespace Attendance {
11
+ export interface Methods {
12
+ shift: Shift.Methods
13
+ userDailyShift: UserDailyShift.Methods
14
+ group: Group.Methods
15
+ userSetting: UserSetting.Methods
16
+ file: File.Methods
17
+ userStatsView: UserStatsView.Methods
18
+ userStatsField: UserStatsField.Methods
19
+ userStatsData: UserStatsData.Methods
20
+ userApproval: UserApproval.Methods
21
+ approvalInfo: ApprovalInfo.Methods
22
+ userTaskRemedy: UserTaskRemedy.Methods
23
+ archiveRule: ArchiveRule.Methods
24
+ userFlow: UserFlow.Methods
25
+ userTask: UserTask.Methods
26
+ leaveEmployExpireRecord: LeaveEmployExpireRecord.Methods
27
+ leaveAccrualRecord: LeaveAccrualRecord.Methods
28
+ }
924
29
 
925
- export interface BatchCreateAttendanceUserFlowResponse {
926
- /** 打卡流水记录列表 */
927
- flow_records?: UserFlow[]
928
- }
30
+ export namespace Shift {
31
+ export interface Methods {
32
+ /**
33
+ * 创建班次
34
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/shift/create
35
+ */
36
+ create(body: CreateRequest, query?: CreateQuery): Promise<CreateResponse>
37
+ /**
38
+ * 删除班次
39
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/shift/delete
40
+ */
41
+ delete(shift_id: string): Promise<void>
42
+ /**
43
+ * 按 ID 查询班次
44
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/shift/get
45
+ */
46
+ get(shift_id: string): Promise<GetResponse>
47
+ /**
48
+ * 按名称查询班次
49
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/shift/query
50
+ */
51
+ query(query?: QueryQuery): Promise<QueryResponse>
52
+ /**
53
+ * 查询所有班次
54
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/shift/list
55
+ */
56
+ list(query?: Pagination): Paginated<Lark.Shift, 'shift_list'>
57
+ }
58
+
59
+ export interface CreateRequest {
60
+ /** 班次名称 */
61
+ shift_name: string
62
+ /** 打卡次数 */
63
+ punch_times: number
64
+ /** 排班组子负责人id列表 */
65
+ sub_shift_leader_ids?: string[]
66
+ /** 是否弹性打卡 */
67
+ is_flexible?: boolean
68
+ /** 弹性打卡时间,设置【上班最多可晚到】与【下班最多可早走】时间,如果不设置flexible_rule则生效 */
69
+ flexible_minutes?: number
70
+ /** 弹性打卡时间设置 */
71
+ flexible_rule?: Lark.FlexibleRule[]
72
+ /** 不需要打下班卡 */
73
+ no_need_off?: boolean
74
+ /** 打卡规则 */
75
+ punch_time_rule: Lark.PunchTimeRule[]
76
+ /** 晚走晚到规则 */
77
+ late_off_late_on_rule?: Lark.LateOffLateOnRule[]
78
+ /** 休息规则 */
79
+ rest_time_rule?: Lark.RestRule[]
80
+ /** 打卡规则 */
81
+ overtime_rule?: Lark.OvertimeRule[]
82
+ /** 日期类型,【是否弹性打卡 = ture】时,不可设置为“休息日” 可选值:1:工作日 2:休息日 示例值:(默认值)1 */
83
+ day_type?: number
84
+ /** 班外休息规则 */
85
+ overtime_rest_time_rule?: Lark.RestRule[]
86
+ /** 晚到多久记为严重迟到(优先级比原有字段高) */
87
+ late_minutes_as_serious_late?: number
88
+ /** 半天分割规则 */
89
+ shift_middle_time_rule?: Lark.ShiftMiddleTimeRule
90
+ /** 应出勤配置 */
91
+ shift_attendance_time_config?: Lark.ShiftAttendanceTimeConfig
92
+ /** 晚走次日晚到配置规则 */
93
+ late_off_late_on_setting?: Lark.LateOffLateOnSetting
94
+ /** 班次id(更新班次时需要传递) */
95
+ id?: string
96
+ /** 休息弹性设置 */
97
+ rest_time_flexible_configs?: Lark.RestTimeFlexibleConfig[]
98
+ }
99
+
100
+ export interface CreateQuery {
101
+ /** 用户 ID 的类型 不提供则用户相关字段无效 */
102
+ employee_type?: 'employee_id' | 'employee_no'
103
+ }
104
+
105
+ export interface CreateResponse {
106
+ /** 班次 */
107
+ shift?: Lark.Shift
108
+ }
109
+
110
+ export interface GetResponse {
111
+ /** 班次Id */
112
+ shift_id: string
113
+ /** 班次名称 */
114
+ shift_name: string
115
+ /** 打卡次数 */
116
+ punch_times: number
117
+ /** 排班组子负责人id列表 */
118
+ sub_shift_leader_ids?: string[]
119
+ /** 是否弹性打卡 */
120
+ is_flexible?: boolean
121
+ /** 弹性打卡时间,设置【上班最多可晚到】与【下班最多可早走】时间,如果不设置flexible_rule则生效 */
122
+ flexible_minutes?: number
123
+ /** 弹性打卡时间设置 */
124
+ flexible_rule?: Lark.FlexibleRule[]
125
+ /** 不需要打下班卡 */
126
+ no_need_off?: boolean
127
+ /** 打卡规则 */
128
+ punch_time_rule: Lark.PunchTimeRule[]
129
+ /** 晚走晚到规则 */
130
+ late_off_late_on_rule?: Lark.LateOffLateOnRule[]
131
+ /** 休息规则 */
132
+ rest_time_rule?: Lark.RestRule[]
133
+ /** 打卡规则 */
134
+ overtime_rule?: Lark.OvertimeRule[]
135
+ /** 日期类型,【是否弹性打卡 = ture】时,不可设置为“休息日” 可选值:1:工作日 2:休息日 示例值:(默认值)1 */
136
+ day_type?: number
137
+ /** 班外休息规则 */
138
+ overtime_rest_time_rule?: Lark.RestRule[]
139
+ /** 晚到多久记为严重迟到(优先级比原有字段高) */
140
+ late_minutes_as_serious_late?: number
141
+ /** 半天分割规则 */
142
+ shift_middle_time_rule?: Lark.ShiftMiddleTimeRule
143
+ /** 应出勤配置 */
144
+ shift_attendance_time_config?: Lark.ShiftAttendanceTimeConfig
145
+ /** 晚走次日晚到配置规则 */
146
+ late_off_late_on_setting?: Lark.LateOffLateOnSetting
147
+ /** 班次id(更新班次时需要传递) */
148
+ id?: string
149
+ /** 休息弹性设置 */
150
+ rest_time_flexible_configs?: Lark.RestTimeFlexibleConfig[]
151
+ }
152
+
153
+ export interface QueryQuery {
154
+ /** 班次名称 */
155
+ shift_name: string
156
+ }
157
+
158
+ export interface QueryResponse {
159
+ /** 班次Id */
160
+ shift_id: string
161
+ /** 班次名称 */
162
+ shift_name: string
163
+ /** 打卡次数 */
164
+ punch_times: number
165
+ /** 排班组子负责人id列表 */
166
+ sub_shift_leader_ids?: string[]
167
+ /** 是否弹性打卡 */
168
+ is_flexible?: boolean
169
+ /** 弹性打卡时间,设置【上班最多可晚到】与【下班最多可早走】时间,如果不设置flexible_rule则生效 */
170
+ flexible_minutes?: number
171
+ /** 弹性打卡时间设置 */
172
+ flexible_rule?: Lark.FlexibleRule[]
173
+ /** 不需要打下班卡 */
174
+ no_need_off?: boolean
175
+ /** 打卡规则 */
176
+ punch_time_rule: Lark.PunchTimeRule[]
177
+ /** 晚走晚到规则 */
178
+ late_off_late_on_rule?: Lark.LateOffLateOnRule[]
179
+ /** 休息规则 */
180
+ rest_time_rule?: Lark.RestRule[]
181
+ /** 打卡规则 */
182
+ overtime_rule?: Lark.OvertimeRule[]
183
+ /** 日期类型,【是否弹性打卡 = ture】时,不可设置为“休息日” 可选值:1:工作日 2:休息日 示例值:(默认值)1 */
184
+ day_type?: number
185
+ /** 班外休息规则 */
186
+ overtime_rest_time_rule?: Lark.RestRule[]
187
+ /** 晚到多久记为严重迟到(优先级比原有字段高) */
188
+ late_minutes_as_serious_late?: number
189
+ /** 半天分割规则 */
190
+ shift_middle_time_rule?: Lark.ShiftMiddleTimeRule
191
+ /** 应出勤配置 */
192
+ shift_attendance_time_config?: Lark.ShiftAttendanceTimeConfig
193
+ /** 晚走次日晚到配置规则 */
194
+ late_off_late_on_setting?: Lark.LateOffLateOnSetting
195
+ /** 班次id(更新班次时需要传递) */
196
+ id?: string
197
+ /** 休息弹性设置 */
198
+ rest_time_flexible_configs?: Lark.RestTimeFlexibleConfig[]
199
+ }
200
+ }
929
201
 
930
- export interface GetAttendanceUserFlowQuery {
931
- /** 响应体中的 user_id 和 creator_id 的员工工号类型 */
932
- employee_type: 'employee_id' | 'employee_no'
933
- }
202
+ export namespace UserDailyShift {
203
+ export interface Methods {
204
+ /**
205
+ * 创建或修改排班表
206
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_daily_shift/batch_create
207
+ */
208
+ batchCreate(body: BatchCreateRequest, query?: BatchCreateQuery): Promise<BatchCreateResponse>
209
+ /**
210
+ * 查询排班表
211
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_daily_shift/query
212
+ */
213
+ query(body: QueryRequest, query?: QueryQuery): Promise<QueryResponse>
214
+ /**
215
+ * 创建或修改临时排班
216
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_daily_shift/batch_create_temp
217
+ */
218
+ batchCreateTemp(body: BatchCreateTempRequest, query?: BatchCreateTempQuery): Promise<BatchCreateTempResponse>
219
+ }
220
+
221
+ export interface BatchCreateRequest {
222
+ /** 班表信息列表 */
223
+ user_daily_shifts: Lark.UserDailyShift[]
224
+ /** 操作人uid,如果您未操作[考勤管理后台“API 接入”流程](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/attendance-development-guidelines),则此字段为必填字段 */
225
+ operator_id?: string
226
+ }
227
+
228
+ export interface BatchCreateQuery {
229
+ /** 请求体和响应体中的 user_id 的员工工号类型 */
230
+ employee_type: 'employee_id' | 'employee_no'
231
+ }
232
+
233
+ export interface BatchCreateResponse {
234
+ /** 班表信息列表 */
235
+ user_daily_shifts?: Lark.UserDailyShift[]
236
+ }
237
+
238
+ export interface QueryRequest {
239
+ /** employee_no 或 employee_id 列表 */
240
+ user_ids: string[]
241
+ /** 查询的起始工作日 */
242
+ check_date_from: number
243
+ /** 查询的结束工作日 */
244
+ check_date_to: number
245
+ }
246
+
247
+ export interface QueryQuery {
248
+ /** 请求体中的 user_ids 和响应体中的 user_id 的员工工号类型 */
249
+ employee_type: 'employee_id' | 'employee_no'
250
+ }
251
+
252
+ export interface QueryResponse {
253
+ /** 班表信息列表 */
254
+ user_daily_shifts?: Lark.UserDailyShift[]
255
+ }
256
+
257
+ export interface BatchCreateTempRequest {
258
+ /** 临时班表信息列表(数量限制50以内) */
259
+ user_tmp_daily_shifts: Lark.UserTmpDailyShift[]
260
+ /** 操作人uid */
261
+ operator_id?: string
262
+ }
263
+
264
+ export interface BatchCreateTempQuery {
265
+ /** 请求体和响应体中的 user_id 的员工工号类型 */
266
+ employee_type: 'employee_id' | 'employee_no'
267
+ }
268
+
269
+ export interface BatchCreateTempResponse {
270
+ /** 临时班表信息列表 */
271
+ user_tmp_daily_shifts?: Lark.UserTmpDailyShift[]
272
+ }
273
+ }
934
274
 
935
- export const enum GetAttendanceUserFlowResponseType {
936
- /** 用户自己打卡 */
937
- Self = 0,
938
- /** 管理员修改 */
939
- ManagerModification = 1,
940
- /** 用户补卡 */
941
- Remedy = 2,
942
- /** 系统自动生成 */
943
- System = 3,
944
- /** 下班免打卡 */
945
- Free = 4,
946
- /** 考勤机 */
947
- Machine = 5,
948
- /** 极速打卡 */
949
- Quick = 6,
950
- /** 考勤开放平台导入 */
951
- Import = 7,
952
- }
275
+ export namespace Group {
276
+ export interface Methods {
277
+ /**
278
+ * 查询考勤组下所有成员
279
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/group/list_user
280
+ */
281
+ listUser(group_id: string, query?: ListUserQuery): Paginated<Lark.UserBase, 'users'>
282
+ /**
283
+ * 创建或修改考勤组
284
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/group/create
285
+ */
286
+ create(body: CreateRequest, query?: CreateQuery): Promise<CreateResponse>
287
+ /**
288
+ * 删除考勤组
289
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/group/delete
290
+ */
291
+ delete(group_id: string): Promise<void>
292
+ /**
293
+ * 按 ID 查询考勤组
294
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/group/get
295
+ */
296
+ get(group_id: string, query?: GetQuery): Promise<GetResponse>
297
+ /**
298
+ * 按名称查询考勤组
299
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/group/search
300
+ */
301
+ search(body: SearchRequest): Promise<SearchResponse>
302
+ /**
303
+ * 查询所有考勤组
304
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/group/list
305
+ */
306
+ list(query?: Pagination): Paginated<Lark.GroupMeta, 'group_list'>
307
+ }
308
+
309
+ export interface ListUserQuery extends Pagination {
310
+ /** 用户 ID 的类型 */
311
+ employee_type: string
312
+ /** 部门 ID 的类型 */
313
+ dept_type: string
314
+ /** 打卡类型 */
315
+ member_clock_type: number
316
+ }
317
+
318
+ export interface CreateRequest {
319
+ /** 6921319402260496386 */
320
+ group: Lark.Group
321
+ /** 操作人uid,如果您未操作[考勤管理后台“API 接入”流程](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/attendance-development-guidelines),则此字段为必填字段 */
322
+ operator_id?: string
323
+ }
324
+
325
+ export interface CreateQuery {
326
+ /** 用户 ID 的类型 */
327
+ employee_type: 'employee_id' | 'employee_no'
328
+ /** 部门 ID 的类型 */
329
+ dept_type: 'open_id'
330
+ }
331
+
332
+ export interface CreateResponse {
333
+ group?: Lark.Group
334
+ }
335
+
336
+ export interface GetQuery {
337
+ /** 用户 ID 的类型 */
338
+ employee_type: 'employee_id' | 'employee_no'
339
+ /** 部门 ID 的类型 */
340
+ dept_type: 'open_id'
341
+ }
342
+
343
+ export interface GetResponse {
344
+ /** 考勤组的Id, 需要从获取用户打卡结果信息的接口中获取groupId,修改考勤组时必填 */
345
+ group_id?: string
346
+ /** 考勤组名称 */
347
+ group_name: string
348
+ /** 考勤组时区 */
349
+ time_zone: string
350
+ /** 参加考勤的部门id列表 */
351
+ bind_dept_ids?: string[]
352
+ /** 无需考勤的部门id列表 */
353
+ except_dept_ids?: string[]
354
+ /** 参加考勤的人员id列表 */
355
+ bind_user_ids?: string[]
356
+ /** 参加考勤的人员id列表 */
357
+ except_user_ids?: string[]
358
+ /** 考勤组主负责人id列表 */
359
+ group_leader_ids: string[]
360
+ /** 考勤组子负责人id列表 */
361
+ sub_group_leader_ids?: string[]
362
+ /** 是否允许外勤打卡 */
363
+ allow_out_punch?: boolean
364
+ /** 外勤打卡需审批,先审批后打卡(需要允许外勤打卡才能设置生效) */
365
+ out_punch_need_approval?: boolean
366
+ /** 外勤打卡需审批,先打卡后审批(需要允许外勤打卡才能设置生效) */
367
+ out_punch_need_post_approval?: boolean
368
+ /** 外勤打卡需填写备注(需要允许外勤打卡才能设置生效) */
369
+ out_punch_need_remark?: boolean
370
+ /** 外勤打卡需拍照(需要允许外勤打卡才能设置生效) */
371
+ out_punch_need_photo?: boolean
372
+ /** 外勤打卡允许员工隐藏详细地址(需要允许外勤打卡才能设置生效) */
373
+ out_punch_allowed_hide_addr?: boolean
374
+ /** 外勤打卡允许微调地址(需要允许外勤打卡才能设置生效) */
375
+ out_punch_allowed_adjust_addr?: boolean
376
+ /** 微调范围,默认为 50 米 */
377
+ adjust_range?: number
378
+ /** 是否允许pc打卡 */
379
+ allow_pc_punch?: boolean
380
+ /** 是否允许补卡 */
381
+ allow_remedy?: boolean
382
+ /** 补卡次数是否限制(需要允许补卡才能设置生效) */
383
+ remedy_limit?: boolean
384
+ /** 补卡次数(需要允许补卡才能设置生效) */
385
+ remedy_limit_count?: number
386
+ /** 补卡时间是否限制(需要允许补卡才能设置生效) */
387
+ remedy_date_limit?: boolean
388
+ /** 补卡时间,几天内可以发起补卡(需要允许补卡才能设置生效) */
389
+ remedy_date_num?: number
390
+ /** 允许缺卡补卡(需要允许补卡才能设置生效) */
391
+ allow_remedy_type_lack?: boolean
392
+ /** 允许迟到补卡(需要允许补卡才能设置生效) */
393
+ allow_remedy_type_late?: boolean
394
+ /** 允许早退补卡(需要允许补卡才能设置生效) */
395
+ allow_remedy_type_early?: boolean
396
+ /** 允许正常补卡(需要允许补卡才能设置生效) */
397
+ allow_remedy_type_normal?: boolean
398
+ /** 是否展示累计时长 */
399
+ show_cumulative_time?: boolean
400
+ /** 是否展示加班时长 */
401
+ show_over_time?: boolean
402
+ /** 是否隐藏员工打卡详情 */
403
+ hide_staff_punch_time?: boolean
404
+ /** 是否开启人脸打卡 */
405
+ face_punch?: boolean
406
+ /** 人脸打卡规则, 1:每次打卡均需人脸识别 2:疑似需要 */
407
+ face_punch_cfg?: number
408
+ /** 人脸打卡规则, false:开启活体验证 true:0动作验证,仅在 face_punch_cfg = 1 时有效 */
409
+ face_live_need_action?: boolean
410
+ /** 脸识别失败时允许普通拍照打卡 */
411
+ face_downgrade?: boolean
412
+ /** 是否允许替换基准图片 */
413
+ replace_basic_pic?: boolean
414
+ /** 考勤机信息 */
415
+ machines?: Lark.Machine[]
416
+ /** GPS打卡的地址范围 */
417
+ gps_range?: number
418
+ /** GPS打卡的地址信息 */
419
+ locations?: Lark.Location[]
420
+ /** 考勤类型 0:固定考勤 2:排班考勤, 3:自由班次 */
421
+ group_type: number
422
+ /** 固定班次必需填 */
423
+ punch_day_shift_ids: string[]
424
+ free_punch_cfg?: Lark.FreePunchCfg
425
+ /** 国家日历 id,(0:不根据国家日历休息, 1:中国,2:美国,3:日本,4:印度,5:新加坡),默认 1 */
426
+ calendar_id: number
427
+ /** 强制需要打卡的日期 */
428
+ need_punch_special_days?: Lark.PunchSpecialDateShift[]
429
+ /** 强制不需要打卡的日期 */
430
+ no_need_punch_special_days?: Lark.PunchSpecialDateShift[]
431
+ /** 自由班次下工作日不打卡是否记为缺卡 */
432
+ work_day_no_punch_as_lack?: boolean
433
+ /** 补卡周期类型 */
434
+ remedy_period_type?: number
435
+ /** 补卡自定义周期起始日期 */
436
+ remedy_period_custom_date?: number
437
+ /** 打卡类型,位运算。1:GPS打卡;2:wifi打卡;4:考勤机打卡;8:IP打卡 */
438
+ punch_type?: number
439
+ /** 生效时间,精确到秒的时间戳 */
440
+ effect_time?: string
441
+ /** 固定班次生效时间,精确到秒的时间戳 */
442
+ fixshift_effect_time?: string
443
+ /** 参加考勤的人员、部门变动生效时间,精确到秒的时间戳 */
444
+ member_effect_time?: string
445
+ /** 休息日打卡需审批 */
446
+ rest_clockIn_need_approval?: boolean
447
+ /** 每次打卡均需拍照 */
448
+ clockIn_need_photo?: boolean
449
+ /** 人员异动打卡设置 */
450
+ member_status_change?: Lark.MemberStatusChange
451
+ /** 请假离岗或返岗是否需打卡 */
452
+ leave_need_punch?: boolean
453
+ /** 请假离岗或返岗打卡规则 */
454
+ leave_need_punch_cfg?: Lark.LeaveNeedPunchCfg
455
+ /** 外出期间是否需打卡 */
456
+ go_out_need_punch?: number
457
+ /** 外出期间打卡规则 */
458
+ go_out_need_punch_cfg?: Lark.LeaveNeedPunchCfg
459
+ /** 出差期间是否需打卡 */
460
+ travel_need_punch?: number
461
+ /** 出差期间打卡规则 */
462
+ travel_need_punch_cfg?: Lark.LeaveNeedPunchCfg
463
+ /** 需要打卡的人员配置(新) */
464
+ need_punch_members?: Lark.PunchMember[]
465
+ /** 无需打卡的人员配置(新) */
466
+ no_need_punch_members?: Lark.PunchMember[]
467
+ /** 是否直接保存可以自动变更的冲突规则 */
468
+ save_auto_changes?: boolean
469
+ /** 人员异动开关(人员组织架构变更后是否允许自动调整到该考勤组) */
470
+ org_change_auto_adjust?: boolean
471
+ /** 默认出勤的部门id列表 */
472
+ bind_default_dept_ids?: string[]
473
+ /** 默认出勤的用户ID列表 */
474
+ bind_default_user_ids?: string[]
475
+ /** 加班打卡规则 */
476
+ overtime_clock_cfg?: Lark.OvertimeClockCfg
477
+ /** 节假日id,(如果考勤组使用了自定义节假日,请用此参数传入节假日id) */
478
+ new_calendar_id?: string
479
+ /** 定位不准时是否允许申请打卡 */
480
+ allow_apply_punch?: boolean
481
+ }
482
+
483
+ export interface SearchRequest {
484
+ /** 考勤组名称 */
485
+ group_name: string
486
+ }
487
+
488
+ export interface SearchResponse {
489
+ /** 考勤组列表 */
490
+ group_list?: Lark.GroupMeta[]
491
+ }
492
+ }
953
493
 
954
- export interface GetAttendanceUserFlowResponse {
955
- /** 用户工号 */
956
- user_id: string
957
- /** 记录创建者的工号 */
958
- creator_id: string
959
- /** 打卡位置名称信息 */
960
- location_name: string
961
- /** 打卡时间,精确到秒的时间戳 */
962
- check_time: string
963
- /** 打卡备注 */
964
- comment: string
965
- /** 打卡记录ID */
966
- record_id?: string
967
- /** 打卡wifi ssid */
968
- ssid?: string
969
- /** 打卡wifi MAC地址 */
970
- bssid?: string
971
- /** 是否为外勤打卡 */
972
- is_field?: boolean
973
- /** 是否为wifi打卡 */
974
- is_wifi?: boolean
975
- /** 记录生成方式 */
976
- type?: GetAttendanceUserFlowResponseType
977
- /** 打卡照片列表 */
978
- photo_urls?: string[]
979
- /** 打卡设备ID */
980
- device_id?: string
981
- /** 打卡结果 */
982
- check_result?: 'NoNeedCheck' | 'SystemCheck' | 'Normal' | 'Early' | 'Late' | 'SeriousLate' | 'Lack' | 'Invalid' | 'None' | 'Todo'
983
- /** 用户导入的外部打卡记录ID */
984
- external_id?: string
985
- /** 唯一幂等键 */
986
- idempotent_id?: string
987
- }
494
+ export namespace UserSetting {
495
+ export interface Methods {
496
+ /**
497
+ * 修改用户人脸识别信息
498
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_setting/modify
499
+ */
500
+ modify(body: ModifyRequest, query?: ModifyQuery): Promise<ModifyResponse>
501
+ /**
502
+ * 批量查询用户人脸识别信息
503
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_setting/query
504
+ */
505
+ query(body: QueryRequest, query?: QueryQuery): Promise<QueryResponse>
506
+ }
507
+
508
+ export interface ModifyRequest {
509
+ /** 用户设置 */
510
+ user_setting?: Lark.UserSetting
511
+ }
512
+
513
+ export interface ModifyQuery {
514
+ /** 请求体和响应体中的 user_id 的员工工号类型 */
515
+ employee_type: 'employee_id' | 'employee_no'
516
+ }
517
+
518
+ export interface ModifyResponse {
519
+ /** 用户设置 */
520
+ user_setting?: Lark.UserSetting
521
+ }
522
+
523
+ export interface QueryRequest {
524
+ /** employee_no 或 employee_id 列表 */
525
+ user_ids: string[]
526
+ }
527
+
528
+ export interface QueryQuery {
529
+ /** 请求体中的 user_ids 和响应体中的 user_id 的员工工号类型 */
530
+ employee_type: 'employee_id' | 'employee_no'
531
+ }
532
+
533
+ export interface QueryResponse {
534
+ /** 用户设置信息列表 */
535
+ user_settings?: Lark.UserSetting[]
536
+ }
537
+ }
988
538
 
989
- export interface QueryAttendanceUserFlowRequest {
990
- /** employee_no employee_id 列表,长度不超过 50 */
991
- user_ids: string[]
992
- /** 查询的起始时间,时间戳 */
993
- check_time_from: string
994
- /** 查询的结束时间,时间戳 */
995
- check_time_to: string
996
- }
539
+ export namespace File {
540
+ export interface Methods {
541
+ /**
542
+ * 上传用户人脸识别照片
543
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/file/upload
544
+ */
545
+ upload(form: UploadForm, query?: UploadQuery): Promise<UploadResponse>
546
+ /**
547
+ * 下载用户人脸识别照片
548
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/file/download
549
+ */
550
+ download(file_id: string): Promise<ArrayBuffer>
551
+ }
552
+
553
+ export interface UploadForm {
554
+ /** 文件内容 */
555
+ file?: Blob
556
+ }
557
+
558
+ export interface UploadQuery {
559
+ /** 带后缀的文件名 */
560
+ file_name: string
561
+ }
562
+
563
+ export interface UploadResponse {
564
+ file?: Lark.File
565
+ }
566
+ }
997
567
 
998
- export interface QueryAttendanceUserFlowQuery {
999
- /** 请求体中的 user_ids 和响应体中的 user_id 的员工工号类型 */
1000
- employee_type: 'employee_id' | 'employee_no'
1001
- /** 由于新入职用户可以复用已离职用户的employee_no/employee_id。如果true,返回employee_no/employee_id对应的所有在职+离职用户数据;如果false,只返回employee_no/employee_id对应的在职或最近一个离职用户数据 */
1002
- include_terminated_user?: boolean
1003
- }
568
+ export namespace UserStatsView {
569
+ export interface Methods {
570
+ /**
571
+ * 更新统计设置
572
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_stats_view/update
573
+ */
574
+ update(user_stats_view_id: string, body: UpdateRequest, query?: UpdateQuery): Promise<UpdateResponse>
575
+ /**
576
+ * 查询统计设置
577
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_stats_view/query
578
+ */
579
+ query(body: QueryRequest, query?: QueryQuery): Promise<QueryResponse>
580
+ }
581
+
582
+ export interface UpdateRequest {
583
+ /** 统计设置 */
584
+ view: Lark.UserStatsView
585
+ }
586
+
587
+ export interface UpdateQuery {
588
+ /** 员工工号类型 */
589
+ employee_type: 'employee_id' | 'employee_no'
590
+ }
591
+
592
+ export interface UpdateResponse {
593
+ /** 视图 */
594
+ view?: Lark.UserStatsView
595
+ }
596
+
597
+ export interface QueryRequest {
598
+ /** 语言类型 */
599
+ locale: 'en' | 'ja' | 'zh'
600
+ /** 统计类型 */
601
+ stats_type: 'daily' | 'month'
602
+ /** 查询用户id,同【查询统计数据】、【更新统计设置】user_id */
603
+ user_id?: string
604
+ }
605
+
606
+ export interface QueryQuery {
607
+ /** 响应体中的 user_id 的员工工号类型 */
608
+ employee_type: 'employee_id' | 'employee_no'
609
+ }
610
+
611
+ export interface QueryResponse {
612
+ view?: Lark.UserStatsView
613
+ }
614
+ }
1004
615
 
1005
- export interface QueryAttendanceUserFlowResponse {
1006
- /** 打卡记录列表 */
1007
- user_flow_results?: UserFlow[]
1008
- }
616
+ export namespace UserStatsField {
617
+ export interface Methods {
618
+ /**
619
+ * 查询统计表头
620
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_stats_field/query
621
+ */
622
+ query(body: QueryRequest, query?: QueryQuery): Promise<QueryResponse>
623
+ }
624
+
625
+ export interface QueryRequest {
626
+ /** 语言类型 */
627
+ locale: 'en' | 'ja' | 'zh'
628
+ /** 统计类型 */
629
+ stats_type: 'daily' | 'month'
630
+ /** 开始时间 */
631
+ start_date: number
632
+ /** 结束时间(时间间隔不超过 40 天) */
633
+ end_date: number
634
+ }
635
+
636
+ export interface QueryQuery {
637
+ /** 响应体中的 user_id 的员工工号类型 */
638
+ employee_type: 'employee_id' | 'employee_no'
639
+ }
640
+
641
+ export interface QueryResponse {
642
+ user_stats_field?: Lark.UserStatsField
643
+ }
644
+ }
1009
645
 
1010
- export interface QueryAttendanceUserTaskRequest {
1011
- /** employee_no employee_id 列表 */
1012
- user_ids: string[]
1013
- /** 查询的起始工作日 */
1014
- check_date_from: number
1015
- /** 查询的结束工作日 */
1016
- check_date_to: number
1017
- /** 是否需要加班班段打卡结果 */
1018
- need_overtime_result?: boolean
1019
- }
646
+ export namespace UserStatsData {
647
+ export interface Methods {
648
+ /**
649
+ * 查询统计数据
650
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_stats_data/query
651
+ */
652
+ query(body: QueryRequest, query?: QueryQuery): Promise<QueryResponse>
653
+ }
654
+
655
+ export interface QueryRequest {
656
+ /** 语言类型 */
657
+ locale: 'en' | 'ja' | 'zh'
658
+ /** 统计类型 */
659
+ stats_type: 'daily' | 'month'
660
+ /** 开始时间 */
661
+ start_date: number
662
+ /** 结束时间(时间间隔不超过 40 天) */
663
+ end_date: number
664
+ /** 查询的用户 ID 列表(用户数量不超过 200) */
665
+ user_ids?: string[]
666
+ /** 是否需要历史数据 */
667
+ need_history?: boolean
668
+ /** 只展示当前考勤组 */
669
+ current_group_only?: boolean
670
+ /** 查询用户id,同【更新统计设置】、【查询统计设置】user_id */
671
+ user_id?: string
672
+ }
673
+
674
+ export interface QueryQuery {
675
+ /** 请求体中的 user_ids 和响应体中的 user_id 的员工工号类型 */
676
+ employee_type: 'employee_id' | 'employee_no'
677
+ }
678
+
679
+ export interface QueryResponse {
680
+ /** 用户统计数据 */
681
+ user_datas?: Lark.UserStatsData[]
682
+ /** 无权限获取的用户列表 */
683
+ invalid_user_list?: string[]
684
+ }
685
+ }
1020
686
 
1021
- export interface QueryAttendanceUserTaskQuery {
1022
- /** 员工工号类型 */
1023
- employee_type: 'employee_id' | 'employee_no'
1024
- /** 是否忽略无效和没有权限的用户。如果 true,则返回有效用户的信息,并告知无效和没有权限的用户信息;如果 false,且 user_ids 中存在无效或没有权限的用户,则返回错误 */
1025
- ignore_invalid_users?: boolean
1026
- /** 由于新入职员工可以复用已离职员工的 employee_no/employee_id,如果 true,则返回 employee_no/employee_id 对应的所有在职 + 离职员工的数据;如果 false,则只返回 employee_no/employee_id 对应的在职或最近一个离职员工的数据 */
1027
- include_terminated_user?: boolean
1028
- }
687
+ export namespace UserApproval {
688
+ export interface Methods {
689
+ /**
690
+ * 获取审批数据
691
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_approval/query
692
+ */
693
+ query(body: QueryRequest, query?: QueryQuery): Promise<QueryResponse>
694
+ /**
695
+ * 写入审批结果
696
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_approval/create
697
+ */
698
+ create(body: CreateRequest, query?: CreateQuery): Promise<CreateResponse>
699
+ }
700
+
701
+ export const enum QueryRequestStatus {
702
+ /** 待审批 */
703
+ Todo = 0,
704
+ /** 审批未通过 */
705
+ Rejected = 1,
706
+ /** 审批通过 */
707
+ Approved = 2,
708
+ /** 审批已取消 */
709
+ Canceled = 3,
710
+ /** 已撤回 */
711
+ Reverted = 4,
712
+ }
713
+
714
+ export interface QueryRequest {
715
+ /** employee_no 或 employee_id 列表 */
716
+ user_ids: string[]
717
+ /** 查询的起始工作日 */
718
+ check_date_from: number
719
+ /** 查询的结束工作日,与 check_date_from 的时间间隔不超过 30 天 */
720
+ check_date_to: number
721
+ /** 查询依据的时间类型(不填默认依据PeriodTime) */
722
+ check_date_type?: 'PeriodTime' | 'CreateTime' | 'UpdateTime'
723
+ /** 查询状态(不填默认查询已通过状态) */
724
+ status?: QueryRequestStatus
725
+ /** 查询的起始时间,精确到秒的时间戳 */
726
+ check_time_from?: string
727
+ /** 查询的结束时间,精确到秒的时间戳 */
728
+ check_time_to?: string
729
+ }
730
+
731
+ export interface QueryQuery {
732
+ /** 请求体中的 user_ids 和响应体中的 user_id 的员工工号类型 */
733
+ employee_type: 'employee_id' | 'employee_no' | 'open_id'
734
+ }
735
+
736
+ export interface QueryResponse {
737
+ /** 审批结果列表 */
738
+ user_approvals?: Lark.UserApproval[]
739
+ }
740
+
741
+ export interface CreateRequest {
742
+ /** 审批信息 */
743
+ user_approval?: Lark.UserApproval
744
+ }
745
+
746
+ export interface CreateQuery {
747
+ /** 请求体和响应体中的 user_id 的员工工号类型 */
748
+ employee_type: 'employee_id' | 'employee_no' | 'open_id'
749
+ }
750
+
751
+ export interface CreateResponse {
752
+ /** 审批信息 */
753
+ user_approval?: Lark.UserApproval
754
+ }
755
+ }
1029
756
 
1030
- export interface QueryAttendanceUserTaskResponse {
1031
- /** 打卡任务列表 */
1032
- user_task_results?: UserTask[]
1033
- /** 无效用户工号列表 */
1034
- invalid_user_ids?: string[]
1035
- /** 没有权限用户工号列表 */
1036
- unauthorized_user_ids?: string[]
1037
- }
757
+ export namespace ApprovalInfo {
758
+ export interface Methods {
759
+ /**
760
+ * 通知审批状态更新
761
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/approval_info/process
762
+ */
763
+ process(body: ProcessRequest): Promise<ProcessResponse>
764
+ }
765
+
766
+ export interface ProcessRequest {
767
+ /** 审批实例 ID,获取方式:1)[获取审批通过数据](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_approval/query) 2)[写入审批结果](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_approval/create) 3)[通知补卡审批发起(补卡情况下)](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_task_remedy/create) */
768
+ approval_id: string
769
+ /** 审批类型,leave:请假,out:外出,overtime:加班,trip:出差,remedy:补卡 */
770
+ approval_type: string
771
+ /** 审批状态,1:不通过,2:通过,4:撤销 */
772
+ status: number
773
+ }
774
+
775
+ export interface ProcessResponse {
776
+ /** 审批信息 */
777
+ approval_info?: Lark.ApprovalInfo
778
+ }
779
+ }
1038
780
 
1039
- export interface GetAttendanceLeaveEmployExpireRecordRequest {
1040
- /** 员工ID */
1041
- employment_id: string
1042
- /** 假期类型ID */
1043
- leave_type_id: string
1044
- /** 失效最早日期 2023-04-10 格式 */
1045
- start_expiration_date: string
1046
- /** 失效最晚日期 2023-05-10 格式 */
1047
- end_expiration_date: string
1048
- /** 时间偏移,东八区:480 8*60, 如果没有这个参数,默认东八区 */
1049
- time_offset?: number
1050
- }
781
+ export namespace UserTaskRemedy {
782
+ export interface Methods {
783
+ /**
784
+ * 通知补卡审批发起
785
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_task_remedy/create
786
+ */
787
+ create(body: CreateRequest, query?: CreateQuery): Promise<CreateResponse>
788
+ /**
789
+ * 获取可补卡时间
790
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_task_remedy/query_user_allowed_remedys
791
+ */
792
+ queryUserAllowedRemedys(body: QueryUserAllowedRemedysRequest, query?: QueryUserAllowedRemedysQuery): Promise<QueryUserAllowedRemedysResponse>
793
+ /**
794
+ * 获取补卡记录
795
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_task_remedy/query
796
+ */
797
+ query(body: QueryRequest, query?: QueryQuery): Promise<QueryResponse>
798
+ }
799
+
800
+ export interface CreateRequest {
801
+ /** 用户工号 */
802
+ user_id: string
803
+ /** 补卡日期 */
804
+ remedy_date: number
805
+ /** 第几次上下班,可能值0,1,2 */
806
+ punch_no: number
807
+ /** 上班/下班,1是上班,2是下班 */
808
+ work_type: number
809
+ /** 补卡时间 */
810
+ remedy_time: string
811
+ /** 补卡原因 */
812
+ reason: string
813
+ /** 补卡时间戳,精确到秒的时间戳 */
814
+ time?: string
815
+ }
816
+
817
+ export interface CreateQuery {
818
+ /** 请求体和响应体中的 user_id 的员工工号类型 */
819
+ employee_type: 'employee_id' | 'employee_no'
820
+ }
821
+
822
+ export interface CreateResponse {
823
+ /** 补卡审批信息 */
824
+ user_remedy?: Lark.UserTaskRemedy
825
+ }
826
+
827
+ export interface QueryUserAllowedRemedysRequest {
828
+ /** 用户 ID */
829
+ user_id: string
830
+ /** 补卡日期 */
831
+ remedy_date: number
832
+ }
833
+
834
+ export interface QueryUserAllowedRemedysQuery {
835
+ /** 请求体和响应体中的 user_id 的员工工号类型 */
836
+ employee_type: 'employee_id' | 'employee_no'
837
+ }
838
+
839
+ export interface QueryUserAllowedRemedysResponse {
840
+ /** 用户可补卡时间 */
841
+ user_allowed_remedys?: Lark.UserAllowedRemedy[]
842
+ }
843
+
844
+ export const enum QueryRequestStatus {
845
+ /** 待审批 */
846
+ Pending = 0,
847
+ /** 未通过 */
848
+ Rejected = 1,
849
+ /** 已通过 */
850
+ Pass = 2,
851
+ /** 已取消 */
852
+ Cancel = 3,
853
+ /** 已撤回 */
854
+ Withdraw = 4,
855
+ }
856
+
857
+ export interface QueryRequest {
858
+ /** employee_no 或 employee_id 列表 */
859
+ user_ids: string[]
860
+ /** 查询的起始时间,精确到秒的时间戳 */
861
+ check_time_from: string
862
+ /** 查询的结束时间,精确到秒的时间戳 */
863
+ check_time_to: string
864
+ /** 查询依据的时间类型(不填默认依据PeriodTime) */
865
+ check_date_type?: 'PeriodTime' | 'CreateTime' | 'UpdateTime'
866
+ /** 查询状态(不填默认查询已通过状态) */
867
+ status?: QueryRequestStatus
868
+ }
869
+
870
+ export interface QueryQuery {
871
+ /** 请求体中的 user_ids 和响应体中的 user_id 的员工工号类型 */
872
+ employee_type: 'employee_id' | 'employee_no'
873
+ }
874
+
875
+ export interface QueryResponse {
876
+ /** 补卡记录列表 */
877
+ user_remedys?: Lark.UserTaskRemedy[]
878
+ }
879
+ }
1051
880
 
1052
- export interface GetAttendanceLeaveEmployExpireRecordQuery {
1053
- /** 用户 ID 类型 */
1054
- user_id_type?: 'open_id' | 'people_corehr_id' | 'union_id' | 'user_id'
1055
- }
881
+ export namespace ArchiveRule {
882
+ export interface Methods {
883
+ /**
884
+ * 查询归档报表表头
885
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/archive_rule/user_stats_fields_query
886
+ */
887
+ userStatsFieldsQuery(body: UserStatsFieldsQueryRequest, query?: UserStatsFieldsQueryQuery): Promise<UserStatsFieldsQueryResponse>
888
+ /**
889
+ * 写入归档报表结果
890
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/archive_rule/upload_report
891
+ */
892
+ uploadReport(body: UploadReportRequest, query?: UploadReportQuery): Promise<UploadReportResponse>
893
+ /**
894
+ * 删除归档报表行数据
895
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/archive_rule/del_report
896
+ */
897
+ delReport(body: DelReportRequest, query?: DelReportQuery): Promise<void>
898
+ /**
899
+ * 查询所有归档规则
900
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/archive_rule/list
901
+ */
902
+ list(query?: Pagination): Paginated<Lark.ArchiveReportMeta>
903
+ }
904
+
905
+ export interface UserStatsFieldsQueryRequest {
906
+ /** 语言类型 */
907
+ locale?: string
908
+ /** 月份 */
909
+ month: string
910
+ /** 归档规则id */
911
+ archive_rule_id: string
912
+ /** 操作者id */
913
+ operator_id: string
914
+ }
915
+
916
+ export interface UserStatsFieldsQueryQuery {
917
+ /** 用户 ID 的类型 */
918
+ employee_type: string
919
+ }
920
+
921
+ export interface UserStatsFieldsQueryResponse {
922
+ /** 统计数据表头 */
923
+ archive_report_fields?: Lark.ArchiveField[]
924
+ }
925
+
926
+ export interface UploadReportRequest {
927
+ /** 月份 */
928
+ month: string
929
+ /** 操作者ID */
930
+ operator_id: string
931
+ /** 归档报表内容(不超过50个) */
932
+ archive_report_datas?: Lark.ArchiveReportData[]
933
+ /** 归档规则id */
934
+ archive_rule_id: string
935
+ }
936
+
937
+ export interface UploadReportQuery {
938
+ /** 用户 ID 的类型 */
939
+ employee_type: string
940
+ }
941
+
942
+ export interface UploadReportResponse {
943
+ /** 无效的code */
944
+ invalid_code?: string[]
945
+ /** 无效的member_id */
946
+ invalid_member_id?: string[]
947
+ }
948
+
949
+ export interface DelReportRequest {
950
+ /** 月份 */
951
+ month: string
952
+ /** 操作者ID */
953
+ operator_id: string
954
+ /** 归档规则id */
955
+ archive_rule_id: string
956
+ /** 用户id */
957
+ user_ids?: string[]
958
+ }
959
+
960
+ export interface DelReportQuery {
961
+ /** 员工工号类型 */
962
+ employee_type: string
963
+ }
964
+ }
1056
965
 
1057
- export interface GetAttendanceLeaveEmployExpireRecordResponse {
1058
- /** 员工过期日期的授予记录 */
1059
- records: LeaveEmployExpireRecord[]
1060
- }
966
+ export namespace UserFlow {
967
+ export interface Methods {
968
+ /**
969
+ * 导入打卡流水
970
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_flow/batch_create
971
+ */
972
+ batchCreate(body: BatchCreateRequest, query?: BatchCreateQuery): Promise<BatchCreateResponse>
973
+ /**
974
+ * 查询打卡流水
975
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_flow/get
976
+ */
977
+ get(user_flow_id: string, query?: GetQuery): Promise<GetResponse>
978
+ /**
979
+ * 批量查询打卡流水
980
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_flow/query
981
+ */
982
+ query(body: QueryRequest, query?: QueryQuery): Promise<QueryResponse>
983
+ /**
984
+ * 删除打卡流水
985
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_flow/batch_del
986
+ */
987
+ batchDel(body: BatchDelRequest): Promise<BatchDelResponse>
988
+ }
989
+
990
+ export interface BatchCreateRequest {
991
+ /** 打卡流水记录列表 */
992
+ flow_records: Lark.UserFlow[]
993
+ }
994
+
995
+ export interface BatchCreateQuery {
996
+ /** 请求体和响应体中的 user_id 和 creator_id 的员工工号类型 */
997
+ employee_type: 'employee_id' | 'employee_no'
998
+ }
999
+
1000
+ export interface BatchCreateResponse {
1001
+ /** 打卡流水记录列表 */
1002
+ flow_records?: Lark.UserFlow[]
1003
+ }
1004
+
1005
+ export interface GetQuery {
1006
+ /** 响应体中的 user_id 和 creator_id 的员工工号类型 */
1007
+ employee_type: 'employee_id' | 'employee_no'
1008
+ }
1009
+
1010
+ export const enum GetResponseType {
1011
+ /** 用户自己打卡 */
1012
+ Self = 0,
1013
+ /** 管理员修改 */
1014
+ ManagerModification = 1,
1015
+ /** 用户补卡 */
1016
+ Remedy = 2,
1017
+ /** 系统自动生成 */
1018
+ System = 3,
1019
+ /** 下班免打卡 */
1020
+ Free = 4,
1021
+ /** 考勤机 */
1022
+ Machine = 5,
1023
+ /** 极速打卡 */
1024
+ Quick = 6,
1025
+ /** 考勤开放平台导入 */
1026
+ Import = 7,
1027
+ }
1028
+
1029
+ export interface GetResponse {
1030
+ /** 用户工号 */
1031
+ user_id: string
1032
+ /** 记录创建者的工号 */
1033
+ creator_id: string
1034
+ /** 打卡位置名称信息 */
1035
+ location_name: string
1036
+ /** 打卡时间,精确到秒的时间戳 */
1037
+ check_time: string
1038
+ /** 打卡备注 */
1039
+ comment: string
1040
+ /** 打卡记录ID */
1041
+ record_id?: string
1042
+ /** 打卡wifi ssid */
1043
+ ssid?: string
1044
+ /** 打卡wifi MAC地址 */
1045
+ bssid?: string
1046
+ /** 是否为外勤打卡 */
1047
+ is_field?: boolean
1048
+ /** 是否为wifi打卡 */
1049
+ is_wifi?: boolean
1050
+ /** 记录生成方式 */
1051
+ type?: GetResponseType
1052
+ /** 打卡照片列表 */
1053
+ photo_urls?: string[]
1054
+ /** 打卡设备ID */
1055
+ device_id?: string
1056
+ /** 打卡结果 */
1057
+ check_result?: 'NoNeedCheck' | 'SystemCheck' | 'Normal' | 'Early' | 'Late' | 'SeriousLate' | 'Lack' | 'Invalid' | 'None' | 'Todo'
1058
+ /** 用户导入的外部打卡记录ID */
1059
+ external_id?: string
1060
+ /** 唯一幂等键 */
1061
+ idempotent_id?: string
1062
+ }
1063
+
1064
+ export interface QueryRequest {
1065
+ /** employee_no 或 employee_id 列表,长度不超过 50 */
1066
+ user_ids: string[]
1067
+ /** 查询的起始时间,时间戳 */
1068
+ check_time_from: string
1069
+ /** 查询的结束时间,时间戳 */
1070
+ check_time_to: string
1071
+ }
1072
+
1073
+ export interface QueryQuery {
1074
+ /** 请求体中的 user_ids 和响应体中的 user_id 的员工工号类型 */
1075
+ employee_type: 'employee_id' | 'employee_no'
1076
+ /** 由于新入职用户可以复用已离职用户的employee_no/employee_id。如果true,返回employee_no/employee_id对应的所有在职+离职用户数据;如果false,只返回employee_no/employee_id对应的在职或最近一个离职用户数据 */
1077
+ include_terminated_user?: boolean
1078
+ }
1079
+
1080
+ export interface QueryResponse {
1081
+ /** 打卡记录列表 */
1082
+ user_flow_results?: Lark.UserFlow[]
1083
+ }
1084
+
1085
+ export interface BatchDelRequest {
1086
+ /** 流水记录ID */
1087
+ record_ids: string[]
1088
+ }
1089
+
1090
+ export interface BatchDelResponse {
1091
+ /** 删除成功的流水记录ID列表 */
1092
+ success_record_ids?: string[]
1093
+ /** 删除失败的流水记录ID列表 */
1094
+ fail_record_ids?: string[]
1095
+ }
1096
+ }
1061
1097
 
1062
- export interface PatchAttendanceLeaveAccrualRecordRequest {
1063
- /** 授予记录的唯一ID */
1064
- leave_granting_record_id: string
1065
- /** 员工ID */
1066
- employment_id: string
1067
- /** 假期类型ID */
1068
- leave_type_id: string
1069
- /** 修改授予记录原因 */
1070
- reason: LangText[]
1071
- /** 时间偏移,东八区:480 8*60 */
1072
- time_offset?: number
1073
- /** 失效日期,格式"2020-01-01" */
1074
- expiration_date?: string
1075
- /** 修改source 余额 */
1076
- quantity?: string
1077
- /** 是否参与清算 */
1078
- section_type?: number
1079
- }
1098
+ export namespace UserTask {
1099
+ export interface Methods {
1100
+ /**
1101
+ * 查询打卡结果
1102
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/user_task/query
1103
+ */
1104
+ query(body: QueryRequest, query?: QueryQuery): Promise<QueryResponse>
1105
+ }
1106
+
1107
+ export interface QueryRequest {
1108
+ /** employee_no 或 employee_id 列表 */
1109
+ user_ids: string[]
1110
+ /** 查询的起始工作日 */
1111
+ check_date_from: number
1112
+ /** 查询的结束工作日 */
1113
+ check_date_to: number
1114
+ /** 是否需要加班班段打卡结果 */
1115
+ need_overtime_result?: boolean
1116
+ }
1117
+
1118
+ export interface QueryQuery {
1119
+ /** 员工工号类型 */
1120
+ employee_type: 'employee_id' | 'employee_no'
1121
+ /** 是否忽略无效和没有权限的用户。如果 true,则返回有效用户的信息,并告知无效和没有权限的用户信息;如果 false,且 user_ids 中存在无效或没有权限的用户,则返回错误 */
1122
+ ignore_invalid_users?: boolean
1123
+ /** 由于新入职员工可以复用已离职员工的 employee_no/employee_id,如果 true,则返回 employee_no/employee_id 对应的所有在职 + 离职员工的数据;如果 false,则只返回 employee_no/employee_id 对应的在职或最近一个离职员工的数据 */
1124
+ include_terminated_user?: boolean
1125
+ }
1126
+
1127
+ export interface QueryResponse {
1128
+ /** 打卡任务列表 */
1129
+ user_task_results?: Lark.UserTask[]
1130
+ /** 无效用户工号列表 */
1131
+ invalid_user_ids?: string[]
1132
+ /** 没有权限用户工号列表 */
1133
+ unauthorized_user_ids?: string[]
1134
+ }
1135
+ }
1080
1136
 
1081
- export interface PatchAttendanceLeaveAccrualRecordQuery {
1082
- /** 用户 ID 类型 */
1083
- user_id_type?: 'open_id' | 'people_corehr_id' | 'union_id' | 'user_id'
1084
- }
1137
+ export namespace LeaveEmployExpireRecord {
1138
+ export interface Methods {
1139
+ /**
1140
+ * 通过过期时间获取发放记录
1141
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/leave_employ_expire_record/get
1142
+ */
1143
+ get(leave_id: string, body: GetRequest, query?: GetQuery): Promise<GetResponse>
1144
+ }
1145
+
1146
+ export interface GetRequest {
1147
+ /** 员工ID */
1148
+ employment_id: string
1149
+ /** 假期类型ID */
1150
+ leave_type_id: string
1151
+ /** 失效最早日期 2023-04-10 格式 */
1152
+ start_expiration_date: string
1153
+ /** 失效最晚日期 2023-05-10 格式 */
1154
+ end_expiration_date: string
1155
+ /** 时间偏移,东八区:480 8*60, 如果没有这个参数,默认东八区 */
1156
+ time_offset?: number
1157
+ }
1158
+
1159
+ export interface GetQuery {
1160
+ /** 用户 ID 类型 */
1161
+ user_id_type?: 'open_id' | 'people_corehr_id' | 'union_id' | 'user_id'
1162
+ }
1163
+
1164
+ export interface GetResponse {
1165
+ /** 员工过期日期的授予记录 */
1166
+ records: Lark.LeaveEmployExpireRecord[]
1167
+ }
1168
+ }
1085
1169
 
1086
- export interface PatchAttendanceLeaveAccrualRecordResponse {
1087
- /** 员工过期日期的授予记录 */
1088
- record: LeaveAccrualRecord
1170
+ export namespace LeaveAccrualRecord {
1171
+ export interface Methods {
1172
+ /**
1173
+ * 修改发放记录
1174
+ * @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/leave_accrual_record/patch
1175
+ */
1176
+ patch(leave_id: string, body: PatchRequest, query?: PatchQuery): Promise<PatchResponse>
1177
+ }
1178
+
1179
+ export interface PatchRequest {
1180
+ /** 授予记录的唯一ID */
1181
+ leave_granting_record_id: string
1182
+ /** 员工ID */
1183
+ employment_id: string
1184
+ /** 假期类型ID */
1185
+ leave_type_id: string
1186
+ /** 修改授予记录原因 */
1187
+ reason: Lark.LangText[]
1188
+ /** 时间偏移,东八区:480 8*60 */
1189
+ time_offset?: number
1190
+ /** 失效日期,格式"2020-01-01" */
1191
+ expiration_date?: string
1192
+ /** 修改source 余额 */
1193
+ quantity?: string
1194
+ /** 是否参与清算 */
1195
+ section_type?: number
1196
+ }
1197
+
1198
+ export interface PatchQuery {
1199
+ /** 用户 ID 类型 */
1200
+ user_id_type?: 'open_id' | 'people_corehr_id' | 'union_id' | 'user_id'
1201
+ }
1202
+
1203
+ export interface PatchResponse {
1204
+ /** 员工过期日期的授予记录 */
1205
+ record: Lark.LeaveAccrualRecord
1206
+ }
1207
+ }
1089
1208
  }
1090
1209
 
1091
1210
  Internal.define({
1092
1211
  '/attendance/v1/shifts': {
1093
- POST: 'createAttendanceShift',
1094
- GET: { name: 'listAttendanceShift', pagination: { argIndex: 0, itemsKey: 'shift_list' } },
1212
+ POST: 'attendance.shift.create',
1213
+ GET: { name: 'attendance.shift.list', pagination: { argIndex: 0, itemsKey: 'shift_list' } },
1095
1214
  },
1096
1215
  '/attendance/v1/shifts/{shift_id}': {
1097
- DELETE: 'deleteAttendanceShift',
1098
- GET: 'getAttendanceShift',
1216
+ DELETE: 'attendance.shift.delete',
1217
+ GET: 'attendance.shift.get',
1099
1218
  },
1100
1219
  '/attendance/v1/shifts/query': {
1101
- POST: 'queryAttendanceShift',
1220
+ POST: 'attendance.shift.query',
1102
1221
  },
1103
1222
  '/attendance/v1/user_daily_shifts/batch_create': {
1104
- POST: 'batchCreateAttendanceUserDailyShift',
1223
+ POST: 'attendance.userDailyShift.batchCreate',
1105
1224
  },
1106
1225
  '/attendance/v1/user_daily_shifts/query': {
1107
- POST: 'queryAttendanceUserDailyShift',
1226
+ POST: 'attendance.userDailyShift.query',
1108
1227
  },
1109
1228
  '/attendance/v1/user_daily_shifts/batch_create_temp': {
1110
- POST: 'batchCreateTempAttendanceUserDailyShift',
1229
+ POST: 'attendance.userDailyShift.batchCreateTemp',
1111
1230
  },
1112
1231
  '/attendance/v1/groups/{group_id}/list_user': {
1113
- GET: { name: 'listUserAttendanceGroup', pagination: { argIndex: 1, itemsKey: 'users' } },
1232
+ GET: { name: 'attendance.group.listUser', pagination: { argIndex: 1, itemsKey: 'users' } },
1114
1233
  },
1115
1234
  '/attendance/v1/groups': {
1116
- POST: 'createAttendanceGroup',
1117
- GET: { name: 'listAttendanceGroup', pagination: { argIndex: 0, itemsKey: 'group_list' } },
1235
+ POST: 'attendance.group.create',
1236
+ GET: { name: 'attendance.group.list', pagination: { argIndex: 0, itemsKey: 'group_list' } },
1118
1237
  },
1119
1238
  '/attendance/v1/groups/{group_id}': {
1120
- DELETE: 'deleteAttendanceGroup',
1121
- GET: 'getAttendanceGroup',
1239
+ DELETE: 'attendance.group.delete',
1240
+ GET: 'attendance.group.get',
1122
1241
  },
1123
1242
  '/attendance/v1/groups/search': {
1124
- POST: 'searchAttendanceGroup',
1243
+ POST: 'attendance.group.search',
1125
1244
  },
1126
1245
  '/attendance/v1/user_settings/modify': {
1127
- POST: 'modifyAttendanceUserSetting',
1246
+ POST: 'attendance.userSetting.modify',
1128
1247
  },
1129
1248
  '/attendance/v1/user_settings/query': {
1130
- GET: 'queryAttendanceUserSetting',
1249
+ GET: 'attendance.userSetting.query',
1131
1250
  },
1132
1251
  '/attendance/v1/files/upload': {
1133
- POST: { name: 'uploadAttendanceFile', multipart: true },
1252
+ POST: { name: 'attendance.file.upload', multipart: true },
1134
1253
  },
1135
1254
  '/attendance/v1/files/{file_id}/download': {
1136
- GET: { name: 'downloadAttendanceFile', type: 'binary' },
1255
+ GET: { name: 'attendance.file.download', type: 'binary' },
1137
1256
  },
1138
1257
  '/attendance/v1/user_stats_views/{user_stats_view_id}': {
1139
- PUT: 'updateAttendanceUserStatsView',
1258
+ PUT: 'attendance.userStatsView.update',
1140
1259
  },
1141
1260
  '/attendance/v1/user_stats_fields/query': {
1142
- POST: 'queryAttendanceUserStatsField',
1261
+ POST: 'attendance.userStatsField.query',
1143
1262
  },
1144
1263
  '/attendance/v1/user_stats_views/query': {
1145
- POST: 'queryAttendanceUserStatsView',
1264
+ POST: 'attendance.userStatsView.query',
1146
1265
  },
1147
1266
  '/attendance/v1/user_stats_datas/query': {
1148
- POST: 'queryAttendanceUserStatsData',
1267
+ POST: 'attendance.userStatsData.query',
1149
1268
  },
1150
1269
  '/attendance/v1/user_approvals/query': {
1151
- POST: 'queryAttendanceUserApproval',
1270
+ POST: 'attendance.userApproval.query',
1152
1271
  },
1153
1272
  '/attendance/v1/user_approvals': {
1154
- POST: 'createAttendanceUserApproval',
1273
+ POST: 'attendance.userApproval.create',
1155
1274
  },
1156
1275
  '/attendance/v1/approval_infos/process': {
1157
- POST: 'processAttendanceApprovalInfo',
1276
+ POST: 'attendance.approvalInfo.process',
1158
1277
  },
1159
1278
  '/attendance/v1/user_task_remedys': {
1160
- POST: 'createAttendanceUserTaskRemedy',
1279
+ POST: 'attendance.userTaskRemedy.create',
1161
1280
  },
1162
1281
  '/attendance/v1/user_task_remedys/query_user_allowed_remedys': {
1163
- POST: 'queryUserAllowedRemedysAttendanceUserTaskRemedy',
1282
+ POST: 'attendance.userTaskRemedy.queryUserAllowedRemedys',
1164
1283
  },
1165
1284
  '/attendance/v1/user_task_remedys/query': {
1166
- POST: 'queryAttendanceUserTaskRemedy',
1285
+ POST: 'attendance.userTaskRemedy.query',
1167
1286
  },
1168
1287
  '/attendance/v1/archive_rule/user_stats_fields_query': {
1169
- POST: 'userStatsFieldsQueryAttendanceArchiveRule',
1288
+ POST: 'attendance.archiveRule.userStatsFieldsQuery',
1170
1289
  },
1171
1290
  '/attendance/v1/archive_rule/upload_report': {
1172
- POST: 'uploadReportAttendanceArchiveRule',
1291
+ POST: 'attendance.archiveRule.uploadReport',
1173
1292
  },
1174
1293
  '/attendance/v1/archive_rule/del_report': {
1175
- POST: 'delReportAttendanceArchiveRule',
1294
+ POST: 'attendance.archiveRule.delReport',
1176
1295
  },
1177
1296
  '/attendance/v1/archive_rule': {
1178
- GET: { name: 'listAttendanceArchiveRule', pagination: { argIndex: 0 } },
1297
+ GET: { name: 'attendance.archiveRule.list', pagination: { argIndex: 0 } },
1179
1298
  },
1180
1299
  '/attendance/v1/user_flows/batch_create': {
1181
- POST: 'batchCreateAttendanceUserFlow',
1300
+ POST: 'attendance.userFlow.batchCreate',
1182
1301
  },
1183
1302
  '/attendance/v1/user_flows/{user_flow_id}': {
1184
- GET: 'getAttendanceUserFlow',
1303
+ GET: 'attendance.userFlow.get',
1185
1304
  },
1186
1305
  '/attendance/v1/user_flows/query': {
1187
- POST: 'queryAttendanceUserFlow',
1306
+ POST: 'attendance.userFlow.query',
1307
+ },
1308
+ '/attendance/v1/user_flows/batch_del': {
1309
+ POST: 'attendance.userFlow.batchDel',
1188
1310
  },
1189
1311
  '/attendance/v1/user_tasks/query': {
1190
- POST: 'queryAttendanceUserTask',
1312
+ POST: 'attendance.userTask.query',
1191
1313
  },
1192
1314
  '/attendance/v1/leave_employ_expire_records/{leave_id}': {
1193
- GET: 'getAttendanceLeaveEmployExpireRecord',
1315
+ GET: 'attendance.leaveEmployExpireRecord.get',
1194
1316
  },
1195
1317
  '/attendance/v1/leave_accrual_record/{leave_id}': {
1196
- PATCH: 'patchAttendanceLeaveAccrualRecord',
1318
+ PATCH: 'attendance.leaveAccrualRecord.patch',
1197
1319
  },
1198
1320
  })