xero-ruby 2.1.2 → 2.3.1

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 (873) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +113 -56
  3. data/lib/xero-ruby.rb +283 -1
  4. data/lib/xero-ruby/api/accounting_api.rb +1343 -479
  5. data/lib/xero-ruby/api/asset_api.rb +25 -21
  6. data/lib/xero-ruby/api/files_api.rb +1271 -0
  7. data/lib/xero-ruby/api/payroll_au_api.rb +2254 -0
  8. data/lib/xero-ruby/api/payroll_nz_api.rb +5261 -0
  9. data/lib/xero-ruby/api/payroll_uk_api.rb +5404 -0
  10. data/lib/xero-ruby/api/project_api.rb +40 -29
  11. data/lib/xero-ruby/api_client.rb +74 -31
  12. data/lib/xero-ruby/api_error.rb +1 -1
  13. data/lib/xero-ruby/configuration.rb +9 -1
  14. data/lib/xero-ruby/models/accounting/account.rb +2 -3
  15. data/lib/xero-ruby/models/accounting/account_type.rb +1 -1
  16. data/lib/xero-ruby/models/accounting/accounts.rb +2 -2
  17. data/lib/xero-ruby/models/accounting/accounts_payable.rb +2 -2
  18. data/lib/xero-ruby/models/accounting/accounts_receivable.rb +2 -2
  19. data/lib/xero-ruby/models/accounting/action.rb +254 -0
  20. data/lib/xero-ruby/models/accounting/actions.rb +210 -0
  21. data/lib/xero-ruby/models/accounting/address.rb +2 -2
  22. data/lib/xero-ruby/models/accounting/allocation.rb +2 -2
  23. data/lib/xero-ruby/models/accounting/allocations.rb +2 -2
  24. data/lib/xero-ruby/models/accounting/attachment.rb +2 -2
  25. data/lib/xero-ruby/models/accounting/attachments.rb +2 -2
  26. data/lib/xero-ruby/models/accounting/balances.rb +2 -2
  27. data/lib/xero-ruby/models/accounting/bank_transaction.rb +2 -2
  28. data/lib/xero-ruby/models/accounting/bank_transactions.rb +2 -2
  29. data/lib/xero-ruby/models/accounting/bank_transfer.rb +2 -2
  30. data/lib/xero-ruby/models/accounting/bank_transfers.rb +2 -2
  31. data/lib/xero-ruby/models/accounting/batch_payment.rb +2 -2
  32. data/lib/xero-ruby/models/accounting/batch_payment_details.rb +2 -17
  33. data/lib/xero-ruby/models/accounting/batch_payments.rb +2 -2
  34. data/lib/xero-ruby/models/accounting/bill.rb +2 -2
  35. data/lib/xero-ruby/models/accounting/branding_theme.rb +2 -2
  36. data/lib/xero-ruby/models/accounting/branding_themes.rb +2 -2
  37. data/lib/xero-ruby/models/accounting/cis_org_setting.rb +2 -2
  38. data/lib/xero-ruby/models/accounting/cis_setting.rb +2 -2
  39. data/lib/xero-ruby/models/accounting/cis_settings.rb +2 -2
  40. data/lib/xero-ruby/models/accounting/contact.rb +2 -2
  41. data/lib/xero-ruby/models/accounting/contact_group.rb +2 -2
  42. data/lib/xero-ruby/models/accounting/contact_groups.rb +2 -2
  43. data/lib/xero-ruby/models/accounting/contact_person.rb +2 -2
  44. data/lib/xero-ruby/models/accounting/contacts.rb +2 -2
  45. data/lib/xero-ruby/models/accounting/country_code.rb +1 -1
  46. data/lib/xero-ruby/models/accounting/credit_note.rb +2 -2
  47. data/lib/xero-ruby/models/accounting/credit_notes.rb +2 -2
  48. data/lib/xero-ruby/models/accounting/currencies.rb +2 -2
  49. data/lib/xero-ruby/models/accounting/currency.rb +2 -2
  50. data/lib/xero-ruby/models/accounting/currency_code.rb +5 -3
  51. data/lib/xero-ruby/models/accounting/element.rb +2 -2
  52. data/lib/xero-ruby/models/accounting/employee.rb +2 -2
  53. data/lib/xero-ruby/models/accounting/employees.rb +2 -2
  54. data/lib/xero-ruby/models/accounting/error.rb +2 -2
  55. data/lib/xero-ruby/models/accounting/expense_claim.rb +3 -3
  56. data/lib/xero-ruby/models/accounting/expense_claims.rb +2 -2
  57. data/lib/xero-ruby/models/accounting/external_link.rb +2 -2
  58. data/lib/xero-ruby/models/accounting/history_record.rb +2 -2
  59. data/lib/xero-ruby/models/accounting/history_records.rb +2 -2
  60. data/lib/xero-ruby/models/accounting/invoice.rb +13 -3
  61. data/lib/xero-ruby/models/accounting/invoice_reminder.rb +2 -2
  62. data/lib/xero-ruby/models/accounting/invoice_reminders.rb +2 -2
  63. data/lib/xero-ruby/models/accounting/invoices.rb +2 -2
  64. data/lib/xero-ruby/models/accounting/item.rb +2 -2
  65. data/lib/xero-ruby/models/accounting/items.rb +2 -2
  66. data/lib/xero-ruby/models/accounting/journal.rb +2 -2
  67. data/lib/xero-ruby/models/accounting/journal_line.rb +2 -2
  68. data/lib/xero-ruby/models/accounting/journals.rb +2 -2
  69. data/lib/xero-ruby/models/accounting/line_amount_types.rb +1 -1
  70. data/lib/xero-ruby/models/accounting/line_item.rb +2 -2
  71. data/lib/xero-ruby/models/accounting/line_item_tracking.rb +2 -2
  72. data/lib/xero-ruby/models/accounting/linked_transaction.rb +2 -2
  73. data/lib/xero-ruby/models/accounting/linked_transactions.rb +2 -2
  74. data/lib/xero-ruby/models/accounting/manual_journal.rb +2 -2
  75. data/lib/xero-ruby/models/accounting/manual_journal_line.rb +2 -2
  76. data/lib/xero-ruby/models/accounting/manual_journals.rb +2 -2
  77. data/lib/xero-ruby/models/accounting/online_invoice.rb +2 -2
  78. data/lib/xero-ruby/models/accounting/online_invoices.rb +2 -2
  79. data/lib/xero-ruby/models/accounting/organisation.rb +2 -4
  80. data/lib/xero-ruby/models/accounting/organisations.rb +2 -2
  81. data/lib/xero-ruby/models/accounting/overpayment.rb +2 -2
  82. data/lib/xero-ruby/models/accounting/overpayments.rb +2 -2
  83. data/lib/xero-ruby/models/accounting/payment.rb +2 -2
  84. data/lib/xero-ruby/models/accounting/payment_delete.rb +2 -2
  85. data/lib/xero-ruby/models/accounting/payment_service.rb +2 -2
  86. data/lib/xero-ruby/models/accounting/payment_services.rb +2 -2
  87. data/lib/xero-ruby/models/accounting/payment_term.rb +2 -2
  88. data/lib/xero-ruby/models/accounting/payment_term_type.rb +1 -1
  89. data/lib/xero-ruby/models/accounting/payments.rb +2 -2
  90. data/lib/xero-ruby/models/accounting/phone.rb +2 -2
  91. data/lib/xero-ruby/models/accounting/prepayment.rb +2 -2
  92. data/lib/xero-ruby/models/accounting/prepayments.rb +2 -2
  93. data/lib/xero-ruby/models/accounting/purchase.rb +2 -2
  94. data/lib/xero-ruby/models/accounting/purchase_order.rb +2 -2
  95. data/lib/xero-ruby/models/accounting/purchase_orders.rb +2 -2
  96. data/lib/xero-ruby/models/accounting/quote.rb +2 -2
  97. data/lib/xero-ruby/models/accounting/quote_line_amount_types.rb +1 -1
  98. data/lib/xero-ruby/models/accounting/quote_status_codes.rb +1 -1
  99. data/lib/xero-ruby/models/accounting/quotes.rb +2 -2
  100. data/lib/xero-ruby/models/accounting/receipt.rb +2 -2
  101. data/lib/xero-ruby/models/accounting/receipts.rb +2 -2
  102. data/lib/xero-ruby/models/accounting/repeating_invoice.rb +2 -2
  103. data/lib/xero-ruby/models/accounting/repeating_invoices.rb +2 -2
  104. data/lib/xero-ruby/models/accounting/report.rb +2 -2
  105. data/lib/xero-ruby/models/accounting/report_attribute.rb +2 -2
  106. data/lib/xero-ruby/models/accounting/report_cell.rb +2 -2
  107. data/lib/xero-ruby/models/accounting/report_fields.rb +2 -2
  108. data/lib/xero-ruby/models/accounting/report_row.rb +2 -2
  109. data/lib/xero-ruby/models/accounting/report_rows.rb +2 -2
  110. data/lib/xero-ruby/models/accounting/report_with_row.rb +2 -2
  111. data/lib/xero-ruby/models/accounting/report_with_rows.rb +2 -2
  112. data/lib/xero-ruby/models/accounting/reports.rb +2 -2
  113. data/lib/xero-ruby/models/accounting/request_empty.rb +2 -2
  114. data/lib/xero-ruby/models/accounting/row_type.rb +1 -1
  115. data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +2 -2
  116. data/lib/xero-ruby/models/accounting/schedule.rb +2 -2
  117. data/lib/xero-ruby/models/accounting/tax_component.rb +2 -2
  118. data/lib/xero-ruby/models/accounting/tax_rate.rb +2 -2
  119. data/lib/xero-ruby/models/accounting/tax_rates.rb +2 -2
  120. data/lib/xero-ruby/models/accounting/tax_type.rb +1 -1
  121. data/lib/xero-ruby/models/accounting/ten_ninety_nine_contact.rb +2 -2
  122. data/lib/xero-ruby/models/accounting/time_zone.rb +2 -1
  123. data/lib/xero-ruby/models/accounting/tracking_categories.rb +2 -2
  124. data/lib/xero-ruby/models/accounting/tracking_category.rb +2 -2
  125. data/lib/xero-ruby/models/accounting/tracking_option.rb +10 -10
  126. data/lib/xero-ruby/models/accounting/tracking_options.rb +2 -2
  127. data/lib/xero-ruby/models/accounting/user.rb +2 -2
  128. data/lib/xero-ruby/models/accounting/users.rb +2 -2
  129. data/lib/xero-ruby/models/accounting/validation_error.rb +2 -2
  130. data/lib/xero-ruby/models/assets/asset.rb +2 -2
  131. data/lib/xero-ruby/models/assets/asset_status.rb +1 -1
  132. data/lib/xero-ruby/models/assets/asset_status_query_param.rb +1 -1
  133. data/lib/xero-ruby/models/assets/asset_type.rb +2 -2
  134. data/lib/xero-ruby/models/assets/assets.rb +2 -2
  135. data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +2 -2
  136. data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +2 -2
  137. data/lib/xero-ruby/models/assets/error.rb +2 -2
  138. data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +2 -2
  139. data/lib/xero-ruby/models/assets/pagination.rb +2 -2
  140. data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +2 -2
  141. data/lib/xero-ruby/models/assets/setting.rb +2 -2
  142. data/lib/xero-ruby/models/files/association.rb +238 -0
  143. data/lib/xero-ruby/models/files/file_object.rb +278 -0
  144. data/lib/xero-ruby/models/files/file_response204.rb +208 -0
  145. data/lib/xero-ruby/models/files/files.rb +240 -0
  146. data/lib/xero-ruby/models/files/folder.rb +248 -0
  147. data/lib/xero-ruby/models/files/folders.rb +210 -0
  148. data/lib/xero-ruby/models/files/inline_object.rb +238 -0
  149. data/lib/xero-ruby/models/files/object_group.rb +46 -0
  150. data/lib/xero-ruby/models/files/object_type.rb +68 -0
  151. data/lib/xero-ruby/models/files/user.rb +318 -0
  152. data/lib/xero-ruby/models/payroll_au/account.rb +238 -0
  153. data/lib/xero-ruby/models/payroll_au/account_type.rb +58 -0
  154. data/lib/xero-ruby/models/payroll_au/allowance_type.rb +42 -0
  155. data/lib/xero-ruby/models/payroll_au/api_exception.rb +229 -0
  156. data/lib/xero-ruby/models/payroll_au/bank_account.rb +258 -0
  157. data/lib/xero-ruby/models/payroll_au/calendar_type.rb +41 -0
  158. data/lib/xero-ruby/models/payroll_au/deduction_line.rb +258 -0
  159. data/lib/xero-ruby/models/payroll_au/deduction_type.rb +340 -0
  160. data/lib/xero-ruby/models/payroll_au/deduction_type_calculation_type.rb +38 -0
  161. data/lib/xero-ruby/models/payroll_au/earnings_line.rb +293 -0
  162. data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +398 -0
  163. data/lib/xero-ruby/models/payroll_au/earnings_rate_calculation_type.rb +38 -0
  164. data/lib/xero-ruby/models/payroll_au/earnings_type.rb +44 -0
  165. data/lib/xero-ruby/models/payroll_au/employee.rb +571 -0
  166. data/lib/xero-ruby/models/payroll_au/employee_status.rb +37 -0
  167. data/lib/xero-ruby/models/payroll_au/employees.rb +210 -0
  168. data/lib/xero-ruby/models/payroll_au/employment_basis.rb +40 -0
  169. data/lib/xero-ruby/models/payroll_au/employment_termination_payment_type.rb +37 -0
  170. data/lib/xero-ruby/models/payroll_au/entitlement_final_pay_payout_type.rb +37 -0
  171. data/lib/xero-ruby/models/payroll_au/home_address.rb +263 -0
  172. data/lib/xero-ruby/models/payroll_au/leave_accrual_line.rb +228 -0
  173. data/lib/xero-ruby/models/payroll_au/leave_application.rb +302 -0
  174. data/lib/xero-ruby/models/payroll_au/leave_applications.rb +210 -0
  175. data/lib/xero-ruby/models/payroll_au/leave_balance.rb +238 -0
  176. data/lib/xero-ruby/models/payroll_au/leave_earnings_line.rb +228 -0
  177. data/lib/xero-ruby/models/payroll_au/leave_line.rb +278 -0
  178. data/lib/xero-ruby/models/payroll_au/leave_line_calculation_type.rb +40 -0
  179. data/lib/xero-ruby/models/payroll_au/leave_lines.rb +211 -0
  180. data/lib/xero-ruby/models/payroll_au/leave_period.rb +238 -0
  181. data/lib/xero-ruby/models/payroll_au/leave_period_status.rb +37 -0
  182. data/lib/xero-ruby/models/payroll_au/leave_type.rb +303 -0
  183. data/lib/xero-ruby/models/payroll_au/leave_type_contribution_type.rb +39 -0
  184. data/lib/xero-ruby/models/payroll_au/manual_tax_type.rb +40 -0
  185. data/lib/xero-ruby/models/payroll_au/opening_balances.rb +278 -0
  186. data/lib/xero-ruby/models/payroll_au/pay_item.rb +246 -0
  187. data/lib/xero-ruby/models/payroll_au/pay_items.rb +208 -0
  188. data/lib/xero-ruby/models/payroll_au/pay_run.rb +367 -0
  189. data/lib/xero-ruby/models/payroll_au/pay_run_status.rb +37 -0
  190. data/lib/xero-ruby/models/payroll_au/pay_runs.rb +210 -0
  191. data/lib/xero-ruby/models/payroll_au/pay_template.rb +258 -0
  192. data/lib/xero-ruby/models/payroll_au/payment_frequency_type.rb +42 -0
  193. data/lib/xero-ruby/models/payroll_au/payroll_calendar.rb +270 -0
  194. data/lib/xero-ruby/models/payroll_au/payroll_calendars.rb +210 -0
  195. data/lib/xero-ruby/models/payroll_au/payslip.rb +404 -0
  196. data/lib/xero-ruby/models/payroll_au/payslip_lines.rb +294 -0
  197. data/lib/xero-ruby/models/payroll_au/payslip_object.rb +208 -0
  198. data/lib/xero-ruby/models/payroll_au/payslip_summary.rb +318 -0
  199. data/lib/xero-ruby/models/payroll_au/payslips.rb +210 -0
  200. data/lib/xero-ruby/models/payroll_au/rate_type.rb +38 -0
  201. data/lib/xero-ruby/models/payroll_au/reimbursement_line.rb +253 -0
  202. data/lib/xero-ruby/models/payroll_au/reimbursement_lines.rb +211 -0
  203. data/lib/xero-ruby/models/payroll_au/reimbursement_type.rb +263 -0
  204. data/lib/xero-ruby/models/payroll_au/residency_status.rb +38 -0
  205. data/lib/xero-ruby/models/payroll_au/settings.rb +230 -0
  206. data/lib/xero-ruby/models/payroll_au/settings_object.rb +208 -0
  207. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories.rb +219 -0
  208. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_employee_groups.rb +219 -0
  209. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_timesheet_categories.rb +219 -0
  210. data/lib/xero-ruby/models/payroll_au/state.rb +43 -0
  211. data/lib/xero-ruby/models/payroll_au/super_fund.rb +335 -0
  212. data/lib/xero-ruby/models/payroll_au/super_fund_product.rb +238 -0
  213. data/lib/xero-ruby/models/payroll_au/super_fund_products.rb +210 -0
  214. data/lib/xero-ruby/models/payroll_au/super_fund_type.rb +37 -0
  215. data/lib/xero-ruby/models/payroll_au/super_funds.rb +210 -0
  216. data/lib/xero-ruby/models/payroll_au/super_line.rb +278 -0
  217. data/lib/xero-ruby/models/payroll_au/super_membership.rb +238 -0
  218. data/lib/xero-ruby/models/payroll_au/superannuation_calculation_type.rb +38 -0
  219. data/lib/xero-ruby/models/payroll_au/superannuation_contribution_type.rb +39 -0
  220. data/lib/xero-ruby/models/payroll_au/superannuation_line.rb +288 -0
  221. data/lib/xero-ruby/models/payroll_au/tax_declaration.rb +358 -0
  222. data/lib/xero-ruby/models/payroll_au/tax_line.rb +258 -0
  223. data/lib/xero-ruby/models/payroll_au/tfn_exemption_type.rb +39 -0
  224. data/lib/xero-ruby/models/payroll_au/timesheet.rb +307 -0
  225. data/lib/xero-ruby/models/payroll_au/timesheet_line.rb +240 -0
  226. data/lib/xero-ruby/models/payroll_au/timesheet_object.rb +208 -0
  227. data/lib/xero-ruby/models/payroll_au/timesheet_status.rb +40 -0
  228. data/lib/xero-ruby/models/payroll_au/timesheets.rb +210 -0
  229. data/lib/xero-ruby/models/payroll_au/validation_error.rb +208 -0
  230. data/lib/xero-ruby/models/payroll_nz/account.rb +276 -0
  231. data/lib/xero-ruby/models/payroll_nz/accounts.rb +210 -0
  232. data/lib/xero-ruby/models/payroll_nz/address.rb +273 -0
  233. data/lib/xero-ruby/models/payroll_nz/bank_account.rb +329 -0
  234. data/lib/xero-ruby/models/payroll_nz/benefit.rb +369 -0
  235. data/lib/xero-ruby/models/payroll_nz/deduction.rb +311 -0
  236. data/lib/xero-ruby/models/payroll_nz/deduction_line.rb +248 -0
  237. data/lib/xero-ruby/models/payroll_nz/deduction_object.rb +228 -0
  238. data/lib/xero-ruby/models/payroll_nz/deductions.rb +230 -0
  239. data/lib/xero-ruby/models/payroll_nz/earnings_line.rb +298 -0
  240. data/lib/xero-ruby/models/payroll_nz/earnings_order.rb +255 -0
  241. data/lib/xero-ruby/models/payroll_nz/earnings_order_object.rb +228 -0
  242. data/lib/xero-ruby/models/payroll_nz/earnings_orders.rb +230 -0
  243. data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +382 -0
  244. data/lib/xero-ruby/models/payroll_nz/earnings_rate_object.rb +228 -0
  245. data/lib/xero-ruby/models/payroll_nz/earnings_rates.rb +230 -0
  246. data/lib/xero-ruby/models/payroll_nz/earnings_template.rb +258 -0
  247. data/lib/xero-ruby/models/payroll_nz/earnings_template_object.rb +228 -0
  248. data/lib/xero-ruby/models/payroll_nz/employee.rb +374 -0
  249. data/lib/xero-ruby/models/payroll_nz/employee_earnings_templates.rb +230 -0
  250. data/lib/xero-ruby/models/payroll_nz/employee_leave.rb +290 -0
  251. data/lib/xero-ruby/models/payroll_nz/employee_leave_balance.rb +238 -0
  252. data/lib/xero-ruby/models/payroll_nz/employee_leave_balances.rb +230 -0
  253. data/lib/xero-ruby/models/payroll_nz/employee_leave_object.rb +228 -0
  254. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup.rb +268 -0
  255. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup_object.rb +228 -0
  256. data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +336 -0
  257. data/lib/xero-ruby/models/payroll_nz/employee_leave_type_object.rb +228 -0
  258. data/lib/xero-ruby/models/payroll_nz/employee_leave_types.rb +230 -0
  259. data/lib/xero-ruby/models/payroll_nz/employee_leaves.rb +230 -0
  260. data/lib/xero-ruby/models/payroll_nz/employee_object.rb +228 -0
  261. data/lib/xero-ruby/models/payroll_nz/employee_opening_balance.rb +238 -0
  262. data/lib/xero-ruby/models/payroll_nz/employee_opening_balances_object.rb +230 -0
  263. data/lib/xero-ruby/models/payroll_nz/employee_pay_template.rb +220 -0
  264. data/lib/xero-ruby/models/payroll_nz/employee_pay_template_object.rb +228 -0
  265. data/lib/xero-ruby/models/payroll_nz/employee_pay_templates.rb +228 -0
  266. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +280 -0
  267. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance_object.rb +228 -0
  268. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +322 -0
  269. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leaves_summaries.rb +230 -0
  270. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave.rb +419 -0
  271. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave_object.rb +228 -0
  272. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leaves.rb +230 -0
  273. data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +397 -0
  274. data/lib/xero-ruby/models/payroll_nz/employee_tax_object.rb +228 -0
  275. data/lib/xero-ruby/models/payroll_nz/employees.rb +230 -0
  276. data/lib/xero-ruby/models/payroll_nz/employment.rb +228 -0
  277. data/lib/xero-ruby/models/payroll_nz/employment_object.rb +228 -0
  278. data/lib/xero-ruby/models/payroll_nz/gross_earnings_history.rb +218 -0
  279. data/lib/xero-ruby/models/payroll_nz/invalid_field.rb +218 -0
  280. data/lib/xero-ruby/models/payroll_nz/leave_accrual_line.rb +218 -0
  281. data/lib/xero-ruby/models/payroll_nz/leave_earnings_line.rb +298 -0
  282. data/lib/xero-ruby/models/payroll_nz/leave_period.rb +274 -0
  283. data/lib/xero-ruby/models/payroll_nz/leave_periods.rb +230 -0
  284. data/lib/xero-ruby/models/payroll_nz/leave_type.rb +273 -0
  285. data/lib/xero-ruby/models/payroll_nz/leave_type_object.rb +228 -0
  286. data/lib/xero-ruby/models/payroll_nz/leave_types.rb +230 -0
  287. data/lib/xero-ruby/models/payroll_nz/pagination.rb +238 -0
  288. data/lib/xero-ruby/models/payroll_nz/pay_run.rb +389 -0
  289. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar.rb +328 -0
  290. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar_object.rb +228 -0
  291. data/lib/xero-ruby/models/payroll_nz/pay_run_calendars.rb +230 -0
  292. data/lib/xero-ruby/models/payroll_nz/pay_run_object.rb +228 -0
  293. data/lib/xero-ruby/models/payroll_nz/pay_runs.rb +230 -0
  294. data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +557 -0
  295. data/lib/xero-ruby/models/payroll_nz/pay_slip_object.rb +228 -0
  296. data/lib/xero-ruby/models/payroll_nz/pay_slips.rb +230 -0
  297. data/lib/xero-ruby/models/payroll_nz/payment_line.rb +248 -0
  298. data/lib/xero-ruby/models/payroll_nz/payment_method.rb +262 -0
  299. data/lib/xero-ruby/models/payroll_nz/payment_method_object.rb +228 -0
  300. data/lib/xero-ruby/models/payroll_nz/problem.rb +261 -0
  301. data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +364 -0
  302. data/lib/xero-ruby/models/payroll_nz/reimbursement_line.rb +248 -0
  303. data/lib/xero-ruby/models/payroll_nz/reimbursement_object.rb +228 -0
  304. data/lib/xero-ruby/models/payroll_nz/reimbursements.rb +230 -0
  305. data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +388 -0
  306. data/lib/xero-ruby/models/payroll_nz/salary_and_wage_object.rb +228 -0
  307. data/lib/xero-ruby/models/payroll_nz/salary_and_wages.rb +230 -0
  308. data/lib/xero-ruby/models/payroll_nz/settings.rb +228 -0
  309. data/lib/xero-ruby/models/payroll_nz/statutory_deduction.rb +248 -0
  310. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_category.rb +46 -0
  311. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_line.rb +238 -0
  312. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_object.rb +228 -0
  313. data/lib/xero-ruby/models/payroll_nz/statutory_deductions.rb +230 -0
  314. data/lib/xero-ruby/models/payroll_nz/superannuation_line.rb +258 -0
  315. data/lib/xero-ruby/models/payroll_nz/superannuation_object.rb +228 -0
  316. data/lib/xero-ruby/models/payroll_nz/superannuations.rb +230 -0
  317. data/lib/xero-ruby/models/payroll_nz/tax_code.rb +54 -0
  318. data/lib/xero-ruby/models/payroll_nz/tax_line.rb +248 -0
  319. data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +294 -0
  320. data/lib/xero-ruby/models/payroll_nz/timesheet.rb +347 -0
  321. data/lib/xero-ruby/models/payroll_nz/timesheet_earnings_line.rb +298 -0
  322. data/lib/xero-ruby/models/payroll_nz/timesheet_line.rb +263 -0
  323. data/lib/xero-ruby/models/payroll_nz/timesheet_line_object.rb +228 -0
  324. data/lib/xero-ruby/models/payroll_nz/timesheet_object.rb +228 -0
  325. data/lib/xero-ruby/models/payroll_nz/timesheets.rb +230 -0
  326. data/lib/xero-ruby/models/payroll_nz/tracking_categories.rb +228 -0
  327. data/lib/xero-ruby/models/payroll_nz/tracking_category.rb +218 -0
  328. data/lib/xero-ruby/models/payroll_uk/account.rb +279 -0
  329. data/lib/xero-ruby/models/payroll_uk/accounts.rb +210 -0
  330. data/lib/xero-ruby/models/payroll_uk/address.rb +263 -0
  331. data/lib/xero-ruby/models/payroll_uk/bank_account.rb +243 -0
  332. data/lib/xero-ruby/models/payroll_uk/benefit.rb +418 -0
  333. data/lib/xero-ruby/models/payroll_uk/benefit_line.rb +248 -0
  334. data/lib/xero-ruby/models/payroll_uk/benefit_object.rb +228 -0
  335. data/lib/xero-ruby/models/payroll_uk/benefits.rb +230 -0
  336. data/lib/xero-ruby/models/payroll_uk/court_order_line.rb +218 -0
  337. data/lib/xero-ruby/models/payroll_uk/deduction.rb +426 -0
  338. data/lib/xero-ruby/models/payroll_uk/deduction_line.rb +238 -0
  339. data/lib/xero-ruby/models/payroll_uk/deduction_object.rb +228 -0
  340. data/lib/xero-ruby/models/payroll_uk/deductions.rb +230 -0
  341. data/lib/xero-ruby/models/payroll_uk/earnings_line.rb +288 -0
  342. data/lib/xero-ruby/models/payroll_uk/earnings_order.rb +255 -0
  343. data/lib/xero-ruby/models/payroll_uk/earnings_order_object.rb +228 -0
  344. data/lib/xero-ruby/models/payroll_uk/earnings_orders.rb +230 -0
  345. data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +387 -0
  346. data/lib/xero-ruby/models/payroll_uk/earnings_rate_object.rb +228 -0
  347. data/lib/xero-ruby/models/payroll_uk/earnings_rates.rb +230 -0
  348. data/lib/xero-ruby/models/payroll_uk/earnings_template.rb +258 -0
  349. data/lib/xero-ruby/models/payroll_uk/earnings_template_object.rb +228 -0
  350. data/lib/xero-ruby/models/payroll_uk/employee.rb +384 -0
  351. data/lib/xero-ruby/models/payroll_uk/employee_leave.rb +290 -0
  352. data/lib/xero-ruby/models/payroll_uk/employee_leave_balance.rb +238 -0
  353. data/lib/xero-ruby/models/payroll_uk/employee_leave_balances.rb +230 -0
  354. data/lib/xero-ruby/models/payroll_uk/employee_leave_object.rb +228 -0
  355. data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +306 -0
  356. data/lib/xero-ruby/models/payroll_uk/employee_leave_type_object.rb +228 -0
  357. data/lib/xero-ruby/models/payroll_uk/employee_leave_types.rb +230 -0
  358. data/lib/xero-ruby/models/payroll_uk/employee_leaves.rb +230 -0
  359. data/lib/xero-ruby/models/payroll_uk/employee_object.rb +228 -0
  360. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances.rb +258 -0
  361. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances_object.rb +228 -0
  362. data/lib/xero-ruby/models/payroll_uk/employee_pay_template.rb +220 -0
  363. data/lib/xero-ruby/models/payroll_uk/employee_pay_template_object.rb +228 -0
  364. data/lib/xero-ruby/models/payroll_uk/employee_pay_templates.rb +230 -0
  365. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +280 -0
  366. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance_object.rb +228 -0
  367. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +322 -0
  368. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leaves_summaries.rb +230 -0
  369. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave.rb +419 -0
  370. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave_object.rb +228 -0
  371. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leaves.rb +230 -0
  372. data/lib/xero-ruby/models/payroll_uk/employee_tax.rb +308 -0
  373. data/lib/xero-ruby/models/payroll_uk/employee_tax_object.rb +228 -0
  374. data/lib/xero-ruby/models/payroll_uk/employees.rb +230 -0
  375. data/lib/xero-ruby/models/payroll_uk/employment.rb +280 -0
  376. data/lib/xero-ruby/models/payroll_uk/employment_object.rb +228 -0
  377. data/lib/xero-ruby/models/payroll_uk/invalid_field.rb +218 -0
  378. data/lib/xero-ruby/models/payroll_uk/leave_accrual_line.rb +218 -0
  379. data/lib/xero-ruby/models/payroll_uk/leave_earnings_line.rb +258 -0
  380. data/lib/xero-ruby/models/payroll_uk/leave_period.rb +274 -0
  381. data/lib/xero-ruby/models/payroll_uk/leave_periods.rb +230 -0
  382. data/lib/xero-ruby/models/payroll_uk/leave_type.rb +293 -0
  383. data/lib/xero-ruby/models/payroll_uk/leave_type_object.rb +228 -0
  384. data/lib/xero-ruby/models/payroll_uk/leave_types.rb +230 -0
  385. data/lib/xero-ruby/models/payroll_uk/pagination.rb +238 -0
  386. data/lib/xero-ruby/models/payroll_uk/pay_run.rb +389 -0
  387. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +328 -0
  388. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar_object.rb +228 -0
  389. data/lib/xero-ruby/models/payroll_uk/pay_run_calendars.rb +230 -0
  390. data/lib/xero-ruby/models/payroll_uk/pay_run_object.rb +228 -0
  391. data/lib/xero-ruby/models/payroll_uk/pay_runs.rb +230 -0
  392. data/lib/xero-ruby/models/payroll_uk/payment_line.rb +248 -0
  393. data/lib/xero-ruby/models/payroll_uk/payment_method.rb +262 -0
  394. data/lib/xero-ruby/models/payroll_uk/payment_method_object.rb +228 -0
  395. data/lib/xero-ruby/models/payroll_uk/payslip.rb +525 -0
  396. data/lib/xero-ruby/models/payroll_uk/payslip_object.rb +228 -0
  397. data/lib/xero-ruby/models/payroll_uk/payslips.rb +230 -0
  398. data/lib/xero-ruby/models/payroll_uk/problem.rb +261 -0
  399. data/lib/xero-ruby/models/payroll_uk/reimbursement.rb +248 -0
  400. data/lib/xero-ruby/models/payroll_uk/reimbursement_line.rb +228 -0
  401. data/lib/xero-ruby/models/payroll_uk/reimbursement_object.rb +228 -0
  402. data/lib/xero-ruby/models/payroll_uk/reimbursements.rb +230 -0
  403. data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +368 -0
  404. data/lib/xero-ruby/models/payroll_uk/salary_and_wage_object.rb +228 -0
  405. data/lib/xero-ruby/models/payroll_uk/salary_and_wages.rb +230 -0
  406. data/lib/xero-ruby/models/payroll_uk/settings.rb +228 -0
  407. data/lib/xero-ruby/models/payroll_uk/statutory_deduction.rb +248 -0
  408. data/lib/xero-ruby/models/payroll_uk/statutory_deduction_category.rb +49 -0
  409. data/lib/xero-ruby/models/payroll_uk/tax_line.rb +258 -0
  410. data/lib/xero-ruby/models/payroll_uk/timesheet.rb +347 -0
  411. data/lib/xero-ruby/models/payroll_uk/timesheet_earnings_line.rb +258 -0
  412. data/lib/xero-ruby/models/payroll_uk/timesheet_line.rb +263 -0
  413. data/lib/xero-ruby/models/payroll_uk/timesheet_line_object.rb +228 -0
  414. data/lib/xero-ruby/models/payroll_uk/timesheet_object.rb +228 -0
  415. data/lib/xero-ruby/models/payroll_uk/timesheets.rb +230 -0
  416. data/lib/xero-ruby/models/payroll_uk/tracking_categories.rb +228 -0
  417. data/lib/xero-ruby/models/payroll_uk/tracking_category.rb +218 -0
  418. data/lib/xero-ruby/models/projects/amount.rb +2 -2
  419. data/lib/xero-ruby/models/projects/charge_type.rb +1 -1
  420. data/lib/xero-ruby/models/projects/currency_code.rb +1 -1
  421. data/lib/xero-ruby/models/projects/error.rb +2 -2
  422. data/lib/xero-ruby/models/projects/pagination.rb +2 -2
  423. data/lib/xero-ruby/models/projects/project.rb +2 -2
  424. data/lib/xero-ruby/models/projects/project_create_or_update.rb +2 -2
  425. data/lib/xero-ruby/models/projects/project_patch.rb +2 -2
  426. data/lib/xero-ruby/models/projects/project_status.rb +1 -1
  427. data/lib/xero-ruby/models/projects/project_user.rb +2 -2
  428. data/lib/xero-ruby/models/projects/project_users.rb +2 -2
  429. data/lib/xero-ruby/models/projects/projects.rb +2 -2
  430. data/lib/xero-ruby/models/projects/task.rb +2 -2
  431. data/lib/xero-ruby/models/projects/task_create_or_update.rb +2 -2
  432. data/lib/xero-ruby/models/projects/tasks.rb +2 -2
  433. data/lib/xero-ruby/models/projects/time_entries.rb +2 -2
  434. data/lib/xero-ruby/models/projects/time_entry.rb +2 -2
  435. data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +2 -2
  436. data/lib/xero-ruby/version.rb +2 -2
  437. data/spec/api_client_spec.rb +3 -3
  438. data/spec/files/api/files_api_spec.rb +249 -0
  439. data/spec/files/models/association_spec.rb +59 -0
  440. data/spec/files/models/file_object_spec.rb +83 -0
  441. data/spec/files/models/file_response204_spec.rb +41 -0
  442. data/spec/files/models/files_spec.rb +59 -0
  443. data/spec/files/models/folder_spec.rb +65 -0
  444. data/spec/files/models/folders_spec.rb +41 -0
  445. data/spec/files/models/inline_object_spec.rb +59 -0
  446. data/spec/files/models/object_group_spec.rb +35 -0
  447. data/spec/files/models/object_type_spec.rb +35 -0
  448. data/spec/files/models/user_spec.rb +81 -0
  449. data/spec/payroll_au/api/payroll_au_api_spec.rb +415 -0
  450. data/spec/payroll_au/models/account_spec.rb +59 -0
  451. data/spec/payroll_au/models/account_type_spec.rb +35 -0
  452. data/spec/payroll_au/models/allowance_type_spec.rb +35 -0
  453. data/spec/payroll_au/models/api_exception_spec.rb +53 -0
  454. data/spec/payroll_au/models/bank_account_spec.rb +71 -0
  455. data/spec/payroll_au/models/calendar_type_spec.rb +35 -0
  456. data/spec/payroll_au/models/deduction_line_spec.rb +65 -0
  457. data/spec/payroll_au/models/deduction_type_calculation_type_spec.rb +35 -0
  458. data/spec/payroll_au/models/deduction_type_spec.rb +93 -0
  459. data/spec/payroll_au/models/earnings_line_spec.rb +89 -0
  460. data/spec/payroll_au/models/earnings_rate_calculation_type_spec.rb +35 -0
  461. data/spec/payroll_au/models/earnings_rate_spec.rb +137 -0
  462. data/spec/payroll_au/models/earnings_type_spec.rb +35 -0
  463. data/spec/payroll_au/models/employee_spec.rb +225 -0
  464. data/spec/payroll_au/models/employee_status_spec.rb +35 -0
  465. data/spec/payroll_au/models/employees_spec.rb +41 -0
  466. data/spec/payroll_au/models/employment_basis_spec.rb +35 -0
  467. data/spec/payroll_au/models/employment_termination_payment_type_spec.rb +35 -0
  468. data/spec/payroll_au/models/entitlement_final_pay_payout_type_spec.rb +35 -0
  469. data/spec/payroll_au/models/home_address_spec.rb +71 -0
  470. data/spec/payroll_au/models/leave_accrual_line_spec.rb +53 -0
  471. data/spec/payroll_au/models/leave_application_spec.rb +95 -0
  472. data/spec/payroll_au/models/leave_applications_spec.rb +41 -0
  473. data/spec/payroll_au/models/leave_balance_spec.rb +59 -0
  474. data/spec/payroll_au/models/leave_earnings_line_spec.rb +53 -0
  475. data/spec/payroll_au/models/leave_line_calculation_type_spec.rb +35 -0
  476. data/spec/payroll_au/models/leave_line_spec.rb +83 -0
  477. data/spec/payroll_au/models/leave_lines_spec.rb +41 -0
  478. data/spec/payroll_au/models/leave_period_spec.rb +59 -0
  479. data/spec/payroll_au/models/leave_period_status_spec.rb +35 -0
  480. data/spec/payroll_au/models/leave_type_contribution_type_spec.rb +35 -0
  481. data/spec/payroll_au/models/leave_type_spec.rb +89 -0
  482. data/spec/payroll_au/models/manual_tax_type_spec.rb +35 -0
  483. data/spec/payroll_au/models/opening_balances_spec.rb +77 -0
  484. data/spec/payroll_au/models/pay_item_spec.rb +59 -0
  485. data/spec/payroll_au/models/pay_items_spec.rb +41 -0
  486. data/spec/payroll_au/models/pay_run_spec.rb +131 -0
  487. data/spec/payroll_au/models/pay_run_status_spec.rb +35 -0
  488. data/spec/payroll_au/models/pay_runs_spec.rb +41 -0
  489. data/spec/payroll_au/models/pay_template_spec.rb +65 -0
  490. data/spec/payroll_au/models/payment_frequency_type_spec.rb +35 -0
  491. data/spec/payroll_au/models/payroll_calendar_spec.rb +77 -0
  492. data/spec/payroll_au/models/payroll_calendars_spec.rb +41 -0
  493. data/spec/payroll_au/models/payslip_lines_spec.rb +83 -0
  494. data/spec/payroll_au/models/payslip_object_spec.rb +41 -0
  495. data/spec/payroll_au/models/payslip_spec.rb +149 -0
  496. data/spec/payroll_au/models/payslip_summary_spec.rb +107 -0
  497. data/spec/payroll_au/models/payslips_spec.rb +41 -0
  498. data/spec/payroll_au/models/rate_type_spec.rb +35 -0
  499. data/spec/payroll_au/models/reimbursement_line_spec.rb +59 -0
  500. data/spec/payroll_au/models/reimbursement_lines_spec.rb +41 -0
  501. data/spec/payroll_au/models/reimbursement_type_spec.rb +65 -0
  502. data/spec/payroll_au/models/residency_status_spec.rb +35 -0
  503. data/spec/payroll_au/models/settings_object_spec.rb +41 -0
  504. data/spec/payroll_au/models/settings_spec.rb +53 -0
  505. data/spec/payroll_au/models/settings_tracking_categories_employee_groups_spec.rb +47 -0
  506. data/spec/payroll_au/models/settings_tracking_categories_spec.rb +47 -0
  507. data/spec/payroll_au/models/settings_tracking_categories_timesheet_categories_spec.rb +47 -0
  508. data/spec/payroll_au/models/state_spec.rb +35 -0
  509. data/spec/payroll_au/models/super_fund_product_spec.rb +59 -0
  510. data/spec/payroll_au/models/super_fund_products_spec.rb +41 -0
  511. data/spec/payroll_au/models/super_fund_spec.rb +113 -0
  512. data/spec/payroll_au/models/super_fund_type_spec.rb +35 -0
  513. data/spec/payroll_au/models/super_funds_spec.rb +41 -0
  514. data/spec/payroll_au/models/super_line_spec.rb +83 -0
  515. data/spec/payroll_au/models/super_membership_spec.rb +53 -0
  516. data/spec/payroll_au/models/superannuation_calculation_type_spec.rb +35 -0
  517. data/spec/payroll_au/models/superannuation_contribution_type_spec.rb +35 -0
  518. data/spec/payroll_au/models/superannuation_line_spec.rb +89 -0
  519. data/spec/payroll_au/models/tax_declaration_spec.rb +131 -0
  520. data/spec/payroll_au/models/tax_line_spec.rb +71 -0
  521. data/spec/payroll_au/models/tfn_exemption_type_spec.rb +35 -0
  522. data/spec/payroll_au/models/timesheet_line_spec.rb +59 -0
  523. data/spec/payroll_au/models/timesheet_object_spec.rb +41 -0
  524. data/spec/payroll_au/models/timesheet_spec.rb +89 -0
  525. data/spec/payroll_au/models/timesheet_status_spec.rb +35 -0
  526. data/spec/payroll_au/models/timesheets_spec.rb +41 -0
  527. data/spec/payroll_au/models/validation_error_spec.rb +41 -0
  528. data/spec/payroll_nz/api/payroll_nz_api_spec.rb +886 -0
  529. data/spec/payroll_nz/models/account_spec.rb +63 -0
  530. data/spec/payroll_nz/models/accounts_spec.rb +41 -0
  531. data/spec/payroll_nz/models/address_spec.rb +71 -0
  532. data/spec/payroll_nz/models/bank_account_spec.rb +87 -0
  533. data/spec/payroll_nz/models/benefit_spec.rb +103 -0
  534. data/spec/payroll_nz/models/deduction_line_spec.rb +65 -0
  535. data/spec/payroll_nz/models/deduction_object_spec.rb +53 -0
  536. data/spec/payroll_nz/models/deduction_spec.rb +75 -0
  537. data/spec/payroll_nz/models/deductions_spec.rb +53 -0
  538. data/spec/payroll_nz/models/earnings_line_spec.rb +95 -0
  539. data/spec/payroll_nz/models/earnings_order_object_spec.rb +53 -0
  540. data/spec/payroll_nz/models/earnings_order_spec.rb +65 -0
  541. data/spec/payroll_nz/models/earnings_orders_spec.rb +53 -0
  542. data/spec/payroll_nz/models/earnings_rate_object_spec.rb +53 -0
  543. data/spec/payroll_nz/models/earnings_rate_spec.rb +103 -0
  544. data/spec/payroll_nz/models/earnings_rates_spec.rb +53 -0
  545. data/spec/payroll_nz/models/earnings_template_object_spec.rb +53 -0
  546. data/spec/payroll_nz/models/earnings_template_spec.rb +71 -0
  547. data/spec/payroll_nz/models/employee_earnings_templates_spec.rb +53 -0
  548. data/spec/payroll_nz/models/employee_leave_balance_spec.rb +59 -0
  549. data/spec/payroll_nz/models/employee_leave_balances_spec.rb +53 -0
  550. data/spec/payroll_nz/models/employee_leave_object_spec.rb +53 -0
  551. data/spec/payroll_nz/models/employee_leave_setup_object_spec.rb +53 -0
  552. data/spec/payroll_nz/models/employee_leave_setup_spec.rb +77 -0
  553. data/spec/payroll_nz/models/employee_leave_spec.rb +77 -0
  554. data/spec/payroll_nz/models/employee_leave_type_object_spec.rb +53 -0
  555. data/spec/payroll_nz/models/employee_leave_type_spec.rb +99 -0
  556. data/spec/payroll_nz/models/employee_leave_types_spec.rb +53 -0
  557. data/spec/payroll_nz/models/employee_leaves_spec.rb +53 -0
  558. data/spec/payroll_nz/models/employee_object_spec.rb +53 -0
  559. data/spec/payroll_nz/models/employee_opening_balance_spec.rb +59 -0
  560. data/spec/payroll_nz/models/employee_opening_balances_object_spec.rb +53 -0
  561. data/spec/payroll_nz/models/employee_pay_template_object_spec.rb +53 -0
  562. data/spec/payroll_nz/models/employee_pay_template_spec.rb +47 -0
  563. data/spec/payroll_nz/models/employee_pay_templates_spec.rb +53 -0
  564. data/spec/payroll_nz/models/employee_spec.rb +123 -0
  565. data/spec/payroll_nz/models/employee_statutory_leave_balance_object_spec.rb +53 -0
  566. data/spec/payroll_nz/models/employee_statutory_leave_balance_spec.rb +61 -0
  567. data/spec/payroll_nz/models/employee_statutory_leave_summary_spec.rb +85 -0
  568. data/spec/payroll_nz/models/employee_statutory_leaves_summaries_spec.rb +53 -0
  569. data/spec/payroll_nz/models/employee_statutory_sick_leave_object_spec.rb +53 -0
  570. data/spec/payroll_nz/models/employee_statutory_sick_leave_spec.rb +135 -0
  571. data/spec/payroll_nz/models/employee_statutory_sick_leaves_spec.rb +53 -0
  572. data/spec/payroll_nz/models/employee_tax_object_spec.rb +53 -0
  573. data/spec/payroll_nz/models/employee_tax_spec.rb +135 -0
  574. data/spec/payroll_nz/models/employees_spec.rb +53 -0
  575. data/spec/payroll_nz/models/employment_object_spec.rb +53 -0
  576. data/spec/payroll_nz/models/employment_spec.rb +53 -0
  577. data/spec/payroll_nz/models/gross_earnings_history_spec.rb +47 -0
  578. data/spec/payroll_nz/models/invalid_field_spec.rb +47 -0
  579. data/spec/payroll_nz/models/leave_accrual_line_spec.rb +47 -0
  580. data/spec/payroll_nz/models/leave_earnings_line_spec.rb +95 -0
  581. data/spec/payroll_nz/models/leave_period_spec.rb +63 -0
  582. data/spec/payroll_nz/models/leave_periods_spec.rb +53 -0
  583. data/spec/payroll_nz/models/leave_type_object_spec.rb +53 -0
  584. data/spec/payroll_nz/models/leave_type_spec.rb +71 -0
  585. data/spec/payroll_nz/models/leave_types_spec.rb +53 -0
  586. data/spec/payroll_nz/models/pagination_spec.rb +59 -0
  587. data/spec/payroll_nz/models/pay_run_calendar_object_spec.rb +53 -0
  588. data/spec/payroll_nz/models/pay_run_calendar_spec.rb +81 -0
  589. data/spec/payroll_nz/models/pay_run_calendars_spec.rb +53 -0
  590. data/spec/payroll_nz/models/pay_run_object_spec.rb +53 -0
  591. data/spec/payroll_nz/models/pay_run_spec.rb +119 -0
  592. data/spec/payroll_nz/models/pay_runs_spec.rb +53 -0
  593. data/spec/payroll_nz/models/pay_slip_object_spec.rb +53 -0
  594. data/spec/payroll_nz/models/pay_slip_spec.rb +219 -0
  595. data/spec/payroll_nz/models/pay_slips_spec.rb +53 -0
  596. data/spec/payroll_nz/models/payment_line_spec.rb +65 -0
  597. data/spec/payroll_nz/models/payment_method_object_spec.rb +53 -0
  598. data/spec/payroll_nz/models/payment_method_spec.rb +51 -0
  599. data/spec/payroll_nz/models/problem_spec.rb +71 -0
  600. data/spec/payroll_nz/models/reimbursement_line_spec.rb +65 -0
  601. data/spec/payroll_nz/models/reimbursement_object_spec.rb +53 -0
  602. data/spec/payroll_nz/models/reimbursement_spec.rb +101 -0
  603. data/spec/payroll_nz/models/reimbursements_spec.rb +53 -0
  604. data/spec/payroll_nz/models/salary_and_wage_object_spec.rb +53 -0
  605. data/spec/payroll_nz/models/salary_and_wage_spec.rb +103 -0
  606. data/spec/payroll_nz/models/salary_and_wages_spec.rb +53 -0
  607. data/spec/payroll_nz/models/settings_spec.rb +53 -0
  608. data/spec/payroll_nz/models/statutory_deduction_category_spec.rb +35 -0
  609. data/spec/payroll_nz/models/statutory_deduction_line_spec.rb +59 -0
  610. data/spec/payroll_nz/models/statutory_deduction_object_spec.rb +53 -0
  611. data/spec/payroll_nz/models/statutory_deduction_spec.rb +65 -0
  612. data/spec/payroll_nz/models/statutory_deductions_spec.rb +53 -0
  613. data/spec/payroll_nz/models/superannuation_line_spec.rb +71 -0
  614. data/spec/payroll_nz/models/superannuation_object_spec.rb +53 -0
  615. data/spec/payroll_nz/models/superannuations_spec.rb +53 -0
  616. data/spec/payroll_nz/models/tax_code_spec.rb +35 -0
  617. data/spec/payroll_nz/models/tax_line_spec.rb +65 -0
  618. data/spec/payroll_nz/models/tax_settings_spec.rb +75 -0
  619. data/spec/payroll_nz/models/timesheet_earnings_line_spec.rb +95 -0
  620. data/spec/payroll_nz/models/timesheet_line_object_spec.rb +53 -0
  621. data/spec/payroll_nz/models/timesheet_line_spec.rb +65 -0
  622. data/spec/payroll_nz/models/timesheet_object_spec.rb +53 -0
  623. data/spec/payroll_nz/models/timesheet_spec.rb +93 -0
  624. data/spec/payroll_nz/models/timesheets_spec.rb +53 -0
  625. data/spec/payroll_nz/models/tracking_categories_spec.rb +53 -0
  626. data/spec/payroll_nz/models/tracking_category_spec.rb +47 -0
  627. data/spec/payroll_uk/api/payroll_uk_api_spec.rb +912 -0
  628. data/spec/payroll_uk/models/account_spec.rb +63 -0
  629. data/spec/payroll_uk/models/accounts_spec.rb +41 -0
  630. data/spec/payroll_uk/models/address_spec.rb +65 -0
  631. data/spec/payroll_uk/models/bank_account_spec.rb +53 -0
  632. data/spec/payroll_uk/models/benefit_line_spec.rb +65 -0
  633. data/spec/payroll_uk/models/benefit_object_spec.rb +53 -0
  634. data/spec/payroll_uk/models/benefit_spec.rb +127 -0
  635. data/spec/payroll_uk/models/benefits_spec.rb +53 -0
  636. data/spec/payroll_uk/models/court_order_line_spec.rb +47 -0
  637. data/spec/payroll_uk/models/deduction_line_spec.rb +59 -0
  638. data/spec/payroll_uk/models/deduction_object_spec.rb +53 -0
  639. data/spec/payroll_uk/models/deduction_spec.rb +139 -0
  640. data/spec/payroll_uk/models/deductions_spec.rb +53 -0
  641. data/spec/payroll_uk/models/earnings_line_spec.rb +89 -0
  642. data/spec/payroll_uk/models/earnings_order_object_spec.rb +53 -0
  643. data/spec/payroll_uk/models/earnings_order_spec.rb +65 -0
  644. data/spec/payroll_uk/models/earnings_orders_spec.rb +53 -0
  645. data/spec/payroll_uk/models/earnings_rate_object_spec.rb +53 -0
  646. data/spec/payroll_uk/models/earnings_rate_spec.rb +103 -0
  647. data/spec/payroll_uk/models/earnings_rates_spec.rb +53 -0
  648. data/spec/payroll_uk/models/earnings_template_object_spec.rb +53 -0
  649. data/spec/payroll_uk/models/earnings_template_spec.rb +71 -0
  650. data/spec/payroll_uk/models/employee_leave_balance_spec.rb +59 -0
  651. data/spec/payroll_uk/models/employee_leave_balances_spec.rb +53 -0
  652. data/spec/payroll_uk/models/employee_leave_object_spec.rb +53 -0
  653. data/spec/payroll_uk/models/employee_leave_spec.rb +77 -0
  654. data/spec/payroll_uk/models/employee_leave_type_object_spec.rb +53 -0
  655. data/spec/payroll_uk/models/employee_leave_type_spec.rb +75 -0
  656. data/spec/payroll_uk/models/employee_leave_types_spec.rb +53 -0
  657. data/spec/payroll_uk/models/employee_leaves_spec.rb +53 -0
  658. data/spec/payroll_uk/models/employee_object_spec.rb +53 -0
  659. data/spec/payroll_uk/models/employee_opening_balances_object_spec.rb +53 -0
  660. data/spec/payroll_uk/models/employee_opening_balances_spec.rb +71 -0
  661. data/spec/payroll_uk/models/employee_pay_template_object_spec.rb +53 -0
  662. data/spec/payroll_uk/models/employee_pay_template_spec.rb +47 -0
  663. data/spec/payroll_uk/models/employee_pay_templates_spec.rb +53 -0
  664. data/spec/payroll_uk/models/employee_spec.rb +129 -0
  665. data/spec/payroll_uk/models/employee_statutory_leave_balance_object_spec.rb +53 -0
  666. data/spec/payroll_uk/models/employee_statutory_leave_balance_spec.rb +61 -0
  667. data/spec/payroll_uk/models/employee_statutory_leave_summary_spec.rb +85 -0
  668. data/spec/payroll_uk/models/employee_statutory_leaves_summaries_spec.rb +53 -0
  669. data/spec/payroll_uk/models/employee_statutory_sick_leave_object_spec.rb +53 -0
  670. data/spec/payroll_uk/models/employee_statutory_sick_leave_spec.rb +135 -0
  671. data/spec/payroll_uk/models/employee_statutory_sick_leaves_spec.rb +53 -0
  672. data/spec/payroll_uk/models/employee_tax_object_spec.rb +53 -0
  673. data/spec/payroll_uk/models/employee_tax_spec.rb +101 -0
  674. data/spec/payroll_uk/models/employees_spec.rb +53 -0
  675. data/spec/payroll_uk/models/employment_object_spec.rb +53 -0
  676. data/spec/payroll_uk/models/employment_spec.rb +63 -0
  677. data/spec/payroll_uk/models/invalid_field_spec.rb +47 -0
  678. data/spec/payroll_uk/models/leave_accrual_line_spec.rb +47 -0
  679. data/spec/payroll_uk/models/leave_earnings_line_spec.rb +71 -0
  680. data/spec/payroll_uk/models/leave_period_spec.rb +63 -0
  681. data/spec/payroll_uk/models/leave_periods_spec.rb +53 -0
  682. data/spec/payroll_uk/models/leave_type_object_spec.rb +53 -0
  683. data/spec/payroll_uk/models/leave_type_spec.rb +83 -0
  684. data/spec/payroll_uk/models/leave_types_spec.rb +53 -0
  685. data/spec/payroll_uk/models/pagination_spec.rb +59 -0
  686. data/spec/payroll_uk/models/pay_run_calendar_object_spec.rb +53 -0
  687. data/spec/payroll_uk/models/pay_run_calendar_spec.rb +81 -0
  688. data/spec/payroll_uk/models/pay_run_calendars_spec.rb +53 -0
  689. data/spec/payroll_uk/models/pay_run_object_spec.rb +53 -0
  690. data/spec/payroll_uk/models/pay_run_spec.rb +119 -0
  691. data/spec/payroll_uk/models/pay_runs_spec.rb +53 -0
  692. data/spec/payroll_uk/models/payment_line_spec.rb +65 -0
  693. data/spec/payroll_uk/models/payment_method_object_spec.rb +53 -0
  694. data/spec/payroll_uk/models/payment_method_spec.rb +51 -0
  695. data/spec/payroll_uk/models/payslip_object_spec.rb +53 -0
  696. data/spec/payroll_uk/models/payslip_spec.rb +201 -0
  697. data/spec/payroll_uk/models/payslips_spec.rb +53 -0
  698. data/spec/payroll_uk/models/problem_spec.rb +71 -0
  699. data/spec/payroll_uk/models/reimbursement_line_spec.rb +53 -0
  700. data/spec/payroll_uk/models/reimbursement_object_spec.rb +53 -0
  701. data/spec/payroll_uk/models/reimbursement_spec.rb +59 -0
  702. data/spec/payroll_uk/models/reimbursements_spec.rb +53 -0
  703. data/spec/payroll_uk/models/salary_and_wage_object_spec.rb +53 -0
  704. data/spec/payroll_uk/models/salary_and_wage_spec.rb +97 -0
  705. data/spec/payroll_uk/models/salary_and_wages_spec.rb +53 -0
  706. data/spec/payroll_uk/models/settings_spec.rb +53 -0
  707. data/spec/payroll_uk/models/statutory_deduction_category_spec.rb +35 -0
  708. data/spec/payroll_uk/models/statutory_deduction_spec.rb +65 -0
  709. data/spec/payroll_uk/models/tax_line_spec.rb +71 -0
  710. data/spec/payroll_uk/models/timesheet_earnings_line_spec.rb +71 -0
  711. data/spec/payroll_uk/models/timesheet_line_object_spec.rb +53 -0
  712. data/spec/payroll_uk/models/timesheet_line_spec.rb +65 -0
  713. data/spec/payroll_uk/models/timesheet_object_spec.rb +53 -0
  714. data/spec/payroll_uk/models/timesheet_spec.rb +93 -0
  715. data/spec/payroll_uk/models/timesheets_spec.rb +53 -0
  716. data/spec/payroll_uk/models/tracking_categories_spec.rb +53 -0
  717. data/spec/payroll_uk/models/tracking_category_spec.rb +47 -0
  718. metadata +844 -157
  719. data/CODE_OF_CONDUCT.md +0 -76
  720. data/CONTRIBUTING.md +0 -82
  721. data/Gemfile +0 -9
  722. data/LICENSE +0 -21
  723. data/Rakefile +0 -10
  724. data/build_notes.md +0 -52
  725. data/docs/accounting/Account.md +0 -55
  726. data/docs/accounting/AccountType.md +0 -16
  727. data/docs/accounting/AccountingApi.md +0 -15148
  728. data/docs/accounting/Accounts.md +0 -17
  729. data/docs/accounting/AccountsPayable.md +0 -19
  730. data/docs/accounting/AccountsReceivable.md +0 -19
  731. data/docs/accounting/Address.md +0 -35
  732. data/docs/accounting/Allocation.md +0 -31
  733. data/docs/accounting/Allocations.md +0 -17
  734. data/docs/accounting/Attachment.md +0 -27
  735. data/docs/accounting/Attachments.md +0 -17
  736. data/docs/accounting/Balances.md +0 -19
  737. data/docs/accounting/BankTransaction.md +0 -59
  738. data/docs/accounting/BankTransactions.md +0 -17
  739. data/docs/accounting/BankTransfer.md +0 -37
  740. data/docs/accounting/BankTransfers.md +0 -17
  741. data/docs/accounting/BatchPayment.md +0 -47
  742. data/docs/accounting/BatchPaymentDetails.md +0 -25
  743. data/docs/accounting/BatchPayments.md +0 -17
  744. data/docs/accounting/Bill.md +0 -19
  745. data/docs/accounting/BrandingTheme.md +0 -27
  746. data/docs/accounting/BrandingThemes.md +0 -17
  747. data/docs/accounting/CISOrgSetting.md +0 -21
  748. data/docs/accounting/CISSetting.md +0 -19
  749. data/docs/accounting/CISSettings.md +0 -17
  750. data/docs/accounting/Contact.md +0 -93
  751. data/docs/accounting/ContactGroup.md +0 -23
  752. data/docs/accounting/ContactGroups.md +0 -17
  753. data/docs/accounting/ContactPerson.md +0 -23
  754. data/docs/accounting/Contacts.md +0 -17
  755. data/docs/accounting/CountryCode.md +0 -16
  756. data/docs/accounting/CreditNote.md +0 -67
  757. data/docs/accounting/CreditNotes.md +0 -17
  758. data/docs/accounting/Currencies.md +0 -17
  759. data/docs/accounting/Currency.md +0 -19
  760. data/docs/accounting/CurrencyCode.md +0 -16
  761. data/docs/accounting/Element.md +0 -31
  762. data/docs/accounting/Employee.md +0 -31
  763. data/docs/accounting/Employees.md +0 -17
  764. data/docs/accounting/Error.md +0 -23
  765. data/docs/accounting/ExpenseClaim.md +0 -39
  766. data/docs/accounting/ExpenseClaims.md +0 -17
  767. data/docs/accounting/ExternalLink.md +0 -21
  768. data/docs/accounting/HistoryRecord.md +0 -23
  769. data/docs/accounting/HistoryRecords.md +0 -17
  770. data/docs/accounting/Invoice.md +0 -91
  771. data/docs/accounting/InvoiceReminder.md +0 -17
  772. data/docs/accounting/InvoiceReminders.md +0 -17
  773. data/docs/accounting/Invoices.md +0 -17
  774. data/docs/accounting/Item.md +0 -47
  775. data/docs/accounting/Items.md +0 -17
  776. data/docs/accounting/Journal.md +0 -31
  777. data/docs/accounting/JournalLine.md +0 -39
  778. data/docs/accounting/Journals.md +0 -17
  779. data/docs/accounting/LineAmountTypes.md +0 -16
  780. data/docs/accounting/LineItem.md +0 -41
  781. data/docs/accounting/LineItemTracking.md +0 -23
  782. data/docs/accounting/LinkedTransaction.md +0 -37
  783. data/docs/accounting/LinkedTransactions.md +0 -17
  784. data/docs/accounting/ManualJournal.md +0 -43
  785. data/docs/accounting/ManualJournalLine.md +0 -31
  786. data/docs/accounting/ManualJournals.md +0 -17
  787. data/docs/accounting/OnlineInvoice.md +0 -17
  788. data/docs/accounting/OnlineInvoices.md +0 -17
  789. data/docs/accounting/Organisation.md +0 -81
  790. data/docs/accounting/Organisations.md +0 -17
  791. data/docs/accounting/Overpayment.md +0 -53
  792. data/docs/accounting/Overpayments.md +0 -17
  793. data/docs/accounting/Payment.md +0 -63
  794. data/docs/accounting/PaymentDelete.md +0 -17
  795. data/docs/accounting/PaymentService.md +0 -27
  796. data/docs/accounting/PaymentServices.md +0 -17
  797. data/docs/accounting/PaymentTerm.md +0 -19
  798. data/docs/accounting/PaymentTermType.md +0 -16
  799. data/docs/accounting/Payments.md +0 -17
  800. data/docs/accounting/Phone.md +0 -23
  801. data/docs/accounting/Prepayment.md +0 -53
  802. data/docs/accounting/Prepayments.md +0 -17
  803. data/docs/accounting/Purchase.md +0 -23
  804. data/docs/accounting/PurchaseOrder.md +0 -71
  805. data/docs/accounting/PurchaseOrders.md +0 -17
  806. data/docs/accounting/Quote.md +0 -63
  807. data/docs/accounting/QuoteLineAmountTypes.md +0 -16
  808. data/docs/accounting/QuoteStatusCodes.md +0 -16
  809. data/docs/accounting/Quotes.md +0 -17
  810. data/docs/accounting/Receipt.md +0 -51
  811. data/docs/accounting/Receipts.md +0 -17
  812. data/docs/accounting/RepeatingInvoice.md +0 -47
  813. data/docs/accounting/RepeatingInvoices.md +0 -17
  814. data/docs/accounting/Report.md +0 -29
  815. data/docs/accounting/ReportAttribute.md +0 -19
  816. data/docs/accounting/ReportCell.md +0 -19
  817. data/docs/accounting/ReportFields.md +0 -21
  818. data/docs/accounting/ReportRow.md +0 -21
  819. data/docs/accounting/ReportRows.md +0 -23
  820. data/docs/accounting/ReportWithRow.md +0 -33
  821. data/docs/accounting/ReportWithRows.md +0 -17
  822. data/docs/accounting/Reports.md +0 -17
  823. data/docs/accounting/RequestEmpty.md +0 -17
  824. data/docs/accounting/RowType.md +0 -16
  825. data/docs/accounting/SalesTrackingCategory.md +0 -19
  826. data/docs/accounting/Schedule.md +0 -29
  827. data/docs/accounting/TaxComponent.md +0 -23
  828. data/docs/accounting/TaxRate.md +0 -39
  829. data/docs/accounting/TaxRates.md +0 -17
  830. data/docs/accounting/TaxType.md +0 -16
  831. data/docs/accounting/TenNinetyNineContact.md +0 -59
  832. data/docs/accounting/TimeZone.md +0 -16
  833. data/docs/accounting/TrackingCategories.md +0 -17
  834. data/docs/accounting/TrackingCategory.md +0 -27
  835. data/docs/accounting/TrackingOption.md +0 -23
  836. data/docs/accounting/TrackingOptions.md +0 -17
  837. data/docs/accounting/User.md +0 -29
  838. data/docs/accounting/Users.md +0 -17
  839. data/docs/accounting/ValidationError.md +0 -17
  840. data/docs/assets/Asset.md +0 -45
  841. data/docs/assets/AssetApi.md +0 -438
  842. data/docs/assets/AssetStatus.md +0 -16
  843. data/docs/assets/AssetStatusQueryParam.md +0 -16
  844. data/docs/assets/AssetType.md +0 -29
  845. data/docs/assets/Assets.md +0 -19
  846. data/docs/assets/BookDepreciationDetail.md +0 -29
  847. data/docs/assets/BookDepreciationSetting.md +0 -31
  848. data/docs/assets/Error.md +0 -25
  849. data/docs/assets/FieldValidationErrorsElement.md +0 -27
  850. data/docs/assets/Pagination.md +0 -23
  851. data/docs/assets/ResourceValidationErrorsElement.md +0 -25
  852. data/docs/assets/Setting.md +0 -31
  853. data/docs/projects/Amount.md +0 -19
  854. data/docs/projects/ChargeType.md +0 -16
  855. data/docs/projects/CurrencyCode.md +0 -16
  856. data/docs/projects/Error.md +0 -19
  857. data/docs/projects/Pagination.md +0 -23
  858. data/docs/projects/Project.md +0 -59
  859. data/docs/projects/ProjectApi.md +0 -979
  860. data/docs/projects/ProjectCreateOrUpdate.md +0 -23
  861. data/docs/projects/ProjectPatch.md +0 -17
  862. data/docs/projects/ProjectStatus.md +0 -16
  863. data/docs/projects/ProjectUser.md +0 -21
  864. data/docs/projects/ProjectUsers.md +0 -19
  865. data/docs/projects/Projects.md +0 -19
  866. data/docs/projects/Task.md +0 -45
  867. data/docs/projects/TaskCreateOrUpdate.md +0 -23
  868. data/docs/projects/Tasks.md +0 -19
  869. data/docs/projects/TimeEntries.md +0 -19
  870. data/docs/projects/TimeEntry.md +0 -33
  871. data/docs/projects/TimeEntryCreateOrUpdate.md +0 -25
  872. data/git_push.sh +0 -55
  873. data/xero-ruby.gemspec +0 -38
@@ -0,0 +1,280 @@
1
+ =begin
2
+ #Xero Payroll UK
3
+
4
+ #This is the Xero Payroll API for orgs in the UK region.
5
+
6
+ The version of the OpenAPI document: 2.4.0
7
+ Contact: api@xero.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'time'
14
+ require 'date'
15
+
16
+ module XeroRuby::PayrollUk
17
+ require 'bigdecimal'
18
+
19
+ class Employment
20
+ # Xero unique identifier for the payroll calendar of the employee
21
+ attr_accessor :payroll_calendar_id
22
+
23
+ # Start date of the employment (YYYY-MM-DD)
24
+ attr_accessor :start_date
25
+
26
+ # The employment number of the employee
27
+ attr_accessor :employee_number
28
+
29
+ # The NI Category of the employee
30
+ attr_accessor :ni_category
31
+ A = "A".freeze
32
+ B = "B".freeze
33
+ C = "C".freeze
34
+ H = "H".freeze
35
+ J = "J".freeze
36
+ M = "M".freeze
37
+ Z = "Z".freeze
38
+ X = "X".freeze
39
+
40
+ class EnumAttributeValidator
41
+ attr_reader :datatype
42
+ attr_reader :allowable_values
43
+
44
+ def initialize(datatype, allowable_values)
45
+ @allowable_values = allowable_values.map do |value|
46
+ case datatype.to_s
47
+ when /Integer/i
48
+ value.to_i
49
+ when /Float/i
50
+ value.to_f
51
+ else
52
+ value
53
+ end
54
+ end
55
+ end
56
+
57
+ def valid?(value)
58
+ !value || allowable_values.include?(value)
59
+ end
60
+ end
61
+
62
+ # Attribute mapping from ruby-style variable name to JSON key.
63
+ def self.attribute_map
64
+ {
65
+ :'payroll_calendar_id' => :'payrollCalendarID',
66
+ :'start_date' => :'startDate',
67
+ :'employee_number' => :'employeeNumber',
68
+ :'ni_category' => :'niCategory'
69
+ }
70
+ end
71
+
72
+ # Attribute type mapping.
73
+ def self.openapi_types
74
+ {
75
+ :'payroll_calendar_id' => :'String',
76
+ :'start_date' => :'Date',
77
+ :'employee_number' => :'String',
78
+ :'ni_category' => :'String'
79
+ }
80
+ end
81
+
82
+ # Initializes the object
83
+ # @param [Hash] attributes Model attributes in the form of hash
84
+ def initialize(attributes = {})
85
+ if (!attributes.is_a?(Hash))
86
+ fail ArgumentError, "The input argument (attributes) must be a hash in `XeroRuby::PayrollUk::Employment` initialize method"
87
+ end
88
+
89
+ # check to see if the attribute exists and convert string to symbol for hash key
90
+ attributes = attributes.each_with_object({}) { |(k, v), h|
91
+ if (!self.class.attribute_map.key?(k.to_sym))
92
+ fail ArgumentError, "`#{k}` is not a valid attribute in `XeroRuby::PayrollUk::Employment`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
93
+ end
94
+ h[k.to_sym] = v
95
+ }
96
+
97
+ if attributes.key?(:'payroll_calendar_id')
98
+ self.payroll_calendar_id = attributes[:'payroll_calendar_id']
99
+ end
100
+
101
+ if attributes.key?(:'start_date')
102
+ self.start_date = attributes[:'start_date']
103
+ end
104
+
105
+ if attributes.key?(:'employee_number')
106
+ self.employee_number = attributes[:'employee_number']
107
+ end
108
+
109
+ if attributes.key?(:'ni_category')
110
+ self.ni_category = attributes[:'ni_category']
111
+ end
112
+ end
113
+
114
+ # Show invalid properties with the reasons. Usually used together with valid?
115
+ # @return Array for valid properties with the reasons
116
+ def list_invalid_properties
117
+ invalid_properties = Array.new
118
+ invalid_properties
119
+ end
120
+
121
+ # Check to see if the all the properties in the model are valid
122
+ # @return true if the model is valid
123
+ def valid?
124
+ ni_category_validator = EnumAttributeValidator.new('String', ["A", "B", "C", "H", "J", "M", "Z", "X"])
125
+ return false unless ni_category_validator.valid?(@ni_category)
126
+ true
127
+ end
128
+
129
+ # Custom attribute writer method checking allowed values (enum).
130
+ # @param [Object] ni_category Object to be assigned
131
+ def ni_category=(ni_category)
132
+ validator = EnumAttributeValidator.new('String', ["A", "B", "C", "H", "J", "M", "Z", "X"])
133
+ unless validator.valid?(ni_category)
134
+ fail ArgumentError, "invalid value for \"ni_category\", must be one of #{validator.allowable_values}."
135
+ end
136
+ @ni_category = ni_category
137
+ end
138
+
139
+ # Checks equality by comparing each attribute.
140
+ # @param [Object] Object to be compared
141
+ def ==(o)
142
+ return true if self.equal?(o)
143
+ self.class == o.class &&
144
+ payroll_calendar_id == o.payroll_calendar_id &&
145
+ start_date == o.start_date &&
146
+ employee_number == o.employee_number &&
147
+ ni_category == o.ni_category
148
+ end
149
+
150
+ # @see the `==` method
151
+ # @param [Object] Object to be compared
152
+ def eql?(o)
153
+ self == o
154
+ end
155
+
156
+ # Calculates hash code according to all attributes.
157
+ # @return [Integer] Hash code
158
+ def hash
159
+ [payroll_calendar_id, start_date, employee_number, ni_category].hash
160
+ end
161
+
162
+ # Builds the object from hash
163
+ # @param [Hash] attributes Model attributes in the form of hash
164
+ # @return [Object] Returns the model itself
165
+ def self.build_from_hash(attributes)
166
+ new.build_from_hash(attributes)
167
+ end
168
+
169
+ # Builds the object from hash
170
+ # @param [Hash] attributes Model attributes in the form of hash
171
+ # @return [Object] Returns the model itself
172
+ def build_from_hash(attributes)
173
+ return nil unless attributes.is_a?(Hash)
174
+ self.class.openapi_types.each_pair do |key, type|
175
+ if type =~ /\AArray<(.*)>/i
176
+ # check to ensure the input is an array given that the attribute
177
+ # is documented as an array but the input is not
178
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
179
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
180
+ end
181
+ elsif !attributes[self.class.attribute_map[key]].nil?
182
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
183
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
184
+ end
185
+
186
+ self
187
+ end
188
+
189
+ # Deserializes the data based on type
190
+ # @param string type Data type
191
+ # @param string value Value to be deserialized
192
+ # @return [Object] Deserialized data
193
+ def _deserialize(type, value)
194
+ case type.to_sym
195
+ when :DateTime
196
+ DateTime.parse(parse_date(value))
197
+ when :Date
198
+ Date.parse(parse_date(value))
199
+ when :String
200
+ value.to_s
201
+ when :Integer
202
+ value.to_i
203
+ when :Float
204
+ value.to_f
205
+ when :BigDecimal
206
+ BigDecimal(value.to_s)
207
+ when :Boolean
208
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
209
+ true
210
+ else
211
+ false
212
+ end
213
+ when :Object
214
+ # generic object (usually a Hash), return directly
215
+ value
216
+ when /\AArray<(?<inner_type>.+)>\z/
217
+ inner_type = Regexp.last_match[:inner_type]
218
+ value.map { |v| _deserialize(inner_type, v) }
219
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
220
+ k_type = Regexp.last_match[:k_type]
221
+ v_type = Regexp.last_match[:v_type]
222
+ {}.tap do |hash|
223
+ value.each do |k, v|
224
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
225
+ end
226
+ end
227
+ else # model
228
+ XeroRuby::PayrollUk.const_get(type).build_from_hash(value)
229
+ end
230
+ end
231
+
232
+ # Returns the string representation of the object
233
+ # @return [String] String presentation of the object
234
+ def to_s
235
+ to_hash.to_s
236
+ end
237
+
238
+ # to_body is an alias to to_hash (backward compatibility)
239
+ # @return [Hash] Returns the object in the form of hash
240
+ def to_body
241
+ to_hash
242
+ end
243
+
244
+ # Returns the object in the form of hash
245
+ # @return [Hash] Returns the object in the form of hash
246
+ def to_hash
247
+ hash = {}
248
+ self.class.attribute_map.each_pair do |attr, param|
249
+ value = self.send(attr)
250
+ next if value.nil?
251
+ hash[param] = _to_hash(value)
252
+ end
253
+ hash
254
+ end
255
+
256
+ # Outputs non-array value in the form of hash
257
+ # For object, use to_hash. Otherwise, just return the value
258
+ # @param [Object] value Any valid value
259
+ # @return [Hash] Returns the value in the form of hash
260
+ def _to_hash(value)
261
+ if value.is_a?(Array)
262
+ value.compact.map { |v| _to_hash(v) }
263
+ elsif value.is_a?(Hash)
264
+ {}.tap do |hash|
265
+ value.each { |k, v| hash[k] = _to_hash(v) }
266
+ end
267
+ elsif value.respond_to? :to_hash
268
+ value.to_hash
269
+ else
270
+ value
271
+ end
272
+ end
273
+
274
+ # customized data_parser
275
+ def parse_date(datestring)
276
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
277
+ return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
278
+ end
279
+ end
280
+ end
@@ -0,0 +1,228 @@
1
+ =begin
2
+ #Xero Payroll UK
3
+
4
+ #This is the Xero Payroll API for orgs in the UK region.
5
+
6
+ The version of the OpenAPI document: 2.4.0
7
+ Contact: api@xero.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'time'
14
+ require 'date'
15
+
16
+ module XeroRuby::PayrollUk
17
+ require 'bigdecimal'
18
+
19
+ class EmploymentObject
20
+
21
+ attr_accessor :pagination
22
+
23
+
24
+ attr_accessor :problem
25
+
26
+
27
+ attr_accessor :employment
28
+
29
+ # Attribute mapping from ruby-style variable name to JSON key.
30
+ def self.attribute_map
31
+ {
32
+ :'pagination' => :'pagination',
33
+ :'problem' => :'problem',
34
+ :'employment' => :'employment'
35
+ }
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.openapi_types
40
+ {
41
+ :'pagination' => :'Pagination',
42
+ :'problem' => :'Problem',
43
+ :'employment' => :'Employment'
44
+ }
45
+ end
46
+
47
+ # Initializes the object
48
+ # @param [Hash] attributes Model attributes in the form of hash
49
+ def initialize(attributes = {})
50
+ if (!attributes.is_a?(Hash))
51
+ fail ArgumentError, "The input argument (attributes) must be a hash in `XeroRuby::PayrollUk::EmploymentObject` initialize method"
52
+ end
53
+
54
+ # check to see if the attribute exists and convert string to symbol for hash key
55
+ attributes = attributes.each_with_object({}) { |(k, v), h|
56
+ if (!self.class.attribute_map.key?(k.to_sym))
57
+ fail ArgumentError, "`#{k}` is not a valid attribute in `XeroRuby::PayrollUk::EmploymentObject`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
58
+ end
59
+ h[k.to_sym] = v
60
+ }
61
+
62
+ if attributes.key?(:'pagination')
63
+ self.pagination = attributes[:'pagination']
64
+ end
65
+
66
+ if attributes.key?(:'problem')
67
+ self.problem = attributes[:'problem']
68
+ end
69
+
70
+ if attributes.key?(:'employment')
71
+ self.employment = attributes[:'employment']
72
+ end
73
+ end
74
+
75
+ # Show invalid properties with the reasons. Usually used together with valid?
76
+ # @return Array for valid properties with the reasons
77
+ def list_invalid_properties
78
+ invalid_properties = Array.new
79
+ invalid_properties
80
+ end
81
+
82
+ # Check to see if the all the properties in the model are valid
83
+ # @return true if the model is valid
84
+ def valid?
85
+ true
86
+ end
87
+
88
+ # Checks equality by comparing each attribute.
89
+ # @param [Object] Object to be compared
90
+ def ==(o)
91
+ return true if self.equal?(o)
92
+ self.class == o.class &&
93
+ pagination == o.pagination &&
94
+ problem == o.problem &&
95
+ employment == o.employment
96
+ end
97
+
98
+ # @see the `==` method
99
+ # @param [Object] Object to be compared
100
+ def eql?(o)
101
+ self == o
102
+ end
103
+
104
+ # Calculates hash code according to all attributes.
105
+ # @return [Integer] Hash code
106
+ def hash
107
+ [pagination, problem, employment].hash
108
+ end
109
+
110
+ # Builds the object from hash
111
+ # @param [Hash] attributes Model attributes in the form of hash
112
+ # @return [Object] Returns the model itself
113
+ def self.build_from_hash(attributes)
114
+ new.build_from_hash(attributes)
115
+ end
116
+
117
+ # Builds the object from hash
118
+ # @param [Hash] attributes Model attributes in the form of hash
119
+ # @return [Object] Returns the model itself
120
+ def build_from_hash(attributes)
121
+ return nil unless attributes.is_a?(Hash)
122
+ self.class.openapi_types.each_pair do |key, type|
123
+ if type =~ /\AArray<(.*)>/i
124
+ # check to ensure the input is an array given that the attribute
125
+ # is documented as an array but the input is not
126
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
127
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
128
+ end
129
+ elsif !attributes[self.class.attribute_map[key]].nil?
130
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
131
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
132
+ end
133
+
134
+ self
135
+ end
136
+
137
+ # Deserializes the data based on type
138
+ # @param string type Data type
139
+ # @param string value Value to be deserialized
140
+ # @return [Object] Deserialized data
141
+ def _deserialize(type, value)
142
+ case type.to_sym
143
+ when :DateTime
144
+ DateTime.parse(parse_date(value))
145
+ when :Date
146
+ Date.parse(parse_date(value))
147
+ when :String
148
+ value.to_s
149
+ when :Integer
150
+ value.to_i
151
+ when :Float
152
+ value.to_f
153
+ when :BigDecimal
154
+ BigDecimal(value.to_s)
155
+ when :Boolean
156
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
157
+ true
158
+ else
159
+ false
160
+ end
161
+ when :Object
162
+ # generic object (usually a Hash), return directly
163
+ value
164
+ when /\AArray<(?<inner_type>.+)>\z/
165
+ inner_type = Regexp.last_match[:inner_type]
166
+ value.map { |v| _deserialize(inner_type, v) }
167
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
168
+ k_type = Regexp.last_match[:k_type]
169
+ v_type = Regexp.last_match[:v_type]
170
+ {}.tap do |hash|
171
+ value.each do |k, v|
172
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
173
+ end
174
+ end
175
+ else # model
176
+ XeroRuby::PayrollUk.const_get(type).build_from_hash(value)
177
+ end
178
+ end
179
+
180
+ # Returns the string representation of the object
181
+ # @return [String] String presentation of the object
182
+ def to_s
183
+ to_hash.to_s
184
+ end
185
+
186
+ # to_body is an alias to to_hash (backward compatibility)
187
+ # @return [Hash] Returns the object in the form of hash
188
+ def to_body
189
+ to_hash
190
+ end
191
+
192
+ # Returns the object in the form of hash
193
+ # @return [Hash] Returns the object in the form of hash
194
+ def to_hash
195
+ hash = {}
196
+ self.class.attribute_map.each_pair do |attr, param|
197
+ value = self.send(attr)
198
+ next if value.nil?
199
+ hash[param] = _to_hash(value)
200
+ end
201
+ hash
202
+ end
203
+
204
+ # Outputs non-array value in the form of hash
205
+ # For object, use to_hash. Otherwise, just return the value
206
+ # @param [Object] value Any valid value
207
+ # @return [Hash] Returns the value in the form of hash
208
+ def _to_hash(value)
209
+ if value.is_a?(Array)
210
+ value.compact.map { |v| _to_hash(v) }
211
+ elsif value.is_a?(Hash)
212
+ {}.tap do |hash|
213
+ value.each { |k, v| hash[k] = _to_hash(v) }
214
+ end
215
+ elsif value.respond_to? :to_hash
216
+ value.to_hash
217
+ else
218
+ value
219
+ end
220
+ end
221
+
222
+ # customized data_parser
223
+ def parse_date(datestring)
224
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
225
+ return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
226
+ end
227
+ end
228
+ end