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