merge_hris_client 2.0.4 → 3.2.2

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 (380) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +67 -10
  3. data/docs/AccountDetails.md +5 -1
  4. data/docs/AccountDetailsAndActions.md +9 -3
  5. data/docs/AccountIntegration.md +10 -2
  6. data/docs/AdvancedMetadata.md +28 -0
  7. data/docs/AsyncPassthroughApi.md +155 -0
  8. data/docs/AsyncPassthroughReciept.md +18 -0
  9. data/docs/AuditLogEvent.md +32 -0
  10. data/docs/AuditTrailApi.md +91 -0
  11. data/docs/BankInfo.md +11 -5
  12. data/docs/BankInfoApi.md +17 -13
  13. data/docs/Benefit.md +17 -5
  14. data/docs/BenefitPlanTypeEnum.md +15 -0
  15. data/docs/BenefitsApi.md +6 -6
  16. data/docs/CommonModelScopeAPI.md +18 -0
  17. data/docs/CommonModelScopeData.md +20 -0
  18. data/docs/CommonModelScopes.md +20 -0
  19. data/docs/CommonModelScopesApi.md +157 -0
  20. data/docs/CommonModelScopesBodyRequest.md +22 -0
  21. data/docs/CommonModelScopesDisabledModels.md +26 -0
  22. data/docs/CommonModelScopesDisabledModelsEnabledActionsEnum.md +15 -0
  23. data/docs/CommonModelScopesPostInnerDeserializerRequest.md +22 -0
  24. data/docs/CommonModelScopesUpdateSerializer.md +18 -0
  25. data/docs/CompaniesApi.md +4 -4
  26. data/docs/Company.md +9 -3
  27. data/docs/ConditionSchema.md +30 -0
  28. data/docs/ConditionTypeEnum.md +15 -0
  29. data/docs/CreateFieldMappingRequest.md +28 -0
  30. data/docs/DataPassthroughRequest.md +5 -5
  31. data/docs/DebugModelLogSummary.md +1 -1
  32. data/docs/Deduction.md +13 -5
  33. data/docs/DeleteAccountApi.md +9 -9
  34. data/docs/Dependent.md +52 -0
  35. data/docs/DependentsApi.md +181 -0
  36. data/docs/Earning.md +13 -5
  37. data/docs/Employee.md +27 -15
  38. data/docs/EmployeePayrollRun.md +13 -7
  39. data/docs/EmployeePayrollRunsApi.md +4 -4
  40. data/docs/EmployeeRequest.md +20 -16
  41. data/docs/EmployeesApi.md +37 -18
  42. data/docs/EmployerBenefit.md +38 -0
  43. data/docs/EmployerBenefitsApi.md +177 -0
  44. data/docs/Employment.md +16 -10
  45. data/docs/EmploymentsApi.md +15 -11
  46. data/docs/EnabledActionsEnum.md +15 -0
  47. data/docs/EndUserDetailsRequest.md +22 -12
  48. data/docs/EventTypeEnum.md +15 -0
  49. data/docs/ExternalTargetFieldAPI.md +22 -0
  50. data/docs/ExternalTargetFieldAPIResponse.md +48 -0
  51. data/docs/FieldMappingApi.md +455 -0
  52. data/docs/FieldMappingApiInstance.md +24 -0
  53. data/docs/FieldMappingApiInstanceRemoteField.md +22 -0
  54. data/docs/FieldMappingApiInstanceRemoteFieldRemoteEndpointInfo.md +22 -0
  55. data/docs/FieldMappingApiInstanceResponse.md +48 -0
  56. data/docs/FieldMappingApiInstanceTargetField.md +22 -0
  57. data/docs/FieldMappingInstanceResponse.md +24 -0
  58. data/docs/FieldPermissionDeserializer.md +20 -0
  59. data/docs/FieldPermissionDeserializerRequest.md +20 -0
  60. data/docs/ForceResyncApi.md +1 -1
  61. data/docs/GenerateRemoteKeyRequest.md +1 -1
  62. data/docs/Group.md +12 -4
  63. data/docs/GroupsApi.md +19 -9
  64. data/docs/IndividualCommonModelScopeDeserializer.md +22 -0
  65. data/docs/IndividualCommonModelScopeDeserializerRequest.md +22 -0
  66. data/docs/Issue.md +10 -8
  67. data/docs/IssuesApi.md +11 -9
  68. data/docs/LinkToken.md +4 -2
  69. data/docs/LinkTokenApi.md +1 -1
  70. data/docs/LinkedAccountCommonModelScopeDeserializerRequest.md +18 -0
  71. data/docs/LinkedAccountCondition.md +28 -0
  72. data/docs/LinkedAccountConditionRequest.md +22 -0
  73. data/docs/LinkedAccountSelectiveSyncConfiguration.md +18 -0
  74. data/docs/LinkedAccountSelectiveSyncConfigurationListRequest.md +18 -0
  75. data/docs/LinkedAccountSelectiveSyncConfigurationRequest.md +18 -0
  76. data/docs/LinkedAccountsApi.md +4 -2
  77. data/docs/Location.md +12 -6
  78. data/docs/LocationsApi.md +15 -9
  79. data/docs/MetaResponse.md +3 -1
  80. data/docs/ModelPermissionDeserializer.md +18 -0
  81. data/docs/ModelPermissionDeserializerRequest.md +18 -0
  82. data/docs/MultipartFormFieldRequest.md +1 -1
  83. data/docs/OperatorSchema.md +20 -0
  84. data/docs/PaginatedAuditLogEventList.md +22 -0
  85. data/docs/PaginatedConditionSchemaList.md +22 -0
  86. data/docs/PaginatedDependentList.md +22 -0
  87. data/docs/PaginatedEmployerBenefitList.md +22 -0
  88. data/docs/PaginatedTimesheetEntryList.md +22 -0
  89. data/docs/PatchedEditFieldMappingRequest.md +22 -0
  90. data/docs/PayGroup.md +9 -3
  91. data/docs/PayGroupsApi.md +4 -4
  92. data/docs/PayrollRun.md +11 -5
  93. data/docs/PayrollRunsApi.md +14 -10
  94. data/docs/RelationshipEnum.md +15 -0
  95. data/docs/RemoteData.md +1 -1
  96. data/docs/RemoteEndpointInfo.md +22 -0
  97. data/docs/RemoteFieldAPI.md +28 -0
  98. data/docs/RemoteFieldAPIResponse.md +48 -0
  99. data/docs/RemoteKeyForRegenerationRequest.md +1 -1
  100. data/docs/RemoteResponse.md +3 -1
  101. data/docs/ResponseTypeEnum.md +15 -0
  102. data/docs/RoleEnum.md +15 -0
  103. data/docs/ScopesApi.md +222 -0
  104. data/docs/SelectiveSyncApi.md +233 -0
  105. data/docs/SelectiveSyncConfigurationsUsageEnum.md +15 -0
  106. data/docs/SyncStatus.md +7 -5
  107. data/docs/SyncStatusApi.md +1 -1
  108. data/docs/Tax.md +12 -4
  109. data/docs/Team.md +10 -4
  110. data/docs/TeamsApi.md +4 -4
  111. data/docs/TimeOff.md +15 -9
  112. data/docs/TimeOffApi.md +24 -12
  113. data/docs/TimeOffBalance.md +12 -6
  114. data/docs/TimeOffBalancesApi.md +15 -11
  115. data/docs/TimeOffRequest.md +11 -9
  116. data/docs/TimesheetEntriesApi.md +341 -0
  117. data/docs/TimesheetEntry.md +38 -0
  118. data/docs/TimesheetEntryEndpointRequest.md +18 -0
  119. data/docs/TimesheetEntryRequest.md +28 -0
  120. data/docs/TimesheetEntryResponse.md +24 -0
  121. data/lib/merge_hris_client/api/async_passthrough_api.rb +160 -0
  122. data/lib/merge_hris_client/api/audit_trail_api.rb +95 -0
  123. data/lib/merge_hris_client/api/bank_info_api.rb +26 -12
  124. data/lib/merge_hris_client/api/benefits_api.rb +6 -6
  125. data/lib/merge_hris_client/api/common_model_scopes_api.rb +146 -0
  126. data/lib/merge_hris_client/api/companies_api.rb +4 -4
  127. data/lib/merge_hris_client/api/delete_account_api.rb +7 -7
  128. data/lib/merge_hris_client/api/dependents_api.rb +188 -0
  129. data/lib/merge_hris_client/api/employee_payroll_runs_api.rb +4 -4
  130. data/lib/merge_hris_client/api/employees_api.rb +53 -17
  131. data/lib/merge_hris_client/api/employer_benefits_api.rb +182 -0
  132. data/lib/merge_hris_client/api/employments_api.rb +24 -10
  133. data/lib/merge_hris_client/api/field_mapping_api.rb +424 -0
  134. data/lib/merge_hris_client/api/force_resync_api.rb +2 -2
  135. data/lib/merge_hris_client/api/groups_api.rb +31 -8
  136. data/lib/merge_hris_client/api/issues_api.rb +13 -10
  137. data/lib/merge_hris_client/api/linked_accounts_api.rb +6 -3
  138. data/lib/merge_hris_client/api/locations_api.rb +29 -8
  139. data/lib/merge_hris_client/api/pay_groups_api.rb +4 -4
  140. data/lib/merge_hris_client/api/payroll_runs_api.rb +24 -10
  141. data/lib/merge_hris_client/api/scopes_api.rb +209 -0
  142. data/lib/merge_hris_client/api/selective_sync_api.rb +225 -0
  143. data/lib/merge_hris_client/api/sync_status_api.rb +2 -2
  144. data/lib/merge_hris_client/api/teams_api.rb +4 -4
  145. data/lib/merge_hris_client/api/time_off_api.rb +38 -12
  146. data/lib/merge_hris_client/api/time_off_balances_api.rb +24 -10
  147. data/lib/merge_hris_client/api/timesheet_entries_api.rb +342 -0
  148. data/lib/merge_hris_client/configuration.rb +4 -0
  149. data/lib/merge_hris_client/models/account_details.rb +24 -4
  150. data/lib/merge_hris_client/models/account_details_and_actions.rb +39 -4
  151. data/lib/merge_hris_client/models/account_details_and_actions_status_enum.rb +17 -7
  152. data/lib/merge_hris_client/models/account_integration.rb +52 -8
  153. data/lib/merge_hris_client/models/account_type_enum.rb +17 -7
  154. data/lib/merge_hris_client/models/advanced_metadata.rb +270 -0
  155. data/lib/merge_hris_client/models/async_passthrough_reciept.rb +223 -0
  156. data/lib/merge_hris_client/models/audit_log_event.rb +356 -0
  157. data/lib/merge_hris_client/models/bank_info.rb +48 -17
  158. data/lib/merge_hris_client/models/benefit.rb +79 -15
  159. data/lib/merge_hris_client/models/benefit_plan_type_enum.rb +48 -0
  160. data/lib/merge_hris_client/models/categories_enum.rb +19 -7
  161. data/lib/merge_hris_client/models/category_enum.rb +19 -7
  162. data/lib/merge_hris_client/models/common_model_scope_api.rb +226 -0
  163. data/lib/merge_hris_client/models/common_model_scope_data.rb +234 -0
  164. data/lib/merge_hris_client/models/common_model_scopes.rb +234 -0
  165. data/lib/merge_hris_client/models/common_model_scopes_body_request.rb +274 -0
  166. data/lib/merge_hris_client/models/common_model_scopes_disabled_models.rb +283 -0
  167. data/lib/merge_hris_client/models/common_model_scopes_disabled_models_enabled_actions_enum.rb +45 -0
  168. data/lib/merge_hris_client/models/common_model_scopes_post_inner_deserializer_request.rb +274 -0
  169. data/lib/merge_hris_client/models/common_model_scopes_update_serializer.rb +226 -0
  170. data/lib/merge_hris_client/models/company.rb +46 -16
  171. data/lib/merge_hris_client/models/condition_schema.rb +298 -0
  172. data/lib/merge_hris_client/models/condition_type_enum.rb +50 -0
  173. data/lib/merge_hris_client/models/country_enum.rb +17 -7
  174. data/lib/merge_hris_client/models/create_field_mapping_request.rb +396 -0
  175. data/lib/merge_hris_client/models/data_passthrough_request.rb +5 -1
  176. data/lib/merge_hris_client/models/deduction.rb +59 -18
  177. data/lib/merge_hris_client/models/dependent.rb +478 -0
  178. data/lib/merge_hris_client/models/earning.rb +58 -17
  179. data/lib/merge_hris_client/models/earning_type_enum.rb +17 -7
  180. data/lib/merge_hris_client/models/employee.rb +93 -24
  181. data/lib/merge_hris_client/models/employee_payroll_run.rb +50 -18
  182. data/lib/merge_hris_client/models/employee_request.rb +56 -28
  183. data/lib/merge_hris_client/models/employer_benefit.rb +371 -0
  184. data/lib/merge_hris_client/models/employment.rb +53 -21
  185. data/lib/merge_hris_client/models/employment_status_enum.rb +17 -7
  186. data/lib/merge_hris_client/models/employment_type_enum.rb +17 -7
  187. data/lib/merge_hris_client/models/enabled_actions_enum.rb +45 -0
  188. data/lib/merge_hris_client/models/encoding_enum.rb +17 -7
  189. data/lib/merge_hris_client/models/end_user_details_request.rb +102 -11
  190. data/lib/merge_hris_client/models/ethnicity_enum.rb +17 -7
  191. data/lib/merge_hris_client/models/event_type_enum.rb +81 -0
  192. data/lib/merge_hris_client/models/external_target_field_api.rb +239 -0
  193. data/lib/merge_hris_client/models/external_target_field_api_response.rb +385 -0
  194. data/lib/merge_hris_client/models/field_mapping_api_instance.rb +247 -0
  195. data/lib/merge_hris_client/models/field_mapping_api_instance_remote_field.rb +253 -0
  196. data/lib/merge_hris_client/models/field_mapping_api_instance_remote_field_remote_endpoint_info.rb +241 -0
  197. data/lib/merge_hris_client/models/field_mapping_api_instance_response.rb +385 -0
  198. data/lib/merge_hris_client/models/field_mapping_api_instance_target_field.rb +251 -0
  199. data/lib/merge_hris_client/models/field_mapping_instance_response.rb +266 -0
  200. data/lib/merge_hris_client/models/field_permission_deserializer.rb +231 -0
  201. data/lib/merge_hris_client/models/field_permission_deserializer_request.rb +231 -0
  202. data/lib/merge_hris_client/models/flsa_status_enum.rb +17 -7
  203. data/lib/merge_hris_client/models/gender_enum.rb +17 -7
  204. data/lib/merge_hris_client/models/generate_remote_key_request.rb +1 -0
  205. data/lib/merge_hris_client/models/group.rb +58 -17
  206. data/lib/merge_hris_client/models/group_type_enum.rb +18 -7
  207. data/lib/merge_hris_client/models/individual_common_model_scope_deserializer.rb +243 -0
  208. data/lib/merge_hris_client/models/individual_common_model_scope_deserializer_request.rb +262 -0
  209. data/lib/merge_hris_client/models/issue.rb +17 -5
  210. data/lib/merge_hris_client/models/issue_status_enum.rb +17 -7
  211. data/lib/merge_hris_client/models/link_token.rb +13 -9
  212. data/lib/merge_hris_client/models/linked_account_common_model_scope_deserializer_request.rb +226 -0
  213. data/lib/merge_hris_client/models/linked_account_condition.rb +282 -0
  214. data/lib/merge_hris_client/models/linked_account_condition_request.rb +269 -0
  215. data/lib/merge_hris_client/models/linked_account_selective_sync_configuration.rb +221 -0
  216. data/lib/merge_hris_client/models/linked_account_selective_sync_configuration_list_request.rb +226 -0
  217. data/lib/merge_hris_client/models/linked_account_selective_sync_configuration_request.rb +226 -0
  218. data/lib/merge_hris_client/models/location.rb +48 -18
  219. data/lib/merge_hris_client/models/location_type_enum.rb +17 -7
  220. data/lib/merge_hris_client/models/marital_status_enum.rb +17 -7
  221. data/lib/merge_hris_client/models/meta_response.rb +13 -2
  222. data/lib/merge_hris_client/models/method_enum.rb +17 -7
  223. data/lib/merge_hris_client/models/model_permission_deserializer.rb +218 -0
  224. data/lib/merge_hris_client/models/model_permission_deserializer_request.rb +218 -0
  225. data/lib/merge_hris_client/models/multipart_form_field_request.rb +1 -1
  226. data/lib/merge_hris_client/models/operator_schema.rb +229 -0
  227. data/lib/merge_hris_client/models/paginated_audit_log_event_list.rb +240 -0
  228. data/lib/merge_hris_client/models/paginated_condition_schema_list.rb +240 -0
  229. data/lib/merge_hris_client/models/paginated_dependent_list.rb +240 -0
  230. data/lib/merge_hris_client/models/paginated_employer_benefit_list.rb +240 -0
  231. data/lib/merge_hris_client/models/paginated_timesheet_entry_list.rb +240 -0
  232. data/lib/merge_hris_client/models/patched_edit_field_mapping_request.rb +271 -0
  233. data/lib/merge_hris_client/models/pay_currency_enum.rb +17 -7
  234. data/lib/merge_hris_client/models/pay_frequency_enum.rb +18 -7
  235. data/lib/merge_hris_client/models/pay_group.rb +46 -16
  236. data/lib/merge_hris_client/models/pay_period_enum.rb +18 -7
  237. data/lib/merge_hris_client/models/payroll_run.rb +48 -18
  238. data/lib/merge_hris_client/models/policy_type_enum.rb +17 -7
  239. data/lib/merge_hris_client/models/reason_enum.rb +17 -7
  240. data/lib/merge_hris_client/models/relationship_enum.rb +46 -0
  241. data/lib/merge_hris_client/models/remote_data.rb +3 -4
  242. data/lib/merge_hris_client/models/remote_endpoint_info.rb +253 -0
  243. data/lib/merge_hris_client/models/remote_field_api.rb +285 -0
  244. data/lib/merge_hris_client/models/remote_field_api_response.rb +385 -0
  245. data/lib/merge_hris_client/models/remote_key_for_regeneration_request.rb +1 -0
  246. data/lib/merge_hris_client/models/remote_response.rb +14 -11
  247. data/lib/merge_hris_client/models/request_format_enum.rb +17 -7
  248. data/lib/merge_hris_client/models/request_type_enum.rb +17 -7
  249. data/lib/merge_hris_client/models/response_type_enum.rb +45 -0
  250. data/lib/merge_hris_client/models/role_enum.rb +49 -0
  251. data/lib/merge_hris_client/models/run_state_enum.rb +17 -7
  252. data/lib/merge_hris_client/models/run_type_enum.rb +17 -7
  253. data/lib/merge_hris_client/models/selective_sync_configurations_usage_enum.rb +45 -0
  254. data/lib/merge_hris_client/models/sync_status.rb +13 -14
  255. data/lib/merge_hris_client/models/sync_status_status_enum.rb +19 -7
  256. data/lib/merge_hris_client/models/tax.rb +57 -16
  257. data/lib/merge_hris_client/models/team.rb +47 -16
  258. data/lib/merge_hris_client/models/time_off.rb +51 -19
  259. data/lib/merge_hris_client/models/time_off_balance.rb +49 -18
  260. data/lib/merge_hris_client/models/time_off_request.rb +36 -21
  261. data/lib/merge_hris_client/models/time_off_status_enum.rb +17 -7
  262. data/lib/merge_hris_client/models/timesheet_entry.rb +326 -0
  263. data/lib/merge_hris_client/models/timesheet_entry_endpoint_request.rb +223 -0
  264. data/lib/merge_hris_client/models/timesheet_entry_request.rb +278 -0
  265. data/lib/merge_hris_client/models/timesheet_entry_response.rb +266 -0
  266. data/lib/merge_hris_client/models/units_enum.rb +17 -7
  267. data/lib/merge_hris_client/version.rb +1 -1
  268. data/lib/merge_hris_client.rb +49 -4
  269. data/spec/api/async_passthrough_api_spec.rb +59 -0
  270. data/spec/api/audit_trail_api_spec.rb +51 -0
  271. data/spec/api/bank_info_api_spec.rb +8 -6
  272. data/spec/api/benefits_api_spec.rb +3 -3
  273. data/spec/api/common_model_scopes_api_spec.rb +58 -0
  274. data/spec/api/companies_api_spec.rb +2 -2
  275. data/spec/api/delete_account_api_spec.rb +2 -2
  276. data/spec/api/dependents_api_spec.rb +70 -0
  277. data/spec/api/employee_payroll_runs_api_spec.rb +2 -2
  278. data/spec/api/employees_api_spec.rb +16 -6
  279. data/spec/api/employer_benefits_api_spec.rb +68 -0
  280. data/spec/api/employments_api_spec.rb +7 -5
  281. data/spec/api/field_mapping_api_spec.rb +107 -0
  282. data/spec/api/force_resync_api_spec.rb +1 -1
  283. data/spec/api/groups_api_spec.rb +9 -4
  284. data/spec/api/issues_api_spec.rb +6 -5
  285. data/spec/api/linked_accounts_api_spec.rb +2 -1
  286. data/spec/api/locations_api_spec.rb +7 -4
  287. data/spec/api/pay_groups_api_spec.rb +2 -2
  288. data/spec/api/payroll_runs_api_spec.rb +7 -5
  289. data/spec/api/scopes_api_spec.rb +68 -0
  290. data/spec/api/selective_sync_api_spec.rb +72 -0
  291. data/spec/api/sync_status_api_spec.rb +1 -1
  292. data/spec/api/teams_api_spec.rb +2 -2
  293. data/spec/api/time_off_api_spec.rb +12 -6
  294. data/spec/api/time_off_balances_api_spec.rb +7 -5
  295. data/spec/api/timesheet_entries_api_spec.rb +99 -0
  296. data/spec/models/account_details_and_actions_spec.rb +18 -0
  297. data/spec/models/account_details_spec.rb +12 -0
  298. data/spec/models/account_integration_spec.rb +24 -0
  299. data/spec/models/advanced_metadata_spec.rb +64 -0
  300. data/spec/models/async_passthrough_reciept_spec.rb +34 -0
  301. data/spec/models/audit_log_event_spec.rb +76 -0
  302. data/spec/models/bank_info_spec.rb +24 -0
  303. data/spec/models/benefit_plan_type_enum_spec.rb +28 -0
  304. data/spec/models/benefit_spec.rb +42 -0
  305. data/spec/models/common_model_scope_api_spec.rb +34 -0
  306. data/spec/models/common_model_scope_data_spec.rb +40 -0
  307. data/spec/models/common_model_scopes_body_request_spec.rb +46 -0
  308. data/spec/models/common_model_scopes_disabled_models_enabled_actions_enum_spec.rb +28 -0
  309. data/spec/models/common_model_scopes_disabled_models_spec.rb +58 -0
  310. data/spec/models/common_model_scopes_post_inner_deserializer_request_spec.rb +46 -0
  311. data/spec/models/common_model_scopes_spec.rb +40 -0
  312. data/spec/models/common_model_scopes_update_serializer_spec.rb +34 -0
  313. data/spec/models/company_spec.rb +24 -0
  314. data/spec/models/condition_schema_spec.rb +70 -0
  315. data/spec/models/condition_type_enum_spec.rb +28 -0
  316. data/spec/models/create_field_mapping_request_spec.rb +64 -0
  317. data/spec/models/deduction_spec.rb +30 -0
  318. data/spec/models/dependent_spec.rb +136 -0
  319. data/spec/models/earning_spec.rb +30 -0
  320. data/spec/models/employee_payroll_run_spec.rb +24 -0
  321. data/spec/models/employee_request_spec.rb +18 -6
  322. data/spec/models/employee_spec.rb +42 -0
  323. data/spec/models/employer_benefit_spec.rb +94 -0
  324. data/spec/models/employment_spec.rb +24 -0
  325. data/spec/models/enabled_actions_enum_spec.rb +28 -0
  326. data/spec/models/end_user_details_request_spec.rb +30 -0
  327. data/spec/models/event_type_enum_spec.rb +28 -0
  328. data/spec/models/external_target_field_api_response_spec.rb +124 -0
  329. data/spec/models/external_target_field_api_spec.rb +46 -0
  330. data/spec/models/field_mapping_api_instance_remote_field_remote_endpoint_info_spec.rb +46 -0
  331. data/spec/models/field_mapping_api_instance_remote_field_spec.rb +46 -0
  332. data/spec/models/field_mapping_api_instance_response_spec.rb +124 -0
  333. data/spec/models/field_mapping_api_instance_spec.rb +52 -0
  334. data/spec/models/field_mapping_api_instance_target_field_spec.rb +46 -0
  335. data/spec/models/field_mapping_instance_response_spec.rb +52 -0
  336. data/spec/models/field_permission_deserializer_request_spec.rb +40 -0
  337. data/spec/models/field_permission_deserializer_spec.rb +40 -0
  338. data/spec/models/group_spec.rb +30 -0
  339. data/spec/models/individual_common_model_scope_deserializer_request_spec.rb +46 -0
  340. data/spec/models/individual_common_model_scope_deserializer_spec.rb +46 -0
  341. data/spec/models/issue_spec.rb +6 -0
  342. data/spec/models/link_token_spec.rb +6 -0
  343. data/spec/models/linked_account_common_model_scope_deserializer_request_spec.rb +34 -0
  344. data/spec/models/linked_account_condition_request_spec.rb +46 -0
  345. data/spec/models/linked_account_condition_spec.rb +64 -0
  346. data/spec/models/linked_account_selective_sync_configuration_list_request_spec.rb +34 -0
  347. data/spec/models/linked_account_selective_sync_configuration_request_spec.rb +34 -0
  348. data/spec/models/linked_account_selective_sync_configuration_spec.rb +34 -0
  349. data/spec/models/location_spec.rb +24 -0
  350. data/spec/models/meta_response_spec.rb +6 -0
  351. data/spec/models/model_permission_deserializer_request_spec.rb +34 -0
  352. data/spec/models/model_permission_deserializer_spec.rb +34 -0
  353. data/spec/models/operator_schema_spec.rb +40 -0
  354. data/spec/models/paginated_audit_log_event_list_spec.rb +46 -0
  355. data/spec/models/paginated_condition_schema_list_spec.rb +46 -0
  356. data/spec/models/paginated_dependent_list_spec.rb +46 -0
  357. data/spec/models/paginated_employer_benefit_list_spec.rb +46 -0
  358. data/spec/models/paginated_timesheet_entry_list_spec.rb +46 -0
  359. data/spec/models/patched_edit_field_mapping_request_spec.rb +46 -0
  360. data/spec/models/pay_group_spec.rb +24 -0
  361. data/spec/models/payroll_run_spec.rb +24 -0
  362. data/spec/models/relationship_enum_spec.rb +28 -0
  363. data/spec/models/remote_endpoint_info_spec.rb +46 -0
  364. data/spec/models/remote_field_api_response_spec.rb +124 -0
  365. data/spec/models/remote_field_api_spec.rb +64 -0
  366. data/spec/models/remote_response_spec.rb +6 -0
  367. data/spec/models/response_type_enum_spec.rb +28 -0
  368. data/spec/models/role_enum_spec.rb +28 -0
  369. data/spec/models/selective_sync_configurations_usage_enum_spec.rb +28 -0
  370. data/spec/models/sync_status_spec.rb +6 -0
  371. data/spec/models/tax_spec.rb +30 -0
  372. data/spec/models/team_spec.rb +24 -0
  373. data/spec/models/time_off_balance_spec.rb +24 -0
  374. data/spec/models/time_off_request_spec.rb +12 -6
  375. data/spec/models/time_off_spec.rb +24 -0
  376. data/spec/models/timesheet_entry_endpoint_request_spec.rb +34 -0
  377. data/spec/models/timesheet_entry_request_spec.rb +64 -0
  378. data/spec/models/timesheet_entry_response_spec.rb +52 -0
  379. data/spec/models/timesheet_entry_spec.rb +94 -0
  380. metadata +368 -104
@@ -0,0 +1,478 @@
1
+ =begin
2
+ #Merge HRIS API
3
+
4
+ #The unified API for building rich integrations with multiple HR Information System platforms.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: hello@merge.dev
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.1.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module MergeHRISClient
17
+ # # The Dependent Object ### Description The `Dependent` object is used to represent a dependent (e.g. child, spouse, domestic partner, etc) of an `Employee` ### Usage Example Fetch from the `LIST Dependents` endpoint and filter by `ID` to show all dependents.
18
+ class Dependent
19
+ attr_accessor :id
20
+
21
+ # The third-party API ID of the matching object.
22
+ attr_accessor :remote_id
23
+
24
+ # The datetime that this object was created by Merge.
25
+ attr_accessor :created_at
26
+
27
+ # The datetime that this object was modified by Merge.
28
+ attr_accessor :modified_at
29
+
30
+ # The dependents's first name.
31
+ attr_accessor :first_name
32
+
33
+ # The dependents's middle name.
34
+ attr_accessor :middle_name
35
+
36
+ # The dependents's last name.
37
+ attr_accessor :last_name
38
+
39
+ # The dependent's relationship to the employee. * `CHILD` - CHILD * `SPOUSE` - SPOUSE * `DOMESTIC_PARTNER` - DOMESTIC_PARTNER
40
+ attr_accessor :relationship
41
+
42
+ # The employee this person is a dependent of.
43
+ attr_accessor :employee
44
+
45
+ # The dependent's date of birth.
46
+ attr_accessor :date_of_birth
47
+
48
+ # The dependent's gender. * `MALE` - MALE * `FEMALE` - FEMALE * `NON-BINARY` - NON-BINARY * `OTHER` - OTHER * `PREFER_NOT_TO_DISCLOSE` - PREFER_NOT_TO_DISCLOSE
49
+ attr_accessor :gender
50
+
51
+ # The dependent's phone number.
52
+ attr_accessor :phone_number
53
+
54
+ # The dependents's home address.
55
+ attr_accessor :home_location
56
+
57
+ # Whether or not the dependent is a student
58
+ attr_accessor :is_student
59
+
60
+ # The dependents's social security number.
61
+ attr_accessor :ssn
62
+
63
+ # Indicates whether or not this object has been deleted in the third party platform.
64
+ attr_accessor :remote_was_deleted
65
+
66
+ attr_accessor :field_mappings
67
+
68
+ attr_accessor :remote_data
69
+
70
+ # Attribute mapping from ruby-style variable name to JSON key.
71
+ def self.attribute_map
72
+ {
73
+ :'id' => :'id',
74
+ :'remote_id' => :'remote_id',
75
+ :'created_at' => :'created_at',
76
+ :'modified_at' => :'modified_at',
77
+ :'first_name' => :'first_name',
78
+ :'middle_name' => :'middle_name',
79
+ :'last_name' => :'last_name',
80
+ :'relationship' => :'relationship',
81
+ :'employee' => :'employee',
82
+ :'date_of_birth' => :'date_of_birth',
83
+ :'gender' => :'gender',
84
+ :'phone_number' => :'phone_number',
85
+ :'home_location' => :'home_location',
86
+ :'is_student' => :'is_student',
87
+ :'ssn' => :'ssn',
88
+ :'remote_was_deleted' => :'remote_was_deleted',
89
+ :'field_mappings' => :'field_mappings',
90
+ :'remote_data' => :'remote_data'
91
+ }
92
+ end
93
+
94
+ # Returns all the JSON keys this model knows about
95
+ def self.acceptable_attributes
96
+ attribute_map.values
97
+ end
98
+
99
+ # Attribute type mapping.
100
+ def self.openapi_types
101
+ {
102
+ :'id' => :'String',
103
+ :'remote_id' => :'String',
104
+ :'created_at' => :'Time',
105
+ :'modified_at' => :'Time',
106
+ :'first_name' => :'String',
107
+ :'middle_name' => :'String',
108
+ :'last_name' => :'String',
109
+ :'relationship' => :'RelationshipEnum',
110
+ :'employee' => :'String',
111
+ :'date_of_birth' => :'Time',
112
+ :'gender' => :'GenderEnum',
113
+ :'phone_number' => :'String',
114
+ :'home_location' => :'String',
115
+ :'is_student' => :'Boolean',
116
+ :'ssn' => :'String',
117
+ :'remote_was_deleted' => :'Boolean',
118
+ :'field_mappings' => :'Object',
119
+ :'remote_data' => :'Array<RemoteData>'
120
+ }
121
+ end
122
+
123
+ # List of attributes with nullable: true
124
+ def self.openapi_nullable
125
+ Set.new([
126
+ :'remote_id',
127
+ :'first_name',
128
+ :'middle_name',
129
+ :'last_name',
130
+ :'relationship',
131
+ :'employee',
132
+ :'date_of_birth',
133
+ :'gender',
134
+ :'phone_number',
135
+ :'home_location',
136
+ :'is_student',
137
+ :'ssn',
138
+ :'field_mappings',
139
+ :'remote_data'
140
+ ])
141
+ end
142
+
143
+ # Initializes the object
144
+ # @param [Hash] attributes Model attributes in the form of hash
145
+ def initialize(attributes = {})
146
+ if (!attributes.is_a?(Hash))
147
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MergeHRISClient::Dependent` initialize method"
148
+ end
149
+
150
+ # check to see if the attribute exists and convert string to symbol for hash key
151
+ attributes = attributes.each_with_object({}) { |(k, v), h|
152
+ if (!self.class.attribute_map.key?(k.to_sym))
153
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MergeHRISClient::Dependent`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
154
+ end
155
+ h[k.to_sym] = v
156
+ }
157
+
158
+ if attributes.key?(:'id')
159
+ self.id = attributes[:'id']
160
+ end
161
+
162
+ if attributes.key?(:'remote_id')
163
+ self.remote_id = attributes[:'remote_id']
164
+ end
165
+
166
+ if attributes.key?(:'created_at')
167
+ self.created_at = attributes[:'created_at']
168
+ end
169
+
170
+ if attributes.key?(:'modified_at')
171
+ self.modified_at = attributes[:'modified_at']
172
+ end
173
+
174
+ if attributes.key?(:'first_name')
175
+ self.first_name = attributes[:'first_name']
176
+ end
177
+
178
+ if attributes.key?(:'middle_name')
179
+ self.middle_name = attributes[:'middle_name']
180
+ end
181
+
182
+ if attributes.key?(:'last_name')
183
+ self.last_name = attributes[:'last_name']
184
+ end
185
+
186
+ if attributes.key?(:'relationship')
187
+ self.relationship = attributes[:'relationship']
188
+ end
189
+
190
+ if attributes.key?(:'employee')
191
+ self.employee = attributes[:'employee']
192
+ end
193
+
194
+ if attributes.key?(:'date_of_birth')
195
+ self.date_of_birth = attributes[:'date_of_birth']
196
+ end
197
+
198
+ if attributes.key?(:'gender')
199
+ self.gender = attributes[:'gender']
200
+ end
201
+
202
+ if attributes.key?(:'phone_number')
203
+ self.phone_number = attributes[:'phone_number']
204
+ end
205
+
206
+ if attributes.key?(:'home_location')
207
+ self.home_location = attributes[:'home_location']
208
+ end
209
+
210
+ if attributes.key?(:'is_student')
211
+ self.is_student = attributes[:'is_student']
212
+ end
213
+
214
+ if attributes.key?(:'ssn')
215
+ self.ssn = attributes[:'ssn']
216
+ end
217
+
218
+ if attributes.key?(:'remote_was_deleted')
219
+ self.remote_was_deleted = attributes[:'remote_was_deleted']
220
+ end
221
+
222
+ if attributes.key?(:'field_mappings')
223
+ self.field_mappings = attributes[:'field_mappings']
224
+ end
225
+
226
+ if attributes.key?(:'remote_data')
227
+ if (value = attributes[:'remote_data']).is_a?(Array)
228
+ self.remote_data = value
229
+ end
230
+ end
231
+ end
232
+
233
+ # Show invalid properties with the reasons. Usually used together with valid?
234
+ # @return Array for valid properties with the reasons
235
+ def list_invalid_properties
236
+ invalid_properties = Array.new
237
+ if !@first_name.nil? && @first_name.to_s.length > 60
238
+ invalid_properties.push('invalid value for "first_name", the character length must be smaller than or equal to 60.')
239
+ end
240
+
241
+ if !@middle_name.nil? && @middle_name.to_s.length > 60
242
+ invalid_properties.push('invalid value for "middle_name", the character length must be smaller than or equal to 60.')
243
+ end
244
+
245
+ if !@last_name.nil? && @last_name.to_s.length > 60
246
+ invalid_properties.push('invalid value for "last_name", the character length must be smaller than or equal to 60.')
247
+ end
248
+
249
+ if !@phone_number.nil? && @phone_number.to_s.length > 50
250
+ invalid_properties.push('invalid value for "phone_number", the character length must be smaller than or equal to 50.')
251
+ end
252
+
253
+ if !@ssn.nil? && @ssn.to_s.length > 50
254
+ invalid_properties.push('invalid value for "ssn", the character length must be smaller than or equal to 50.')
255
+ end
256
+
257
+ invalid_properties
258
+ end
259
+
260
+ # Check to see if the all the properties in the model are valid
261
+ # @return true if the model is valid
262
+ def valid?
263
+ return false if !@first_name.nil? && @first_name.to_s.length > 60
264
+ return false if !@middle_name.nil? && @middle_name.to_s.length > 60
265
+ return false if !@last_name.nil? && @last_name.to_s.length > 60
266
+ return false if !@phone_number.nil? && @phone_number.to_s.length > 50
267
+ return false if !@ssn.nil? && @ssn.to_s.length > 50
268
+ true
269
+ end
270
+
271
+ # Custom attribute writer method with validation
272
+ # @param [Object] first_name Value to be assigned
273
+ def first_name=(first_name)
274
+ if !first_name.nil? && first_name.to_s.length > 60
275
+ fail ArgumentError, 'invalid value for "first_name", the character length must be smaller than or equal to 60.'
276
+ end
277
+
278
+ @first_name = first_name
279
+ end
280
+
281
+ # Custom attribute writer method with validation
282
+ # @param [Object] middle_name Value to be assigned
283
+ def middle_name=(middle_name)
284
+ if !middle_name.nil? && middle_name.to_s.length > 60
285
+ fail ArgumentError, 'invalid value for "middle_name", the character length must be smaller than or equal to 60.'
286
+ end
287
+
288
+ @middle_name = middle_name
289
+ end
290
+
291
+ # Custom attribute writer method with validation
292
+ # @param [Object] last_name Value to be assigned
293
+ def last_name=(last_name)
294
+ if !last_name.nil? && last_name.to_s.length > 60
295
+ fail ArgumentError, 'invalid value for "last_name", the character length must be smaller than or equal to 60.'
296
+ end
297
+
298
+ @last_name = last_name
299
+ end
300
+
301
+ # Custom attribute writer method with validation
302
+ # @param [Object] phone_number Value to be assigned
303
+ def phone_number=(phone_number)
304
+ if !phone_number.nil? && phone_number.to_s.length > 50
305
+ fail ArgumentError, 'invalid value for "phone_number", the character length must be smaller than or equal to 50.'
306
+ end
307
+
308
+ @phone_number = phone_number
309
+ end
310
+
311
+ # Custom attribute writer method with validation
312
+ # @param [Object] ssn Value to be assigned
313
+ def ssn=(ssn)
314
+ if !ssn.nil? && ssn.to_s.length > 50
315
+ fail ArgumentError, 'invalid value for "ssn", the character length must be smaller than or equal to 50.'
316
+ end
317
+
318
+ @ssn = ssn
319
+ end
320
+
321
+ # Checks equality by comparing each attribute.
322
+ # @param [Object] Object to be compared
323
+ def ==(o)
324
+ return true if self.equal?(o)
325
+ self.class == o.class &&
326
+ id == o.id &&
327
+ remote_id == o.remote_id &&
328
+ created_at == o.created_at &&
329
+ modified_at == o.modified_at &&
330
+ first_name == o.first_name &&
331
+ middle_name == o.middle_name &&
332
+ last_name == o.last_name &&
333
+ relationship == o.relationship &&
334
+ employee == o.employee &&
335
+ date_of_birth == o.date_of_birth &&
336
+ gender == o.gender &&
337
+ phone_number == o.phone_number &&
338
+ home_location == o.home_location &&
339
+ is_student == o.is_student &&
340
+ ssn == o.ssn &&
341
+ remote_was_deleted == o.remote_was_deleted &&
342
+ field_mappings == o.field_mappings &&
343
+ remote_data == o.remote_data
344
+ end
345
+
346
+ # @see the `==` method
347
+ # @param [Object] Object to be compared
348
+ def eql?(o)
349
+ self == o
350
+ end
351
+
352
+ # Calculates hash code according to all attributes.
353
+ # @return [Integer] Hash code
354
+ def hash
355
+ [id, remote_id, created_at, modified_at, first_name, middle_name, last_name, relationship, employee, date_of_birth, gender, phone_number, home_location, is_student, ssn, remote_was_deleted, field_mappings, remote_data].hash
356
+ end
357
+
358
+ # Builds the object from hash
359
+ # @param [Hash] attributes Model attributes in the form of hash
360
+ # @return [Object] Returns the model itself
361
+ def self.build_from_hash(attributes)
362
+ new.build_from_hash(attributes)
363
+ end
364
+
365
+ # Builds the object from hash
366
+ # @param [Hash] attributes Model attributes in the form of hash
367
+ # @return [Object] Returns the model itself
368
+ def build_from_hash(attributes)
369
+ return nil unless attributes.is_a?(Hash)
370
+ self.class.openapi_types.each_pair do |key, type|
371
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
372
+ self.send("#{key}=", nil)
373
+ elsif type =~ /\AArray<(.*)>/i
374
+ # check to ensure the input is an array given that the attribute
375
+ # is documented as an array but the input is not
376
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
377
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
378
+ end
379
+ elsif !attributes[self.class.attribute_map[key]].nil?
380
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
381
+ end
382
+ end
383
+
384
+ self
385
+ end
386
+
387
+ # Deserializes the data based on type
388
+ # @param string type Data type
389
+ # @param string value Value to be deserialized
390
+ # @return [Object] Deserialized data
391
+ def _deserialize(type, value)
392
+ case type.to_sym
393
+ when :Time
394
+ Time.parse(value)
395
+ when :Date
396
+ Date.parse(value)
397
+ when :String
398
+ value
399
+ when :Integer
400
+ value.to_i
401
+ when :Float
402
+ value.to_f
403
+ when :Boolean
404
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
405
+ true
406
+ else
407
+ false
408
+ end
409
+ when :Object
410
+ # generic object (usually a Hash), return directly
411
+ value
412
+ when /\AArray<(?<inner_type>.+)>\z/
413
+ inner_type = Regexp.last_match[:inner_type]
414
+ value.map { |v| _deserialize(inner_type, v) }
415
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
416
+ k_type = Regexp.last_match[:k_type]
417
+ v_type = Regexp.last_match[:v_type]
418
+ {}.tap do |hash|
419
+ value.each do |k, v|
420
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
421
+ end
422
+ end
423
+ else # model
424
+ # models (e.g. Pet) or oneOf
425
+ klass = MergeHRISClient.const_get(type)
426
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
427
+ end
428
+ end
429
+
430
+ # Returns the string representation of the object
431
+ # @return [String] String presentation of the object
432
+ def to_s
433
+ to_hash.to_s
434
+ end
435
+
436
+ # to_body is an alias to to_hash (backward compatibility)
437
+ # @return [Hash] Returns the object in the form of hash
438
+ def to_body
439
+ to_hash
440
+ end
441
+
442
+ # Returns the object in the form of hash
443
+ # @return [Hash] Returns the object in the form of hash
444
+ def to_hash
445
+ hash = {}
446
+ self.class.attribute_map.each_pair do |attr, param|
447
+ value = self.send(attr)
448
+ if value.nil?
449
+ is_nullable = self.class.openapi_nullable.include?(attr)
450
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
451
+ end
452
+
453
+ hash[param] = _to_hash(value)
454
+ end
455
+ hash
456
+ end
457
+
458
+ # Outputs non-array value in the form of hash
459
+ # For object, use to_hash. Otherwise, just return the value
460
+ # @param [Object] value Any valid value
461
+ # @return [Hash] Returns the value in the form of hash
462
+ def _to_hash(value)
463
+ if value.is_a?(Array)
464
+ value.compact.map { |v| _to_hash(v) }
465
+ elsif value.is_a?(Hash)
466
+ {}.tap do |hash|
467
+ value.each { |k, v| hash[k] = _to_hash(v) }
468
+ end
469
+ elsif value.respond_to? :to_hash
470
+ value.to_hash
471
+ else
472
+ value
473
+ end
474
+ end
475
+
476
+ end
477
+
478
+ end
@@ -14,32 +14,47 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module MergeHRISClient
17
- # # The Earning Object ### Description The `Earning` object is used to represent an earning for a given employee's payroll run. One run could include several earnings. ### Usage Example Fetch from the `LIST Earnings` endpoint and filter by `ID` to show all earnings.
17
+ # # The Earning Object ### Description The `Earning` object is used to represent an array of different compensations that an employee receives within specific wage categories. ### Usage Example Fetch from the `LIST Earnings` endpoint and filter by `ID` to show all earnings.
18
18
  class Earning
19
19
  attr_accessor :id
20
20
 
21
+ # The third-party API ID of the matching object.
22
+ attr_accessor :remote_id
23
+
24
+ # The datetime that this object was created by Merge.
25
+ attr_accessor :created_at
26
+
27
+ # The datetime that this object was modified by Merge.
28
+ attr_accessor :modified_at
29
+
21
30
  attr_accessor :employee_payroll_run
22
31
 
23
32
  # The amount earned.
24
33
  attr_accessor :amount
25
34
 
26
- # The type of earning.
35
+ # The type of earning. * `SALARY` - SALARY * `REIMBURSEMENT` - REIMBURSEMENT * `OVERTIME` - OVERTIME * `BONUS` - BONUS
27
36
  attr_accessor :type
28
37
 
29
- attr_accessor :remote_data
30
-
31
- # Indicates whether or not this object has been deleted by third party webhooks.
38
+ # Indicates whether or not this object has been deleted in the third party platform.
32
39
  attr_accessor :remote_was_deleted
33
40
 
41
+ attr_accessor :field_mappings
42
+
43
+ attr_accessor :remote_data
44
+
34
45
  # Attribute mapping from ruby-style variable name to JSON key.
35
46
  def self.attribute_map
36
47
  {
37
48
  :'id' => :'id',
49
+ :'remote_id' => :'remote_id',
50
+ :'created_at' => :'created_at',
51
+ :'modified_at' => :'modified_at',
38
52
  :'employee_payroll_run' => :'employee_payroll_run',
39
53
  :'amount' => :'amount',
40
54
  :'type' => :'type',
41
- :'remote_data' => :'remote_data',
42
- :'remote_was_deleted' => :'remote_was_deleted'
55
+ :'remote_was_deleted' => :'remote_was_deleted',
56
+ :'field_mappings' => :'field_mappings',
57
+ :'remote_data' => :'remote_data'
43
58
  }
44
59
  end
45
60
 
@@ -52,21 +67,27 @@ module MergeHRISClient
52
67
  def self.openapi_types
53
68
  {
54
69
  :'id' => :'String',
70
+ :'remote_id' => :'String',
71
+ :'created_at' => :'Time',
72
+ :'modified_at' => :'Time',
55
73
  :'employee_payroll_run' => :'String',
56
74
  :'amount' => :'Float',
57
75
  :'type' => :'EarningTypeEnum',
58
- :'remote_data' => :'Array<Hash<String, AnyType>>',
59
- :'remote_was_deleted' => :'Boolean'
76
+ :'remote_was_deleted' => :'Boolean',
77
+ :'field_mappings' => :'Object',
78
+ :'remote_data' => :'Array<RemoteData>'
60
79
  }
61
80
  end
62
81
 
63
82
  # List of attributes with nullable: true
64
83
  def self.openapi_nullable
65
84
  Set.new([
85
+ :'remote_id',
66
86
  :'employee_payroll_run',
67
87
  :'amount',
68
88
  :'type',
69
- :'remote_data',
89
+ :'field_mappings',
90
+ :'remote_data'
70
91
  ])
71
92
  end
72
93
 
@@ -89,6 +110,18 @@ module MergeHRISClient
89
110
  self.id = attributes[:'id']
90
111
  end
91
112
 
113
+ if attributes.key?(:'remote_id')
114
+ self.remote_id = attributes[:'remote_id']
115
+ end
116
+
117
+ if attributes.key?(:'created_at')
118
+ self.created_at = attributes[:'created_at']
119
+ end
120
+
121
+ if attributes.key?(:'modified_at')
122
+ self.modified_at = attributes[:'modified_at']
123
+ end
124
+
92
125
  if attributes.key?(:'employee_payroll_run')
93
126
  self.employee_payroll_run = attributes[:'employee_payroll_run']
94
127
  end
@@ -101,15 +134,19 @@ module MergeHRISClient
101
134
  self.type = attributes[:'type']
102
135
  end
103
136
 
137
+ if attributes.key?(:'remote_was_deleted')
138
+ self.remote_was_deleted = attributes[:'remote_was_deleted']
139
+ end
140
+
141
+ if attributes.key?(:'field_mappings')
142
+ self.field_mappings = attributes[:'field_mappings']
143
+ end
144
+
104
145
  if attributes.key?(:'remote_data')
105
146
  if (value = attributes[:'remote_data']).is_a?(Array)
106
147
  self.remote_data = value
107
148
  end
108
149
  end
109
-
110
- if attributes.key?(:'remote_was_deleted')
111
- self.remote_was_deleted = attributes[:'remote_was_deleted']
112
- end
113
150
  end
114
151
 
115
152
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -131,11 +168,15 @@ module MergeHRISClient
131
168
  return true if self.equal?(o)
132
169
  self.class == o.class &&
133
170
  id == o.id &&
171
+ remote_id == o.remote_id &&
172
+ created_at == o.created_at &&
173
+ modified_at == o.modified_at &&
134
174
  employee_payroll_run == o.employee_payroll_run &&
135
175
  amount == o.amount &&
136
176
  type == o.type &&
137
- remote_data == o.remote_data &&
138
- remote_was_deleted == o.remote_was_deleted
177
+ remote_was_deleted == o.remote_was_deleted &&
178
+ field_mappings == o.field_mappings &&
179
+ remote_data == o.remote_data
139
180
  end
140
181
 
141
182
  # @see the `==` method
@@ -147,7 +188,7 @@ module MergeHRISClient
147
188
  # Calculates hash code according to all attributes.
148
189
  # @return [Integer] Hash code
149
190
  def hash
150
- [id, employee_payroll_run, amount, type, remote_data, remote_was_deleted].hash
191
+ [id, remote_id, created_at, modified_at, employee_payroll_run, amount, type, remote_was_deleted, field_mappings, remote_data].hash
151
192
  end
152
193
 
153
194
  # Builds the object from hash
@@ -20,18 +20,28 @@ module MergeHRISClient
20
20
  OVERTIME = "OVERTIME".freeze
21
21
  BONUS = "BONUS".freeze
22
22
 
23
- # Builds the enum from string
24
- # @param [String] The enum value in the form of the string
25
- # @return [String] The enum value
26
- def self.build_from_hash(value)
27
- new.build_from_hash(value)
28
- end
23
+ MERGE_NONSTANDARD_VALUE = "MERGE_NONSTANDARD_VALUE".freeze
24
+
25
+ attr_accessor :value
26
+ attr_accessor :raw_value
29
27
 
30
28
  # Builds the enum from string
31
29
  # @param [String] The enum value in the form of the string
32
30
  # @return [String] The enum value
33
31
  def build_from_hash(value)
34
- value
32
+ @raw_value = value
33
+ if ["SALARY", "REIMBURSEMENT", "OVERTIME", "BONUS", ].include? value
34
+ @value = value
35
+ else
36
+ @value = MERGE_NONSTANDARD_VALUE
37
+ end
38
+
39
+ self
40
+ end
41
+
42
+ def self.build_from_hash(value)
43
+ EarningTypeEnum.new.build_from_hash(value)
35
44
  end
36
45
  end
46
+
37
47
  end