gitee.com/larksuite/oapi-sdk-go/v3@v3.0.3/service/approval/v4/ext_model.go (about) 1 /* 2 * MIT License 3 * 4 * Copyright (c) 2022 Lark Technologies Pte. Ltd. 5 * 6 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 7 * 8 * The above copyright notice and this permission notice, shall be included in all copies or substantial portions of the Software. 9 * 10 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 11 */ 12 13 package larkapproval 14 15 import larkevent "gitee.com/larksuite/oapi-sdk-go/v3/event" 16 17 type P1LeaveApprovalV4 struct { 18 *larkevent.EventReq 19 *larkevent.EventBase 20 Event *P1LeaveApprovalV4Data `json:"event"` 21 } 22 23 func (m *P1LeaveApprovalV4) RawReq(req *larkevent.EventReq) { 24 m.EventReq = req 25 } 26 27 type P1LeaveApprovalV4Data struct { 28 AppID string `json:"app_id,omitempty"` // APP ID 29 TenantKey string `json:"tenant_key,omitempty"` // 企业标识 30 Type string `json:"type,omitempty"` // 事件回调此处固定为event_callback 31 InstanceCode string `json:"instance_code,omitempty"` // 审批实例Code 32 UserID string `json:"user_id,omitempty"` // 用户id 33 OpenID string `json:"open_id,omitempty"` // 用户open_id 34 OriginInstanceCode string `json:"origin_instance_code,omitempty"` // 销假单关联的原始单据 35 StartTime int64 `json:"start_time,omitempty"` // 销假单关联的原始单据 36 EndTime int64 `json:"end_time,omitempty"` // 审批结束时间 37 38 LeaveFeedingArriveLate int64 `json:"leave_feeding_arrive_late,omitempty"` //上班晚到(哺乳假相关) 39 LeaveFeedingLeaveEarly int64 `json:"leave_feeding_leave_early,omitempty"` //下班早走(哺乳假相关) 40 LeaveFeedingRestDaily int64 `json:"leave_feeding_rest_daily,omitempty"` //每日休息(哺乳假相关) 41 42 LeaveName string `json:"leave_name,omitempty"` // 假期名称 43 LeaveUnit string `json:"leave_unit,omitempty"` // 请假最小时长 44 LeaveStartTime string `json:"leave_start_time,omitempty"` // 请假开始时间 45 LeaveEndTime string `json:"leave_end_time,omitempty"` // 请假结束时间 46 LeaveDetail []string `json:"leave_detail,omitempty"` // 具体的请假明细时间 47 LeaveRange []string `json:"leave_range,omitempty"` // 具体的请假时间范围 48 LeaveInterval int64 `json:"leave_interval,omitempty"` // 请假时长,单位(秒) 49 LeaveReason string `json:"leave_reason,omitempty"` // 请假事由 50 I18nResources []*P1LeaveApprovalI18nResourceV4 `json:"i18n_resources,omitempty"` // 国际化文案 51 } 52 53 type P1LeaveApprovalI18nResourceV4 struct { 54 Locale string `json:"locale,omitempty"` // 如: en_us 55 IsDefault bool `json:"is_default,omitempty"` // 如: true 56 Texts map[string]string `json:"texts,omitempty"` 57 } 58 59 type P1WorkApprovalV4 struct { 60 *larkevent.EventReq 61 *larkevent.EventBase 62 Event *P1WorkApprovalV4Data `json:"event"` 63 } 64 65 func (m *P1WorkApprovalV4) RawReq(req *larkevent.EventReq) { 66 m.EventReq = req 67 } 68 69 type P1WorkApprovalV4Data struct { 70 AppID string `json:"app_id,omitempty"` // APP ID 71 TenantKey string `json:"tenant_key,omitempty"` // 企业标识 72 Type string `json:"type,omitempty"` //事件回调此处固定为event_callback 73 InstanceCode string `json:"instance_code,omitempty"` // 审批实例Code 74 EmployeeID string `json:"employee_id,omitempty"` // 用户id 75 OpenID string `json:"open_id,omitempty"` // 用户open_id 76 StartTime int64 `json:"start_time,omitempty"` // 审批发起时间 77 EndTime int64 `json:"end_time,omitempty"` // 审批结束时间 78 WorkType string `json:"work_type,omitempty"` // 加班类型 79 WorkStartTime string `json:"work_start_time,omitempty"` // 加班开始时间 80 WorkEndTime string `json:"work_end_time,omitempty"` // 加班结束时间 81 WorkInterval int64 `json:"work_interval,omitempty"` // 加班时长,单位(秒) 82 WorkReason string `json:"work_reason,omitempty"` // 加班事由 83 } 84 85 type P1ShiftApprovalV4 struct { 86 *larkevent.EventReq 87 *larkevent.EventBase 88 Event *P1ShiftApprovalV4Data `json:"event"` 89 } 90 91 func (m *P1ShiftApprovalV4) RawReq(req *larkevent.EventReq) { 92 m.EventReq = req 93 } 94 95 type P1ShiftApprovalV4Data struct { 96 AppID string `json:"app_id,omitempty"` // APP ID 97 TenantKey string `json:"tenant_key,omitempty"` // 企业标识 98 Type string `json:"type,omitempty"` //事件回调此处固定为event_callback 99 InstanceCode string `json:"instance_code,omitempty"` // 审批实例Code 100 EmployeeID string `json:"employee_id,omitempty"` // 用户id 101 OpenID string `json:"open_id,omitempty"` // 用户open_id 102 StartTime int64 `json:"start_time,omitempty"` // 审批发起时间 103 EndTime int64 `json:"end_time,omitempty"` // 审批结束时间 104 ShiftTime string `json:"shift_time,omitempty"` // 换班时间 105 ReturnTime string `json:"return_time,omitempty"` // 还班时间 106 ShiftReason string `json:"shift_reason,omitempty"` // 换班事由 107 } 108 109 type P1RemedyApprovalV4 struct { 110 *larkevent.EventReq 111 *larkevent.EventBase 112 Event *P1RemedyApprovalV4Data `json:"event"` 113 } 114 115 func (m *P1RemedyApprovalV4) RawReq(req *larkevent.EventReq) { 116 m.EventReq = req 117 } 118 119 type P1RemedyApprovalV4Data struct { 120 AppID string `json:"app_id,omitempty"` // APP ID 121 TenantKey string `json:"tenant_key,omitempty"` // 企业标识 122 Type string `json:"type,omitempty"` //事件回调此处固定为event_callback 123 InstanceCode string `json:"instance_code,omitempty"` // 审批实例Code 124 EmployeeID string `json:"employee_id,omitempty"` // 用户id 125 OpenID string `json:"open_id,omitempty"` // 用户open_id 126 StartTime int64 `json:"start_time,omitempty"` // 审批发起时间 127 EndTime int64 `json:"end_time,omitempty"` // 审批结束时间 128 RemedyTime string `json:"remedy_time,omitempty"` // 补卡时间 129 RemedyReason string `json:"remedy_reason,omitempty"` // 补卡原因 130 } 131 132 type P1TripApprovalV4 struct { 133 *larkevent.EventReq 134 *larkevent.EventBase 135 Event *P1TripApprovalV4Data `json:"event"` 136 } 137 138 func (m *P1TripApprovalV4) RawReq(req *larkevent.EventReq) { 139 m.EventReq = req 140 } 141 142 type P1TripApprovalV4Data struct { 143 AppID string `json:"app_id,omitempty"` // APP ID 144 TenantKey string `json:"tenant_key,omitempty"` // 企业标识 145 Type string `json:"type,omitempty"` //事件回调此处固定为event_callback 146 InstanceCode string `json:"instance_code,omitempty"` // 审批实例Code 147 EmployeeID string `json:"employee_id,omitempty"` // 用户id 148 OpenID string `json:"open_id,omitempty"` // 用户open_id 149 StartTime int64 `json:"start_time,omitempty"` // 审批发起时间 150 EndTime int64 `json:"end_time,omitempty"` // 审批结束时间 151 Schedules []*P1TripApprovalScheduleV4 `json:"schedules,omitempty"` // Schedule 结构数组 152 TripInterval int64 `json:"trip_interval,omitempty"` // 行程总时长(秒) 153 TripReason string `json:"trip_reason,omitempty"` // 出差事由 154 TripPeers []string `json:"trip_peers,omitempty"` // 同行人 155 } 156 157 type P1TripApprovalScheduleV4 struct { 158 TripStartTime string `json:"trip_start_time,omitempty"` // 行程开始时间 159 TripEndTime string `json:"trip_end_time,omitempty"` // 行程结束时间 160 TripInterval int64 `json:"trip_interval,omitempty"` // 行程时长(秒) 161 Departure string `json:"departure,omitempty"` // 出发地 162 Destination string `json:"destination,omitempty"` // 目的地 163 Transportation string `json:"transportation,omitempty"` // 交通工具 164 TripType string `json:"trip_type,omitempty"` // 单程/往返 165 Remark string `json:"remark,omitempty"` // 备注 166 } 167 168 type P1TripApprovalTripPeerV4 struct { 169 string `json:",omitempty"` 170 } 171 172 type P1OutApprovalV4 struct { 173 *larkevent.EventReq 174 *larkevent.EventBase 175 Event *P1OutApprovalV4Data `json:"event"` 176 } 177 178 func (m *P1OutApprovalV4) RawReq(req *larkevent.EventReq) { 179 m.EventReq = req 180 } 181 182 type P1OutApprovalV4Data struct { 183 AppID string `json:"app_id,omitempty"` // APP ID 184 I18nResources []*P1OutApprovalI18nResourceV4 `json:"i18n_resources,omitempty"` // 国际化文案 185 InstanceCode string `json:"instance_code,omitempty"` // 此审批的唯一标识 186 OutImage string `json:"out_image,omitempty"` 187 OutInterval int64 `json:"out_interval,omitempty"` // 外出时长,单位秒 188 OutName string `json:"out_name,omitempty"` // 通过i18n_resources里的信息换取相应语言的文案 189 OutReason string `json:"out_reason,omitempty"` // 外出事由 190 OutStartTime string `json:"out_start_time,omitempty"` // 外出开始时间 191 OutEndTime string `json:"out_end_time,omitempty"` // 外出结束时间 192 OutUnit string `json:"out_unit,omitempty"` // 外出时长的单位,HOUR 小时,DAY 天,HALF_DAY 半天 193 StartTime int64 `json:"start_time,omitempty"` // 审批开始时间 194 EndTime int64 `json:"end_time,omitempty"` // 审批结束时间 195 TenantKey string `json:"tenant_key,omitempty"` // 企业标识 196 Type string `json:"type,omitempty"` // 此事件此处始终为event_callback 197 OpenID string `json:"open_id,omitempty"` // 申请发起人open_id 198 UserID string `json:"user_id,omitempty"` // 申请发起人 199 } 200 201 type P1OutApprovalI18nResourceV4 struct { 202 IsDefault bool `json:"is_default,omitempty"` 203 Locale string `json:"locale,omitempty"` 204 Texts map[string]string `json:"texts,omitempty"` // key对应的文案 205 }