xero-ruby 2.3.1 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (451) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +29 -4
  3. data/lib/xero-ruby.rb +10 -1
  4. data/lib/xero-ruby/api/accounting_api.rb +84 -3
  5. data/lib/xero-ruby/api/asset_api.rb +0 -1
  6. data/lib/xero-ruby/api/files_api.rb +0 -1
  7. data/lib/xero-ruby/api/payroll_au_api.rb +0 -1
  8. data/lib/xero-ruby/api/payroll_nz_api.rb +0 -1
  9. data/lib/xero-ruby/api/payroll_uk_api.rb +0 -1
  10. data/lib/xero-ruby/api/project_api.rb +3 -1
  11. data/lib/xero-ruby/api_client.rb +34 -27
  12. data/lib/xero-ruby/api_error.rb +3 -3
  13. data/lib/xero-ruby/configuration.rb +0 -1
  14. data/lib/xero-ruby/models/accounting/account.rb +9 -6
  15. data/lib/xero-ruby/models/accounting/account_type.rb +0 -1
  16. data/lib/xero-ruby/models/accounting/accounts.rb +9 -6
  17. data/lib/xero-ruby/models/accounting/accounts_payable.rb +9 -6
  18. data/lib/xero-ruby/models/accounting/accounts_receivable.rb +9 -6
  19. data/lib/xero-ruby/models/accounting/action.rb +9 -6
  20. data/lib/xero-ruby/models/accounting/actions.rb +9 -6
  21. data/lib/xero-ruby/models/accounting/address.rb +11 -9
  22. data/lib/xero-ruby/models/accounting/address_for_organisation.rb +473 -0
  23. data/lib/xero-ruby/models/accounting/allocation.rb +9 -6
  24. data/lib/xero-ruby/models/accounting/allocations.rb +9 -6
  25. data/lib/xero-ruby/models/accounting/attachment.rb +9 -6
  26. data/lib/xero-ruby/models/accounting/attachments.rb +9 -6
  27. data/lib/xero-ruby/models/accounting/balance_details.rb +232 -0
  28. data/lib/xero-ruby/models/accounting/balances.rb +9 -6
  29. data/lib/xero-ruby/models/accounting/bank_transaction.rb +9 -6
  30. data/lib/xero-ruby/models/accounting/bank_transactions.rb +9 -6
  31. data/lib/xero-ruby/models/accounting/bank_transfer.rb +9 -6
  32. data/lib/xero-ruby/models/accounting/bank_transfers.rb +9 -6
  33. data/lib/xero-ruby/models/accounting/batch_payment.rb +14 -11
  34. data/lib/xero-ruby/models/accounting/batch_payment_details.rb +9 -6
  35. data/lib/xero-ruby/models/accounting/batch_payments.rb +9 -6
  36. data/lib/xero-ruby/models/accounting/bill.rb +9 -6
  37. data/lib/xero-ruby/models/accounting/branding_theme.rb +9 -6
  38. data/lib/xero-ruby/models/accounting/branding_themes.rb +9 -6
  39. data/lib/xero-ruby/models/accounting/cis_org_setting.rb +10 -7
  40. data/lib/xero-ruby/models/accounting/cis_setting.rb +10 -7
  41. data/lib/xero-ruby/models/accounting/cis_settings.rb +9 -6
  42. data/lib/xero-ruby/models/accounting/contact.rb +9 -6
  43. data/lib/xero-ruby/models/accounting/contact_group.rb +9 -6
  44. data/lib/xero-ruby/models/accounting/contact_groups.rb +9 -6
  45. data/lib/xero-ruby/models/accounting/contact_person.rb +9 -6
  46. data/lib/xero-ruby/models/accounting/contacts.rb +9 -6
  47. data/lib/xero-ruby/models/accounting/conversion_balances.rb +234 -0
  48. data/lib/xero-ruby/models/accounting/conversion_date.rb +222 -0
  49. data/lib/xero-ruby/models/accounting/country_code.rb +0 -1
  50. data/lib/xero-ruby/models/accounting/credit_note.rb +40 -7
  51. data/lib/xero-ruby/models/accounting/credit_notes.rb +9 -6
  52. data/lib/xero-ruby/models/accounting/currencies.rb +9 -6
  53. data/lib/xero-ruby/models/accounting/currency.rb +9 -6
  54. data/lib/xero-ruby/models/accounting/currency_code.rb +0 -1
  55. data/lib/xero-ruby/models/accounting/element.rb +9 -6
  56. data/lib/xero-ruby/models/accounting/employee.rb +9 -6
  57. data/lib/xero-ruby/models/accounting/employees.rb +9 -6
  58. data/lib/xero-ruby/models/accounting/error.rb +9 -6
  59. data/lib/xero-ruby/models/accounting/expense_claim.rb +9 -6
  60. data/lib/xero-ruby/models/accounting/expense_claims.rb +9 -6
  61. data/lib/xero-ruby/models/accounting/external_link.rb +9 -6
  62. data/lib/xero-ruby/models/accounting/history_record.rb +9 -6
  63. data/lib/xero-ruby/models/accounting/history_records.rb +9 -6
  64. data/lib/xero-ruby/models/accounting/import_summary.rb +222 -0
  65. data/lib/xero-ruby/models/accounting/import_summary_accounts.rb +292 -0
  66. data/lib/xero-ruby/models/accounting/import_summary_object.rb +211 -0
  67. data/lib/xero-ruby/models/accounting/import_summary_organisation.rb +211 -0
  68. data/lib/xero-ruby/models/accounting/invoice.rb +21 -23
  69. data/lib/xero-ruby/models/accounting/invoice_reminder.rb +9 -6
  70. data/lib/xero-ruby/models/accounting/invoice_reminders.rb +9 -6
  71. data/lib/xero-ruby/models/accounting/invoices.rb +9 -6
  72. data/lib/xero-ruby/models/accounting/item.rb +9 -6
  73. data/lib/xero-ruby/models/accounting/items.rb +9 -6
  74. data/lib/xero-ruby/models/accounting/journal.rb +9 -6
  75. data/lib/xero-ruby/models/accounting/journal_line.rb +9 -6
  76. data/lib/xero-ruby/models/accounting/journals.rb +9 -6
  77. data/lib/xero-ruby/models/accounting/line_amount_types.rb +0 -1
  78. data/lib/xero-ruby/models/accounting/line_item.rb +9 -6
  79. data/lib/xero-ruby/models/accounting/line_item_tracking.rb +9 -6
  80. data/lib/xero-ruby/models/accounting/linked_transaction.rb +9 -6
  81. data/lib/xero-ruby/models/accounting/linked_transactions.rb +9 -6
  82. data/lib/xero-ruby/models/accounting/manual_journal.rb +9 -6
  83. data/lib/xero-ruby/models/accounting/manual_journal_line.rb +9 -6
  84. data/lib/xero-ruby/models/accounting/manual_journals.rb +9 -6
  85. data/lib/xero-ruby/models/accounting/online_invoice.rb +9 -6
  86. data/lib/xero-ruby/models/accounting/online_invoices.rb +9 -6
  87. data/lib/xero-ruby/models/accounting/organisation.rb +10 -7
  88. data/lib/xero-ruby/models/accounting/organisations.rb +9 -6
  89. data/lib/xero-ruby/models/accounting/overpayment.rb +9 -6
  90. data/lib/xero-ruby/models/accounting/overpayments.rb +9 -6
  91. data/lib/xero-ruby/models/accounting/payment.rb +9 -6
  92. data/lib/xero-ruby/models/accounting/payment_delete.rb +9 -6
  93. data/lib/xero-ruby/models/accounting/payment_service.rb +9 -6
  94. data/lib/xero-ruby/models/accounting/payment_services.rb +9 -6
  95. data/lib/xero-ruby/models/accounting/payment_term.rb +9 -6
  96. data/lib/xero-ruby/models/accounting/payment_term_type.rb +0 -1
  97. data/lib/xero-ruby/models/accounting/payments.rb +9 -6
  98. data/lib/xero-ruby/models/accounting/phone.rb +9 -6
  99. data/lib/xero-ruby/models/accounting/prepayment.rb +9 -6
  100. data/lib/xero-ruby/models/accounting/prepayments.rb +9 -6
  101. data/lib/xero-ruby/models/accounting/purchase.rb +9 -6
  102. data/lib/xero-ruby/models/accounting/purchase_order.rb +9 -6
  103. data/lib/xero-ruby/models/accounting/purchase_orders.rb +9 -6
  104. data/lib/xero-ruby/models/accounting/quote.rb +9 -6
  105. data/lib/xero-ruby/models/accounting/quote_line_amount_types.rb +0 -1
  106. data/lib/xero-ruby/models/accounting/quote_status_codes.rb +0 -1
  107. data/lib/xero-ruby/models/accounting/quotes.rb +9 -6
  108. data/lib/xero-ruby/models/accounting/receipt.rb +9 -6
  109. data/lib/xero-ruby/models/accounting/receipts.rb +9 -6
  110. data/lib/xero-ruby/models/accounting/repeating_invoice.rb +9 -6
  111. data/lib/xero-ruby/models/accounting/repeating_invoices.rb +9 -6
  112. data/lib/xero-ruby/models/accounting/report.rb +9 -6
  113. data/lib/xero-ruby/models/accounting/report_attribute.rb +9 -6
  114. data/lib/xero-ruby/models/accounting/report_cell.rb +9 -6
  115. data/lib/xero-ruby/models/accounting/report_fields.rb +9 -6
  116. data/lib/xero-ruby/models/accounting/report_row.rb +9 -6
  117. data/lib/xero-ruby/models/accounting/report_rows.rb +9 -6
  118. data/lib/xero-ruby/models/accounting/report_with_row.rb +9 -6
  119. data/lib/xero-ruby/models/accounting/report_with_rows.rb +9 -6
  120. data/lib/xero-ruby/models/accounting/reports.rb +9 -6
  121. data/lib/xero-ruby/models/accounting/request_empty.rb +9 -6
  122. data/lib/xero-ruby/models/accounting/row_type.rb +0 -1
  123. data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +9 -6
  124. data/lib/xero-ruby/models/accounting/schedule.rb +9 -6
  125. data/lib/xero-ruby/models/accounting/setup.rb +235 -0
  126. data/lib/xero-ruby/models/accounting/tax_component.rb +9 -6
  127. data/lib/xero-ruby/models/accounting/tax_rate.rb +9 -6
  128. data/lib/xero-ruby/models/accounting/tax_rates.rb +9 -6
  129. data/lib/xero-ruby/models/accounting/tax_type.rb +0 -1
  130. data/lib/xero-ruby/models/accounting/ten_ninety_nine_contact.rb +9 -6
  131. data/lib/xero-ruby/models/accounting/time_zone.rb +0 -1
  132. data/lib/xero-ruby/models/accounting/tracking_categories.rb +9 -6
  133. data/lib/xero-ruby/models/accounting/tracking_category.rb +9 -6
  134. data/lib/xero-ruby/models/accounting/tracking_option.rb +9 -6
  135. data/lib/xero-ruby/models/accounting/tracking_options.rb +9 -6
  136. data/lib/xero-ruby/models/accounting/user.rb +9 -6
  137. data/lib/xero-ruby/models/accounting/users.rb +9 -6
  138. data/lib/xero-ruby/models/accounting/validation_error.rb +9 -6
  139. data/lib/xero-ruby/models/assets/asset.rb +20 -7
  140. data/lib/xero-ruby/models/assets/asset_status.rb +0 -1
  141. data/lib/xero-ruby/models/assets/asset_status_query_param.rb +0 -1
  142. data/lib/xero-ruby/models/assets/asset_type.rb +9 -6
  143. data/lib/xero-ruby/models/assets/assets.rb +9 -6
  144. data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +9 -6
  145. data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +9 -6
  146. data/lib/xero-ruby/models/assets/error.rb +9 -6
  147. data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +9 -6
  148. data/lib/xero-ruby/models/assets/pagination.rb +9 -6
  149. data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +9 -6
  150. data/lib/xero-ruby/models/assets/setting.rb +9 -6
  151. data/lib/xero-ruby/models/files/association.rb +9 -6
  152. data/lib/xero-ruby/models/files/file_object.rb +20 -17
  153. data/lib/xero-ruby/models/files/file_response204.rb +9 -6
  154. data/lib/xero-ruby/models/files/files.rb +9 -6
  155. data/lib/xero-ruby/models/files/folder.rb +9 -6
  156. data/lib/xero-ruby/models/files/folders.rb +9 -6
  157. data/lib/xero-ruby/models/files/inline_object.rb +9 -6
  158. data/lib/xero-ruby/models/files/object_group.rb +0 -1
  159. data/lib/xero-ruby/models/files/object_type.rb +53 -32
  160. data/lib/xero-ruby/models/files/user.rb +32 -94
  161. data/lib/xero-ruby/models/payroll_au/account.rb +9 -6
  162. data/lib/xero-ruby/models/payroll_au/account_type.rb +0 -1
  163. data/lib/xero-ruby/models/payroll_au/allowance_type.rb +0 -1
  164. data/lib/xero-ruby/models/payroll_au/api_exception.rb +9 -6
  165. data/lib/xero-ruby/models/payroll_au/bank_account.rb +9 -6
  166. data/lib/xero-ruby/models/payroll_au/calendar_type.rb +0 -1
  167. data/lib/xero-ruby/models/payroll_au/deduction_line.rb +9 -6
  168. data/lib/xero-ruby/models/payroll_au/deduction_type.rb +9 -6
  169. data/lib/xero-ruby/models/payroll_au/deduction_type_calculation_type.rb +0 -1
  170. data/lib/xero-ruby/models/payroll_au/earnings_line.rb +9 -6
  171. data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +9 -6
  172. data/lib/xero-ruby/models/payroll_au/earnings_rate_calculation_type.rb +0 -1
  173. data/lib/xero-ruby/models/payroll_au/earnings_type.rb +1 -1
  174. data/lib/xero-ruby/models/payroll_au/employee.rb +9 -6
  175. data/lib/xero-ruby/models/payroll_au/employee_status.rb +0 -1
  176. data/lib/xero-ruby/models/payroll_au/employees.rb +9 -6
  177. data/lib/xero-ruby/models/payroll_au/employment_basis.rb +0 -1
  178. data/lib/xero-ruby/models/payroll_au/employment_termination_payment_type.rb +0 -1
  179. data/lib/xero-ruby/models/payroll_au/entitlement_final_pay_payout_type.rb +0 -1
  180. data/lib/xero-ruby/models/payroll_au/home_address.rb +9 -6
  181. data/lib/xero-ruby/models/payroll_au/leave_accrual_line.rb +9 -6
  182. data/lib/xero-ruby/models/payroll_au/leave_application.rb +9 -6
  183. data/lib/xero-ruby/models/payroll_au/leave_applications.rb +9 -6
  184. data/lib/xero-ruby/models/payroll_au/leave_balance.rb +9 -6
  185. data/lib/xero-ruby/models/payroll_au/leave_earnings_line.rb +9 -6
  186. data/lib/xero-ruby/models/payroll_au/leave_line.rb +9 -6
  187. data/lib/xero-ruby/models/payroll_au/leave_line_calculation_type.rb +0 -1
  188. data/lib/xero-ruby/models/payroll_au/leave_lines.rb +9 -6
  189. data/lib/xero-ruby/models/payroll_au/leave_period.rb +9 -6
  190. data/lib/xero-ruby/models/payroll_au/leave_period_status.rb +0 -1
  191. data/lib/xero-ruby/models/payroll_au/leave_type.rb +9 -6
  192. data/lib/xero-ruby/models/payroll_au/leave_type_contribution_type.rb +0 -1
  193. data/lib/xero-ruby/models/payroll_au/manual_tax_type.rb +0 -1
  194. data/lib/xero-ruby/models/payroll_au/opening_balances.rb +9 -6
  195. data/lib/xero-ruby/models/payroll_au/pay_item.rb +9 -6
  196. data/lib/xero-ruby/models/payroll_au/pay_items.rb +9 -6
  197. data/lib/xero-ruby/models/payroll_au/pay_run.rb +9 -6
  198. data/lib/xero-ruby/models/payroll_au/pay_run_status.rb +0 -1
  199. data/lib/xero-ruby/models/payroll_au/pay_runs.rb +9 -6
  200. data/lib/xero-ruby/models/payroll_au/pay_template.rb +9 -6
  201. data/lib/xero-ruby/models/payroll_au/payment_frequency_type.rb +0 -1
  202. data/lib/xero-ruby/models/payroll_au/payroll_calendar.rb +9 -6
  203. data/lib/xero-ruby/models/payroll_au/payroll_calendars.rb +9 -6
  204. data/lib/xero-ruby/models/payroll_au/payslip.rb +9 -6
  205. data/lib/xero-ruby/models/payroll_au/payslip_lines.rb +9 -6
  206. data/lib/xero-ruby/models/payroll_au/payslip_object.rb +9 -6
  207. data/lib/xero-ruby/models/payroll_au/payslip_summary.rb +9 -6
  208. data/lib/xero-ruby/models/payroll_au/payslips.rb +9 -6
  209. data/lib/xero-ruby/models/payroll_au/rate_type.rb +0 -1
  210. data/lib/xero-ruby/models/payroll_au/reimbursement_line.rb +9 -6
  211. data/lib/xero-ruby/models/payroll_au/reimbursement_lines.rb +9 -6
  212. data/lib/xero-ruby/models/payroll_au/reimbursement_type.rb +9 -6
  213. data/lib/xero-ruby/models/payroll_au/residency_status.rb +0 -1
  214. data/lib/xero-ruby/models/payroll_au/settings.rb +9 -6
  215. data/lib/xero-ruby/models/payroll_au/settings_object.rb +9 -6
  216. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories.rb +9 -6
  217. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_employee_groups.rb +9 -6
  218. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_timesheet_categories.rb +9 -6
  219. data/lib/xero-ruby/models/payroll_au/state.rb +0 -1
  220. data/lib/xero-ruby/models/payroll_au/super_fund.rb +9 -6
  221. data/lib/xero-ruby/models/payroll_au/super_fund_product.rb +9 -6
  222. data/lib/xero-ruby/models/payroll_au/super_fund_products.rb +9 -6
  223. data/lib/xero-ruby/models/payroll_au/super_fund_type.rb +0 -1
  224. data/lib/xero-ruby/models/payroll_au/super_funds.rb +9 -6
  225. data/lib/xero-ruby/models/payroll_au/super_line.rb +9 -6
  226. data/lib/xero-ruby/models/payroll_au/super_membership.rb +9 -6
  227. data/lib/xero-ruby/models/payroll_au/superannuation_calculation_type.rb +0 -1
  228. data/lib/xero-ruby/models/payroll_au/superannuation_contribution_type.rb +0 -1
  229. data/lib/xero-ruby/models/payroll_au/superannuation_line.rb +9 -6
  230. data/lib/xero-ruby/models/payroll_au/tax_declaration.rb +9 -6
  231. data/lib/xero-ruby/models/payroll_au/tax_line.rb +9 -6
  232. data/lib/xero-ruby/models/payroll_au/tfn_exemption_type.rb +0 -1
  233. data/lib/xero-ruby/models/payroll_au/timesheet.rb +9 -6
  234. data/lib/xero-ruby/models/payroll_au/timesheet_line.rb +9 -6
  235. data/lib/xero-ruby/models/payroll_au/timesheet_object.rb +9 -6
  236. data/lib/xero-ruby/models/payroll_au/timesheet_status.rb +0 -1
  237. data/lib/xero-ruby/models/payroll_au/timesheets.rb +9 -6
  238. data/lib/xero-ruby/models/payroll_au/validation_error.rb +9 -6
  239. data/lib/xero-ruby/models/payroll_nz/account.rb +9 -6
  240. data/lib/xero-ruby/models/payroll_nz/accounts.rb +9 -6
  241. data/lib/xero-ruby/models/payroll_nz/address.rb +9 -6
  242. data/lib/xero-ruby/models/payroll_nz/bank_account.rb +9 -6
  243. data/lib/xero-ruby/models/payroll_nz/benefit.rb +9 -6
  244. data/lib/xero-ruby/models/payroll_nz/calendar_type.rb +41 -0
  245. data/lib/xero-ruby/models/payroll_nz/deduction.rb +9 -6
  246. data/lib/xero-ruby/models/payroll_nz/deduction_line.rb +9 -6
  247. data/lib/xero-ruby/models/payroll_nz/deduction_object.rb +9 -6
  248. data/lib/xero-ruby/models/payroll_nz/deductions.rb +9 -6
  249. data/lib/xero-ruby/models/payroll_nz/earnings_line.rb +9 -6
  250. data/lib/xero-ruby/models/payroll_nz/earnings_order.rb +9 -6
  251. data/lib/xero-ruby/models/payroll_nz/earnings_order_object.rb +9 -6
  252. data/lib/xero-ruby/models/payroll_nz/earnings_orders.rb +9 -6
  253. data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +22 -14
  254. data/lib/xero-ruby/models/payroll_nz/earnings_rate_object.rb +9 -6
  255. data/lib/xero-ruby/models/payroll_nz/earnings_rates.rb +9 -6
  256. data/lib/xero-ruby/models/payroll_nz/earnings_template.rb +9 -6
  257. data/lib/xero-ruby/models/payroll_nz/earnings_template_object.rb +9 -6
  258. data/lib/xero-ruby/models/payroll_nz/employee.rb +9 -6
  259. data/lib/xero-ruby/models/payroll_nz/employee_earnings_templates.rb +9 -6
  260. data/lib/xero-ruby/models/payroll_nz/employee_leave.rb +9 -6
  261. data/lib/xero-ruby/models/payroll_nz/employee_leave_balance.rb +9 -6
  262. data/lib/xero-ruby/models/payroll_nz/employee_leave_balances.rb +9 -6
  263. data/lib/xero-ruby/models/payroll_nz/employee_leave_object.rb +9 -6
  264. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup.rb +9 -6
  265. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup_object.rb +9 -6
  266. data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +9 -6
  267. data/lib/xero-ruby/models/payroll_nz/employee_leave_type_object.rb +9 -6
  268. data/lib/xero-ruby/models/payroll_nz/employee_leave_types.rb +9 -6
  269. data/lib/xero-ruby/models/payroll_nz/employee_leaves.rb +9 -6
  270. data/lib/xero-ruby/models/payroll_nz/employee_object.rb +9 -6
  271. data/lib/xero-ruby/models/payroll_nz/employee_opening_balance.rb +9 -6
  272. data/lib/xero-ruby/models/payroll_nz/employee_opening_balances_object.rb +9 -6
  273. data/lib/xero-ruby/models/payroll_nz/employee_pay_template.rb +9 -6
  274. data/lib/xero-ruby/models/payroll_nz/employee_pay_template_object.rb +9 -6
  275. data/lib/xero-ruby/models/payroll_nz/employee_pay_templates.rb +9 -6
  276. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +9 -6
  277. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance_object.rb +9 -6
  278. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +9 -6
  279. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leaves_summaries.rb +9 -6
  280. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave.rb +9 -6
  281. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave_object.rb +9 -6
  282. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leaves.rb +9 -6
  283. data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +9 -6
  284. data/lib/xero-ruby/models/payroll_nz/employee_tax_object.rb +9 -6
  285. data/lib/xero-ruby/models/payroll_nz/employees.rb +9 -6
  286. data/lib/xero-ruby/models/payroll_nz/employment.rb +9 -6
  287. data/lib/xero-ruby/models/payroll_nz/employment_object.rb +9 -6
  288. data/lib/xero-ruby/models/payroll_nz/gross_earnings_history.rb +9 -6
  289. data/lib/xero-ruby/models/payroll_nz/invalid_field.rb +9 -6
  290. data/lib/xero-ruby/models/payroll_nz/leave_accrual_line.rb +9 -6
  291. data/lib/xero-ruby/models/payroll_nz/leave_earnings_line.rb +9 -6
  292. data/lib/xero-ruby/models/payroll_nz/leave_period.rb +9 -6
  293. data/lib/xero-ruby/models/payroll_nz/leave_periods.rb +9 -6
  294. data/lib/xero-ruby/models/payroll_nz/leave_type.rb +9 -6
  295. data/lib/xero-ruby/models/payroll_nz/leave_type_object.rb +9 -6
  296. data/lib/xero-ruby/models/payroll_nz/leave_types.rb +9 -6
  297. data/lib/xero-ruby/models/payroll_nz/pagination.rb +9 -6
  298. data/lib/xero-ruby/models/payroll_nz/pay_run.rb +11 -26
  299. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar.rb +11 -48
  300. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar_object.rb +9 -6
  301. data/lib/xero-ruby/models/payroll_nz/pay_run_calendars.rb +9 -6
  302. data/lib/xero-ruby/models/payroll_nz/pay_run_object.rb +9 -6
  303. data/lib/xero-ruby/models/payroll_nz/pay_runs.rb +9 -6
  304. data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +9 -6
  305. data/lib/xero-ruby/models/payroll_nz/pay_slip_object.rb +9 -6
  306. data/lib/xero-ruby/models/payroll_nz/pay_slips.rb +9 -6
  307. data/lib/xero-ruby/models/payroll_nz/payment_line.rb +9 -6
  308. data/lib/xero-ruby/models/payroll_nz/payment_method.rb +9 -11
  309. data/lib/xero-ruby/models/payroll_nz/payment_method_object.rb +9 -6
  310. data/lib/xero-ruby/models/payroll_nz/problem.rb +9 -6
  311. data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +9 -6
  312. data/lib/xero-ruby/models/payroll_nz/reimbursement_line.rb +9 -6
  313. data/lib/xero-ruby/models/payroll_nz/reimbursement_object.rb +9 -6
  314. data/lib/xero-ruby/models/payroll_nz/reimbursements.rb +9 -6
  315. data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +10 -12
  316. data/lib/xero-ruby/models/payroll_nz/salary_and_wage_object.rb +9 -6
  317. data/lib/xero-ruby/models/payroll_nz/salary_and_wages.rb +9 -6
  318. data/lib/xero-ruby/models/payroll_nz/settings.rb +9 -6
  319. data/lib/xero-ruby/models/payroll_nz/statutory_deduction.rb +9 -6
  320. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_category.rb +0 -1
  321. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_line.rb +9 -6
  322. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_object.rb +9 -6
  323. data/lib/xero-ruby/models/payroll_nz/statutory_deductions.rb +9 -6
  324. data/lib/xero-ruby/models/payroll_nz/superannuation_line.rb +9 -6
  325. data/lib/xero-ruby/models/payroll_nz/superannuation_object.rb +9 -6
  326. data/lib/xero-ruby/models/payroll_nz/superannuations.rb +9 -6
  327. data/lib/xero-ruby/models/payroll_nz/tax_code.rb +0 -1
  328. data/lib/xero-ruby/models/payroll_nz/tax_line.rb +9 -6
  329. data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +10 -7
  330. data/lib/xero-ruby/models/payroll_nz/timesheet.rb +9 -6
  331. data/lib/xero-ruby/models/payroll_nz/timesheet_earnings_line.rb +9 -6
  332. data/lib/xero-ruby/models/payroll_nz/timesheet_line.rb +9 -6
  333. data/lib/xero-ruby/models/payroll_nz/timesheet_line_object.rb +9 -6
  334. data/lib/xero-ruby/models/payroll_nz/timesheet_object.rb +9 -6
  335. data/lib/xero-ruby/models/payroll_nz/timesheets.rb +9 -6
  336. data/lib/xero-ruby/models/payroll_nz/tracking_categories.rb +9 -6
  337. data/lib/xero-ruby/models/payroll_nz/tracking_category.rb +9 -6
  338. data/lib/xero-ruby/models/payroll_uk/account.rb +9 -6
  339. data/lib/xero-ruby/models/payroll_uk/accounts.rb +9 -6
  340. data/lib/xero-ruby/models/payroll_uk/address.rb +9 -6
  341. data/lib/xero-ruby/models/payroll_uk/bank_account.rb +9 -6
  342. data/lib/xero-ruby/models/payroll_uk/benefit.rb +9 -6
  343. data/lib/xero-ruby/models/payroll_uk/benefit_line.rb +9 -6
  344. data/lib/xero-ruby/models/payroll_uk/benefit_object.rb +9 -6
  345. data/lib/xero-ruby/models/payroll_uk/benefits.rb +9 -6
  346. data/lib/xero-ruby/models/payroll_uk/court_order_line.rb +9 -6
  347. data/lib/xero-ruby/models/payroll_uk/deduction.rb +9 -6
  348. data/lib/xero-ruby/models/payroll_uk/deduction_line.rb +9 -6
  349. data/lib/xero-ruby/models/payroll_uk/deduction_object.rb +9 -6
  350. data/lib/xero-ruby/models/payroll_uk/deductions.rb +9 -6
  351. data/lib/xero-ruby/models/payroll_uk/earnings_line.rb +9 -6
  352. data/lib/xero-ruby/models/payroll_uk/earnings_order.rb +9 -6
  353. data/lib/xero-ruby/models/payroll_uk/earnings_order_object.rb +9 -6
  354. data/lib/xero-ruby/models/payroll_uk/earnings_orders.rb +9 -6
  355. data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +9 -6
  356. data/lib/xero-ruby/models/payroll_uk/earnings_rate_object.rb +9 -6
  357. data/lib/xero-ruby/models/payroll_uk/earnings_rates.rb +9 -6
  358. data/lib/xero-ruby/models/payroll_uk/earnings_template.rb +9 -6
  359. data/lib/xero-ruby/models/payroll_uk/earnings_template_object.rb +9 -6
  360. data/lib/xero-ruby/models/payroll_uk/employee.rb +9 -6
  361. data/lib/xero-ruby/models/payroll_uk/employee_leave.rb +9 -6
  362. data/lib/xero-ruby/models/payroll_uk/employee_leave_balance.rb +9 -6
  363. data/lib/xero-ruby/models/payroll_uk/employee_leave_balances.rb +9 -6
  364. data/lib/xero-ruby/models/payroll_uk/employee_leave_object.rb +9 -6
  365. data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +9 -6
  366. data/lib/xero-ruby/models/payroll_uk/employee_leave_type_object.rb +9 -6
  367. data/lib/xero-ruby/models/payroll_uk/employee_leave_types.rb +9 -6
  368. data/lib/xero-ruby/models/payroll_uk/employee_leaves.rb +9 -6
  369. data/lib/xero-ruby/models/payroll_uk/employee_object.rb +9 -6
  370. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances.rb +9 -6
  371. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances_object.rb +9 -6
  372. data/lib/xero-ruby/models/payroll_uk/employee_pay_template.rb +9 -6
  373. data/lib/xero-ruby/models/payroll_uk/employee_pay_template_object.rb +9 -6
  374. data/lib/xero-ruby/models/payroll_uk/employee_pay_templates.rb +9 -6
  375. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +9 -6
  376. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance_object.rb +9 -6
  377. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +9 -6
  378. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leaves_summaries.rb +9 -6
  379. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave.rb +9 -6
  380. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave_object.rb +9 -6
  381. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leaves.rb +9 -6
  382. data/lib/xero-ruby/models/payroll_uk/employee_tax.rb +9 -6
  383. data/lib/xero-ruby/models/payroll_uk/employee_tax_object.rb +9 -6
  384. data/lib/xero-ruby/models/payroll_uk/employees.rb +9 -6
  385. data/lib/xero-ruby/models/payroll_uk/employment.rb +9 -6
  386. data/lib/xero-ruby/models/payroll_uk/employment_object.rb +9 -6
  387. data/lib/xero-ruby/models/payroll_uk/invalid_field.rb +9 -6
  388. data/lib/xero-ruby/models/payroll_uk/leave_accrual_line.rb +9 -6
  389. data/lib/xero-ruby/models/payroll_uk/leave_earnings_line.rb +9 -6
  390. data/lib/xero-ruby/models/payroll_uk/leave_period.rb +9 -6
  391. data/lib/xero-ruby/models/payroll_uk/leave_periods.rb +9 -6
  392. data/lib/xero-ruby/models/payroll_uk/leave_type.rb +9 -6
  393. data/lib/xero-ruby/models/payroll_uk/leave_type_object.rb +9 -6
  394. data/lib/xero-ruby/models/payroll_uk/leave_types.rb +9 -6
  395. data/lib/xero-ruby/models/payroll_uk/pagination.rb +9 -6
  396. data/lib/xero-ruby/models/payroll_uk/pay_run.rb +9 -6
  397. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +9 -6
  398. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar_object.rb +9 -6
  399. data/lib/xero-ruby/models/payroll_uk/pay_run_calendars.rb +9 -6
  400. data/lib/xero-ruby/models/payroll_uk/pay_run_object.rb +9 -6
  401. data/lib/xero-ruby/models/payroll_uk/pay_runs.rb +9 -6
  402. data/lib/xero-ruby/models/payroll_uk/payment_line.rb +9 -6
  403. data/lib/xero-ruby/models/payroll_uk/payment_method.rb +9 -6
  404. data/lib/xero-ruby/models/payroll_uk/payment_method_object.rb +9 -6
  405. data/lib/xero-ruby/models/payroll_uk/payslip.rb +22 -7
  406. data/lib/xero-ruby/models/payroll_uk/payslip_object.rb +9 -6
  407. data/lib/xero-ruby/models/payroll_uk/payslips.rb +9 -6
  408. data/lib/xero-ruby/models/payroll_uk/problem.rb +9 -6
  409. data/lib/xero-ruby/models/payroll_uk/reimbursement.rb +9 -6
  410. data/lib/xero-ruby/models/payroll_uk/reimbursement_line.rb +9 -6
  411. data/lib/xero-ruby/models/payroll_uk/reimbursement_object.rb +9 -6
  412. data/lib/xero-ruby/models/payroll_uk/reimbursements.rb +9 -6
  413. data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +9 -6
  414. data/lib/xero-ruby/models/payroll_uk/salary_and_wage_object.rb +9 -6
  415. data/lib/xero-ruby/models/payroll_uk/salary_and_wages.rb +9 -6
  416. data/lib/xero-ruby/models/payroll_uk/settings.rb +9 -6
  417. data/lib/xero-ruby/models/payroll_uk/statutory_deduction.rb +9 -6
  418. data/lib/xero-ruby/models/payroll_uk/statutory_deduction_category.rb +0 -1
  419. data/lib/xero-ruby/models/payroll_uk/tax_line.rb +9 -6
  420. data/lib/xero-ruby/models/payroll_uk/timesheet.rb +9 -6
  421. data/lib/xero-ruby/models/payroll_uk/timesheet_earnings_line.rb +9 -6
  422. data/lib/xero-ruby/models/payroll_uk/timesheet_line.rb +9 -6
  423. data/lib/xero-ruby/models/payroll_uk/timesheet_line_object.rb +9 -6
  424. data/lib/xero-ruby/models/payroll_uk/timesheet_object.rb +9 -6
  425. data/lib/xero-ruby/models/payroll_uk/timesheets.rb +9 -6
  426. data/lib/xero-ruby/models/payroll_uk/tracking_categories.rb +9 -6
  427. data/lib/xero-ruby/models/payroll_uk/tracking_category.rb +9 -6
  428. data/lib/xero-ruby/models/projects/amount.rb +9 -6
  429. data/lib/xero-ruby/models/projects/charge_type.rb +0 -1
  430. data/lib/xero-ruby/models/projects/currency_code.rb +0 -1
  431. data/lib/xero-ruby/models/projects/error.rb +9 -6
  432. data/lib/xero-ruby/models/projects/pagination.rb +9 -6
  433. data/lib/xero-ruby/models/projects/project.rb +9 -6
  434. data/lib/xero-ruby/models/projects/project_create_or_update.rb +9 -6
  435. data/lib/xero-ruby/models/projects/project_patch.rb +9 -6
  436. data/lib/xero-ruby/models/projects/project_status.rb +0 -1
  437. data/lib/xero-ruby/models/projects/project_user.rb +9 -6
  438. data/lib/xero-ruby/models/projects/project_users.rb +9 -6
  439. data/lib/xero-ruby/models/projects/projects.rb +9 -6
  440. data/lib/xero-ruby/models/projects/task.rb +9 -6
  441. data/lib/xero-ruby/models/projects/task_create_or_update.rb +9 -6
  442. data/lib/xero-ruby/models/projects/tasks.rb +9 -6
  443. data/lib/xero-ruby/models/projects/time_entries.rb +9 -6
  444. data/lib/xero-ruby/models/projects/time_entry.rb +9 -6
  445. data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +9 -6
  446. data/lib/xero-ruby/version.rb +2 -2
  447. data/spec/api_client_spec.rb +101 -13
  448. data/spec/api_error_spec.rb +45 -0
  449. data/spec/configuration_spec.rb +9 -16
  450. data/spec/helper_methods_spec.rb +70 -0
  451. metadata +19 -5
@@ -3,7 +3,6 @@
3
3
 
4
4
  #This is the Xero Payroll API for orgs in Australia region.
5
5
 
6
- The version of the OpenAPI document: 2.4.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -3,7 +3,6 @@
3
3
 
4
4
  #This is the Xero Payroll API for orgs in Australia region.
5
5
 
6
- The version of the OpenAPI document: 2.4.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -173,12 +172,13 @@ module XeroRuby::PayrollAu
173
172
 
174
173
  # Returns the object in the form of hash
175
174
  # @return [Hash] Returns the object in the form of hash
176
- def to_hash
175
+ def to_hash(downcase: true)
177
176
  hash = {}
178
177
  self.class.attribute_map.each_pair do |attr, param|
179
178
  value = self.send(attr)
180
179
  next if value.nil?
181
- hash[param] = _to_hash(value)
180
+ key = downcase ? attr : param
181
+ hash[key] = _to_hash(value)
182
182
  end
183
183
  hash
184
184
  end
@@ -201,10 +201,13 @@ module XeroRuby::PayrollAu
201
201
  end
202
202
  end
203
203
 
204
- # customized data_parser
205
204
  def parse_date(datestring)
206
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
207
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
205
+ if datestring.include?('Date')
206
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
207
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
208
+ else # handle date 'types' for small subset of payroll API's
209
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
210
+ end
208
211
  end
209
212
  end
210
213
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #This is the Xero Payroll API for orgs in Australia region.
5
5
 
6
- The version of the OpenAPI document: 2.4.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -171,12 +170,13 @@ module XeroRuby::PayrollAu
171
170
 
172
171
  # Returns the object in the form of hash
173
172
  # @return [Hash] Returns the object in the form of hash
174
- def to_hash
173
+ def to_hash(downcase: true)
175
174
  hash = {}
176
175
  self.class.attribute_map.each_pair do |attr, param|
177
176
  value = self.send(attr)
178
177
  next if value.nil?
179
- hash[param] = _to_hash(value)
178
+ key = downcase ? attr : param
179
+ hash[key] = _to_hash(value)
180
180
  end
181
181
  hash
182
182
  end
@@ -199,10 +199,13 @@ module XeroRuby::PayrollAu
199
199
  end
200
200
  end
201
201
 
202
- # customized data_parser
203
202
  def parse_date(datestring)
204
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
205
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
203
+ if datestring.include?('Date')
204
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
205
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
206
+ else # handle date 'types' for small subset of payroll API's
207
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
208
+ end
206
209
  end
207
210
  end
208
211
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #This is the Xero Payroll API for orgs in the NZ region.
5
5
 
6
- The version of the OpenAPI document: 2.4.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -239,12 +238,13 @@ module XeroRuby::PayrollNz
239
238
 
240
239
  # Returns the object in the form of hash
241
240
  # @return [Hash] Returns the object in the form of hash
242
- def to_hash
241
+ def to_hash(downcase: true)
243
242
  hash = {}
244
243
  self.class.attribute_map.each_pair do |attr, param|
245
244
  value = self.send(attr)
246
245
  next if value.nil?
247
- hash[param] = _to_hash(value)
246
+ key = downcase ? attr : param
247
+ hash[key] = _to_hash(value)
248
248
  end
249
249
  hash
250
250
  end
@@ -267,10 +267,13 @@ module XeroRuby::PayrollNz
267
267
  end
268
268
  end
269
269
 
270
- # customized data_parser
271
270
  def parse_date(datestring)
272
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
273
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
271
+ if datestring.include?('Date')
272
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
273
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
274
+ else # handle date 'types' for small subset of payroll API's
275
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
276
+ end
274
277
  end
275
278
  end
276
279
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #This is the Xero Payroll API for orgs in the NZ region.
5
5
 
6
- The version of the OpenAPI document: 2.4.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -173,12 +172,13 @@ module XeroRuby::PayrollNz
173
172
 
174
173
  # Returns the object in the form of hash
175
174
  # @return [Hash] Returns the object in the form of hash
176
- def to_hash
175
+ def to_hash(downcase: true)
177
176
  hash = {}
178
177
  self.class.attribute_map.each_pair do |attr, param|
179
178
  value = self.send(attr)
180
179
  next if value.nil?
181
- hash[param] = _to_hash(value)
180
+ key = downcase ? attr : param
181
+ hash[key] = _to_hash(value)
182
182
  end
183
183
  hash
184
184
  end
@@ -201,10 +201,13 @@ module XeroRuby::PayrollNz
201
201
  end
202
202
  end
203
203
 
204
- # customized data_parser
205
204
  def parse_date(datestring)
206
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
207
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
205
+ if datestring.include?('Date')
206
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
207
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
208
+ else # handle date 'types' for small subset of payroll API's
209
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
210
+ end
208
211
  end
209
212
  end
210
213
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #This is the Xero Payroll API for orgs in the NZ region.
5
5
 
6
- The version of the OpenAPI document: 2.4.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -236,12 +235,13 @@ module XeroRuby::PayrollNz
236
235
 
237
236
  # Returns the object in the form of hash
238
237
  # @return [Hash] Returns the object in the form of hash
239
- def to_hash
238
+ def to_hash(downcase: true)
240
239
  hash = {}
241
240
  self.class.attribute_map.each_pair do |attr, param|
242
241
  value = self.send(attr)
243
242
  next if value.nil?
244
- hash[param] = _to_hash(value)
243
+ key = downcase ? attr : param
244
+ hash[key] = _to_hash(value)
245
245
  end
246
246
  hash
247
247
  end
@@ -264,10 +264,13 @@ module XeroRuby::PayrollNz
264
264
  end
265
265
  end
266
266
 
267
- # customized data_parser
268
267
  def parse_date(datestring)
269
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
270
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
268
+ if datestring.include?('Date')
269
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
270
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
271
+ else # handle date 'types' for small subset of payroll API's
272
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
273
+ end
271
274
  end
272
275
  end
273
276
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #This is the Xero Payroll API for orgs in the NZ region.
5
5
 
6
- The version of the OpenAPI document: 2.4.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -292,12 +291,13 @@ module XeroRuby::PayrollNz
292
291
 
293
292
  # Returns the object in the form of hash
294
293
  # @return [Hash] Returns the object in the form of hash
295
- def to_hash
294
+ def to_hash(downcase: true)
296
295
  hash = {}
297
296
  self.class.attribute_map.each_pair do |attr, param|
298
297
  value = self.send(attr)
299
298
  next if value.nil?
300
- hash[param] = _to_hash(value)
299
+ key = downcase ? attr : param
300
+ hash[key] = _to_hash(value)
301
301
  end
302
302
  hash
303
303
  end
@@ -320,10 +320,13 @@ module XeroRuby::PayrollNz
320
320
  end
321
321
  end
322
322
 
323
- # customized data_parser
324
323
  def parse_date(datestring)
325
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
326
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
324
+ if datestring.include?('Date')
325
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
326
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
327
+ else # handle date 'types' for small subset of payroll API's
328
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
329
+ end
327
330
  end
328
331
  end
329
332
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #This is the Xero Payroll API for orgs in the NZ region.
5
5
 
6
- The version of the OpenAPI document: 2.4.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -332,12 +331,13 @@ module XeroRuby::PayrollNz
332
331
 
333
332
  # Returns the object in the form of hash
334
333
  # @return [Hash] Returns the object in the form of hash
335
- def to_hash
334
+ def to_hash(downcase: true)
336
335
  hash = {}
337
336
  self.class.attribute_map.each_pair do |attr, param|
338
337
  value = self.send(attr)
339
338
  next if value.nil?
340
- hash[param] = _to_hash(value)
339
+ key = downcase ? attr : param
340
+ hash[key] = _to_hash(value)
341
341
  end
342
342
  hash
343
343
  end
@@ -360,10 +360,13 @@ module XeroRuby::PayrollNz
360
360
  end
361
361
  end
362
362
 
363
- # customized data_parser
364
363
  def parse_date(datestring)
365
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
366
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
364
+ if datestring.include?('Date')
365
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
366
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
367
+ else # handle date 'types' for small subset of payroll API's
368
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
369
+ end
367
370
  end
368
371
  end
369
372
  end
@@ -0,0 +1,41 @@
1
+ =begin
2
+ #Xero Payroll NZ
3
+
4
+ #This is the Xero Payroll API for orgs in the NZ region.
5
+
6
+ Contact: api@xero.com
7
+ Generated by: https://openapi-generator.tech
8
+ OpenAPI Generator version: 4.3.1
9
+
10
+ =end
11
+
12
+ require 'time'
13
+ require 'date'
14
+
15
+ module XeroRuby::PayrollNz
16
+ class CalendarType
17
+ WEEKLY = "Weekly".freeze
18
+ FORTNIGHTLY = "Fortnightly".freeze
19
+ FOUR_WEEKLY = "FourWeekly".freeze
20
+ MONTHLY = "Monthly".freeze
21
+ ANNUAL = "Annual".freeze
22
+ QUARTERLY = "Quarterly".freeze
23
+ TWICE_MONTHLY = "TwiceMonthly".freeze
24
+
25
+ # Builds the enum from string
26
+ # @param [String] The enum value in the form of the string
27
+ # @return [String] The enum value
28
+ def self.build_from_hash(value)
29
+ new.build_from_hash(value)
30
+ end
31
+
32
+ # Builds the enum from string
33
+ # @param [String] The enum value in the form of the string
34
+ # @return [String] The enum value
35
+ def build_from_hash(value)
36
+ constantValues = CalendarType.constants.select { |c| CalendarType::const_get(c) == value }
37
+ raise "Invalid ENUM value #{value} for class #CalendarType" if constantValues.empty?
38
+ value
39
+ end
40
+ end
41
+ end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #This is the Xero Payroll API for orgs in the NZ region.
5
5
 
6
- The version of the OpenAPI document: 2.4.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -274,12 +273,13 @@ module XeroRuby::PayrollNz
274
273
 
275
274
  # Returns the object in the form of hash
276
275
  # @return [Hash] Returns the object in the form of hash
277
- def to_hash
276
+ def to_hash(downcase: true)
278
277
  hash = {}
279
278
  self.class.attribute_map.each_pair do |attr, param|
280
279
  value = self.send(attr)
281
280
  next if value.nil?
282
- hash[param] = _to_hash(value)
281
+ key = downcase ? attr : param
282
+ hash[key] = _to_hash(value)
283
283
  end
284
284
  hash
285
285
  end
@@ -302,10 +302,13 @@ module XeroRuby::PayrollNz
302
302
  end
303
303
  end
304
304
 
305
- # customized data_parser
306
305
  def parse_date(datestring)
307
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
308
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
306
+ if datestring.include?('Date')
307
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
308
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
309
+ else # handle date 'types' for small subset of payroll API's
310
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
311
+ end
309
312
  end
310
313
  end
311
314
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #This is the Xero Payroll API for orgs in the NZ region.
5
5
 
6
- The version of the OpenAPI document: 2.4.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -211,12 +210,13 @@ module XeroRuby::PayrollNz
211
210
 
212
211
  # Returns the object in the form of hash
213
212
  # @return [Hash] Returns the object in the form of hash
214
- def to_hash
213
+ def to_hash(downcase: true)
215
214
  hash = {}
216
215
  self.class.attribute_map.each_pair do |attr, param|
217
216
  value = self.send(attr)
218
217
  next if value.nil?
219
- hash[param] = _to_hash(value)
218
+ key = downcase ? attr : param
219
+ hash[key] = _to_hash(value)
220
220
  end
221
221
  hash
222
222
  end
@@ -239,10 +239,13 @@ module XeroRuby::PayrollNz
239
239
  end
240
240
  end
241
241
 
242
- # customized data_parser
243
242
  def parse_date(datestring)
244
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
245
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
243
+ if datestring.include?('Date')
244
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
245
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
246
+ else # handle date 'types' for small subset of payroll API's
247
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
248
+ end
246
249
  end
247
250
  end
248
251
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #This is the Xero Payroll API for orgs in the NZ region.
5
5
 
6
- The version of the OpenAPI document: 2.4.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -191,12 +190,13 @@ module XeroRuby::PayrollNz
191
190
 
192
191
  # Returns the object in the form of hash
193
192
  # @return [Hash] Returns the object in the form of hash
194
- def to_hash
193
+ def to_hash(downcase: true)
195
194
  hash = {}
196
195
  self.class.attribute_map.each_pair do |attr, param|
197
196
  value = self.send(attr)
198
197
  next if value.nil?
199
- hash[param] = _to_hash(value)
198
+ key = downcase ? attr : param
199
+ hash[key] = _to_hash(value)
200
200
  end
201
201
  hash
202
202
  end
@@ -219,10 +219,13 @@ module XeroRuby::PayrollNz
219
219
  end
220
220
  end
221
221
 
222
- # customized data_parser
223
222
  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
223
+ if datestring.include?('Date')
224
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
225
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
226
+ else # handle date 'types' for small subset of payroll API's
227
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
228
+ end
226
229
  end
227
230
  end
228
231
  end