xero-ruby 2.4.1 → 3.2.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.
- checksums.yaml +4 -4
- data/README.md +240 -189
- data/lib/xero-ruby.rb +10 -4
- data/lib/xero-ruby/api/accounting_api.rb +1308 -920
- data/lib/xero-ruby/api/asset_api.rb +15 -14
- data/lib/xero-ruby/api/files_api.rb +204 -85
- data/lib/xero-ruby/api/payroll_au_api.rb +121 -93
- data/lib/xero-ruby/api/payroll_nz_api.rb +307 -240
- data/lib/xero-ruby/api/payroll_uk_api.rb +317 -254
- data/lib/xero-ruby/api/project_api.rb +71 -59
- data/lib/xero-ruby/api_client.rb +182 -128
- data/lib/xero-ruby/api_error.rb +4 -4
- data/lib/xero-ruby/configuration.rb +17 -5
- data/lib/xero-ruby/models/accounting/account.rb +25 -12
- data/lib/xero-ruby/models/accounting/account_type.rb +1 -2
- data/lib/xero-ruby/models/accounting/accounts.rb +25 -11
- data/lib/xero-ruby/models/accounting/accounts_payable.rb +25 -11
- data/lib/xero-ruby/models/accounting/accounts_receivable.rb +25 -11
- data/lib/xero-ruby/models/accounting/action.rb +25 -11
- data/lib/xero-ruby/models/accounting/actions.rb +25 -11
- data/lib/xero-ruby/models/accounting/address.rb +27 -14
- data/lib/xero-ruby/models/accounting/address_for_organisation.rb +484 -0
- data/lib/xero-ruby/models/accounting/allocation.rb +25 -11
- data/lib/xero-ruby/models/accounting/allocations.rb +25 -11
- data/lib/xero-ruby/models/accounting/attachment.rb +25 -11
- data/lib/xero-ruby/models/accounting/attachments.rb +25 -11
- data/lib/xero-ruby/models/accounting/balance_details.rb +25 -11
- data/lib/xero-ruby/models/accounting/balances.rb +25 -11
- data/lib/xero-ruby/models/accounting/bank_transaction.rb +25 -11
- data/lib/xero-ruby/models/accounting/bank_transactions.rb +25 -11
- data/lib/xero-ruby/models/accounting/bank_transfer.rb +25 -11
- data/lib/xero-ruby/models/accounting/bank_transfers.rb +25 -11
- data/lib/xero-ruby/models/accounting/batch_payment.rb +41 -15
- data/lib/xero-ruby/models/accounting/batch_payment_details.rb +25 -11
- data/lib/xero-ruby/models/accounting/batch_payments.rb +25 -11
- data/lib/xero-ruby/models/accounting/bill.rb +25 -11
- data/lib/xero-ruby/models/accounting/branding_theme.rb +25 -11
- data/lib/xero-ruby/models/accounting/branding_themes.rb +25 -11
- data/lib/xero-ruby/models/accounting/budget.rb +327 -0
- data/lib/xero-ruby/models/accounting/budget_balance.rb +267 -0
- data/lib/xero-ruby/models/accounting/budget_line.rb +244 -0
- data/lib/xero-ruby/models/{files/file_response204.rb → accounting/budgets.rb} +40 -24
- data/lib/xero-ruby/models/accounting/cis_org_setting.rb +26 -12
- data/lib/xero-ruby/models/accounting/cis_org_settings.rb +224 -0
- data/lib/xero-ruby/models/accounting/cis_setting.rb +26 -12
- data/lib/xero-ruby/models/accounting/cis_settings.rb +25 -11
- data/lib/xero-ruby/models/accounting/contact.rb +25 -11
- data/lib/xero-ruby/models/accounting/contact_group.rb +25 -11
- data/lib/xero-ruby/models/accounting/contact_groups.rb +25 -11
- data/lib/xero-ruby/models/accounting/contact_person.rb +25 -11
- data/lib/xero-ruby/models/accounting/contacts.rb +25 -11
- data/lib/xero-ruby/models/accounting/conversion_balances.rb +25 -11
- data/lib/xero-ruby/models/accounting/conversion_date.rb +25 -11
- data/lib/xero-ruby/models/accounting/country_code.rb +1 -2
- data/lib/xero-ruby/models/accounting/credit_note.rb +62 -16
- data/lib/xero-ruby/models/accounting/credit_notes.rb +25 -11
- data/lib/xero-ruby/models/accounting/currencies.rb +25 -11
- data/lib/xero-ruby/models/accounting/currency.rb +25 -11
- data/lib/xero-ruby/models/accounting/currency_code.rb +1 -2
- data/lib/xero-ruby/models/accounting/element.rb +25 -11
- data/lib/xero-ruby/models/accounting/employee.rb +25 -11
- data/lib/xero-ruby/models/accounting/employees.rb +25 -11
- data/lib/xero-ruby/models/accounting/error.rb +25 -11
- data/lib/xero-ruby/models/accounting/expense_claim.rb +25 -11
- data/lib/xero-ruby/models/accounting/expense_claims.rb +25 -11
- data/lib/xero-ruby/models/accounting/external_link.rb +25 -11
- data/lib/xero-ruby/models/accounting/history_record.rb +25 -11
- data/lib/xero-ruby/models/accounting/history_records.rb +25 -11
- data/lib/xero-ruby/models/accounting/import_summary.rb +25 -11
- data/lib/xero-ruby/models/accounting/import_summary_accounts.rb +33 -19
- data/lib/xero-ruby/models/accounting/import_summary_object.rb +25 -11
- data/lib/xero-ruby/models/accounting/import_summary_organisation.rb +25 -11
- data/lib/xero-ruby/models/accounting/invoice.rb +37 -28
- data/lib/xero-ruby/models/accounting/invoice_reminder.rb +25 -11
- data/lib/xero-ruby/models/accounting/invoice_reminders.rb +25 -11
- data/lib/xero-ruby/models/accounting/invoices.rb +25 -11
- data/lib/xero-ruby/models/accounting/item.rb +25 -11
- data/lib/xero-ruby/models/accounting/items.rb +25 -11
- data/lib/xero-ruby/models/accounting/journal.rb +25 -11
- data/lib/xero-ruby/models/accounting/journal_line.rb +25 -11
- data/lib/xero-ruby/models/accounting/journals.rb +25 -11
- data/lib/xero-ruby/models/accounting/line_amount_types.rb +1 -2
- data/lib/xero-ruby/models/accounting/line_item.rb +36 -12
- data/lib/xero-ruby/models/accounting/line_item_tracking.rb +25 -11
- data/lib/xero-ruby/models/accounting/linked_transaction.rb +25 -11
- data/lib/xero-ruby/models/accounting/linked_transactions.rb +25 -11
- data/lib/xero-ruby/models/accounting/manual_journal.rb +25 -11
- data/lib/xero-ruby/models/accounting/manual_journal_line.rb +25 -11
- data/lib/xero-ruby/models/accounting/manual_journals.rb +25 -11
- data/lib/xero-ruby/models/accounting/online_invoice.rb +25 -11
- data/lib/xero-ruby/models/accounting/online_invoices.rb +25 -11
- data/lib/xero-ruby/models/accounting/organisation.rb +26 -14
- data/lib/xero-ruby/models/accounting/organisations.rb +25 -11
- data/lib/xero-ruby/models/accounting/overpayment.rb +25 -11
- data/lib/xero-ruby/models/accounting/overpayments.rb +25 -11
- data/lib/xero-ruby/models/accounting/payment.rb +36 -12
- data/lib/xero-ruby/models/accounting/payment_delete.rb +25 -11
- data/lib/xero-ruby/models/accounting/payment_service.rb +25 -11
- data/lib/xero-ruby/models/accounting/payment_services.rb +25 -11
- data/lib/xero-ruby/models/accounting/payment_term.rb +25 -11
- data/lib/xero-ruby/models/accounting/payment_term_type.rb +1 -2
- data/lib/xero-ruby/models/accounting/payments.rb +25 -11
- data/lib/xero-ruby/models/accounting/phone.rb +25 -11
- data/lib/xero-ruby/models/accounting/prepayment.rb +38 -12
- data/lib/xero-ruby/models/accounting/prepayments.rb +25 -11
- data/lib/xero-ruby/models/accounting/purchase.rb +25 -11
- data/lib/xero-ruby/models/accounting/purchase_order.rb +25 -11
- data/lib/xero-ruby/models/accounting/purchase_orders.rb +25 -11
- data/lib/xero-ruby/models/accounting/quote.rb +25 -11
- data/lib/xero-ruby/models/accounting/quote_line_amount_types.rb +1 -2
- data/lib/xero-ruby/models/accounting/quote_status_codes.rb +1 -2
- data/lib/xero-ruby/models/accounting/quotes.rb +25 -11
- data/lib/xero-ruby/models/accounting/receipt.rb +25 -11
- data/lib/xero-ruby/models/accounting/receipts.rb +25 -11
- data/lib/xero-ruby/models/accounting/repeating_invoice.rb +25 -11
- data/lib/xero-ruby/models/accounting/repeating_invoices.rb +25 -11
- data/lib/xero-ruby/models/accounting/report.rb +26 -22
- data/lib/xero-ruby/models/accounting/report_attribute.rb +25 -11
- data/lib/xero-ruby/models/accounting/report_cell.rb +25 -11
- data/lib/xero-ruby/models/accounting/report_fields.rb +25 -11
- data/lib/xero-ruby/models/accounting/report_row.rb +25 -11
- data/lib/xero-ruby/models/accounting/report_rows.rb +25 -11
- data/lib/xero-ruby/models/accounting/report_with_row.rb +26 -12
- data/lib/xero-ruby/models/accounting/report_with_rows.rb +25 -11
- data/lib/xero-ruby/models/accounting/reports.rb +25 -11
- data/lib/xero-ruby/models/accounting/request_empty.rb +25 -11
- data/lib/xero-ruby/models/accounting/row_type.rb +1 -2
- data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +25 -11
- data/lib/xero-ruby/models/accounting/schedule.rb +25 -11
- data/lib/xero-ruby/models/accounting/setup.rb +25 -11
- data/lib/xero-ruby/models/accounting/tax_component.rb +25 -11
- data/lib/xero-ruby/models/accounting/tax_rate.rb +25 -11
- data/lib/xero-ruby/models/accounting/tax_rates.rb +25 -11
- data/lib/xero-ruby/models/accounting/tax_type.rb +1 -2
- data/lib/xero-ruby/models/accounting/ten_ninety_nine_contact.rb +25 -11
- data/lib/xero-ruby/models/accounting/time_zone.rb +1 -2
- data/lib/xero-ruby/models/accounting/tracking_categories.rb +25 -11
- data/lib/xero-ruby/models/accounting/tracking_category.rb +25 -11
- data/lib/xero-ruby/models/accounting/tracking_option.rb +25 -11
- data/lib/xero-ruby/models/accounting/tracking_options.rb +25 -11
- data/lib/xero-ruby/models/accounting/user.rb +25 -11
- data/lib/xero-ruby/models/accounting/users.rb +25 -11
- data/lib/xero-ruby/models/accounting/validation_error.rb +25 -11
- data/lib/xero-ruby/models/assets/asset.rb +25 -11
- data/lib/xero-ruby/models/assets/asset_status.rb +1 -2
- data/lib/xero-ruby/models/assets/asset_status_query_param.rb +1 -2
- data/lib/xero-ruby/models/assets/asset_type.rb +25 -11
- data/lib/xero-ruby/models/assets/assets.rb +25 -11
- data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +25 -11
- data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +25 -11
- data/lib/xero-ruby/models/assets/error.rb +25 -11
- data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +26 -12
- data/lib/xero-ruby/models/assets/pagination.rb +25 -11
- data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +26 -12
- data/lib/xero-ruby/models/assets/setting.rb +25 -11
- data/lib/xero-ruby/models/files/association.rb +25 -11
- data/lib/xero-ruby/models/files/file_object.rb +25 -11
- data/lib/xero-ruby/models/files/files.rb +25 -11
- data/lib/xero-ruby/models/files/folder.rb +25 -11
- data/lib/xero-ruby/models/files/folders.rb +25 -11
- data/lib/xero-ruby/models/files/object_group.rb +1 -2
- data/lib/xero-ruby/models/files/object_type.rb +1 -2
- data/lib/xero-ruby/models/files/{inline_object.rb → upload_object.rb} +43 -14
- data/lib/xero-ruby/models/files/user.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/account.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/account_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/allowance_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/api_exception.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/bank_account.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/calendar_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/deduction_line.rb +25 -16
- data/lib/xero-ruby/models/payroll_au/deduction_type.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/deduction_type_calculation_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/earnings_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/earnings_rate_calculation_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/earnings_type.rb +2 -2
- data/lib/xero-ruby/models/payroll_au/employee.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/employee_status.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/employees.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/employment_basis.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/employment_termination_payment_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/entitlement_final_pay_payout_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/home_address.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_accrual_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_application.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_applications.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_balance.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_earnings_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_line_calculation_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/leave_lines.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_period.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_period_status.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/leave_type.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_type_contribution_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/manual_tax_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/opening_balances.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/pay_item.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/pay_items.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/pay_run.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/pay_run_status.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/pay_runs.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/pay_template.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payment_frequency_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/payroll_calendar.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payroll_calendars.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payslip.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payslip_lines.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payslip_object.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payslip_summary.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payslips.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/rate_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/reimbursement_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/reimbursement_lines.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/reimbursement_type.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/residency_status.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/settings.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/settings_object.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/settings_tracking_categories.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_employee_groups.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_timesheet_categories.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/state.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/super_fund.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/super_fund_product.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/super_fund_products.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/super_fund_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/super_funds.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/super_line.rb +26 -12
- data/lib/xero-ruby/models/payroll_au/super_membership.rb +26 -12
- data/lib/xero-ruby/models/payroll_au/superannuation_calculation_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/superannuation_contribution_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/superannuation_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/tax_declaration.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/tax_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/tfn_exemption_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/timesheet.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/timesheet_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/timesheet_object.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/timesheet_status.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/timesheets.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/validation_error.rb +25 -11
- data/lib/xero-ruby/models/payroll_nz/account.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/accounts.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/address.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/bank_account.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/benefit.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/calendar_type.rb +0 -1
- data/lib/xero-ruby/models/payroll_nz/deduction.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/deduction_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/deduction_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/deductions.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_nz/earnings_order.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_order_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_orders.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_rate_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_rates.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_template.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_template_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_earnings_templates.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_balance.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_balances.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_setup.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_setup_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_type_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_types.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leaves.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_opening_balance.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_opening_balances_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_pay_template.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_pay_template_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_pay_templates.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leaves_summaries.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave.rb +25 -11
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leaves.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_tax_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employees.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employment.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employment_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/gross_earnings_history.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/invalid_field.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/leave_accrual_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/leave_earnings_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_nz/leave_period.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/leave_periods.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/leave_type.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/leave_type_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/leave_types.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pagination.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_run.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_run_calendar.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_run_calendar_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_run_calendars.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_run_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_runs.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_slip_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_slips.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/payment_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/payment_method.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/payment_method_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/problem.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/reimbursement_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/reimbursement_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/reimbursements.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +28 -13
- data/lib/xero-ruby/models/payroll_nz/salary_and_wage_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/salary_and_wages.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/settings.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction_category.rb +0 -1
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/statutory_deductions.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/superannuation_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_nz/superannuation_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/superannuations.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/tax_code.rb +0 -1
- data/lib/xero-ruby/models/payroll_nz/tax_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/timesheet.rb +28 -13
- data/lib/xero-ruby/models/payroll_nz/timesheet_earnings_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_nz/timesheet_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/timesheet_line_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/timesheet_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/timesheets.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/tracking_categories.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/tracking_category.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/account.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/accounts.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/address.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/bank_account.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/benefit.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/benefit_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/benefit_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/benefits.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/court_order_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/deduction.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/deduction_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/deduction_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/deductions.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_order.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_order_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_orders.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +34 -12
- data/lib/xero-ruby/models/payroll_uk/earnings_rate_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_rates.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_template.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_template_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave_balance.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave_balances.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave_type_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave_types.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leaves.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_opening_balances.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_opening_balances_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_pay_template.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_pay_template_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_pay_templates.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leaves_summaries.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave.rb +25 -11
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leaves.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_tax.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_tax_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employees.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employment.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employment_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/invalid_field.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_accrual_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_earnings_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_period.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_periods.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_type.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_type_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_types.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pagination.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pay_run.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pay_run_calendar_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pay_run_calendars.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pay_run_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pay_runs.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/payment_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/payment_method.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/payment_method_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/payslip.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/payslip_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/payslips.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/problem.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/reimbursement.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/reimbursement_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/reimbursement_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/reimbursements.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +27 -12
- data/lib/xero-ruby/models/payroll_uk/salary_and_wage_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/salary_and_wages.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/settings.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/statutory_deduction.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/statutory_deduction_category.rb +0 -1
- data/lib/xero-ruby/models/payroll_uk/tax_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/timesheet.rb +25 -11
- data/lib/xero-ruby/models/payroll_uk/timesheet_earnings_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/timesheet_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/timesheet_line_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/timesheet_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/timesheets.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/tracking_categories.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/tracking_category.rb +24 -10
- data/lib/xero-ruby/models/projects/amount.rb +24 -10
- data/lib/xero-ruby/models/projects/charge_type.rb +0 -1
- data/lib/xero-ruby/models/projects/currency_code.rb +0 -1
- data/lib/xero-ruby/models/projects/error.rb +24 -10
- data/lib/xero-ruby/models/projects/pagination.rb +24 -10
- data/lib/xero-ruby/models/projects/project.rb +24 -10
- data/lib/xero-ruby/models/projects/project_create_or_update.rb +24 -10
- data/lib/xero-ruby/models/projects/project_patch.rb +24 -10
- data/lib/xero-ruby/models/projects/project_status.rb +0 -1
- data/lib/xero-ruby/models/projects/project_user.rb +24 -10
- data/lib/xero-ruby/models/projects/project_users.rb +24 -10
- data/lib/xero-ruby/models/projects/projects.rb +24 -10
- data/lib/xero-ruby/models/projects/task.rb +24 -10
- data/lib/xero-ruby/models/projects/task_create_or_update.rb +24 -10
- data/lib/xero-ruby/models/projects/tasks.rb +24 -10
- data/lib/xero-ruby/models/projects/time_entries.rb +24 -10
- data/lib/xero-ruby/models/projects/time_entry.rb +27 -12
- data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +24 -10
- data/lib/xero-ruby/string_serialization.rb +52 -0
- data/lib/xero-ruby/version.rb +3 -3
- data/lib/xero-ruby/where.rb +65 -0
- data/spec/api_client_spec.rb +292 -14
- data/spec/api_error_spec.rb +45 -0
- data/spec/configuration_spec.rb +26 -16
- data/spec/files/models/inline_object_spec.rb +3 -3
- data/spec/helper_methods_spec.rb +110 -0
- data/spec/where_spec.rb +82 -0
- metadata +43 -12
- data/spec/files/models/file_response204_spec.rb +0 -41
@@ -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.6.0
|
7
6
|
Contact: api@xero.com
|
8
7
|
Generated by: https://openapi-generator.tech
|
9
8
|
OpenAPI Generator version: 4.3.1
|
@@ -17,7 +16,7 @@ module XeroRuby::PayrollNz
|
|
17
16
|
require 'bigdecimal'
|
18
17
|
|
19
18
|
class SuperannuationLine
|
20
|
-
# Xero identifier for payroll
|
19
|
+
# Xero identifier for payroll superannuation type
|
21
20
|
attr_accessor :superannuation_type_id
|
22
21
|
|
23
22
|
# Benefit display name
|
@@ -221,38 +220,53 @@ module XeroRuby::PayrollNz
|
|
221
220
|
|
222
221
|
# Returns the object in the form of hash
|
223
222
|
# @return [Hash] Returns the object in the form of hash
|
224
|
-
def to_hash
|
223
|
+
def to_hash(downcase: false)
|
225
224
|
hash = {}
|
226
225
|
self.class.attribute_map.each_pair do |attr, param|
|
227
226
|
value = self.send(attr)
|
228
227
|
next if value.nil?
|
229
|
-
|
228
|
+
key = downcase ? attr : param
|
229
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
230
230
|
end
|
231
231
|
hash
|
232
232
|
end
|
233
233
|
|
234
|
+
# Returns the object in the form of hash with snake_case
|
235
|
+
def to_attributes
|
236
|
+
to_hash(downcase: true)
|
237
|
+
end
|
238
|
+
|
234
239
|
# Outputs non-array value in the form of hash
|
235
240
|
# For object, use to_hash. Otherwise, just return the value
|
236
241
|
# @param [Object] value Any valid value
|
237
242
|
# @return [Hash] Returns the value in the form of hash
|
238
|
-
def _to_hash(value)
|
243
|
+
def _to_hash(value, downcase: false)
|
239
244
|
if value.is_a?(Array)
|
240
|
-
value.
|
245
|
+
value.map do |v|
|
246
|
+
v.to_hash(downcase: downcase)
|
247
|
+
end
|
241
248
|
elsif value.is_a?(Hash)
|
242
249
|
{}.tap do |hash|
|
243
|
-
value.
|
250
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
244
251
|
end
|
245
252
|
elsif value.respond_to? :to_hash
|
246
|
-
value.to_hash
|
253
|
+
value.to_hash(downcase: downcase)
|
247
254
|
else
|
248
255
|
value
|
249
256
|
end
|
250
257
|
end
|
251
258
|
|
252
|
-
# customized data_parser
|
253
259
|
def parse_date(datestring)
|
254
|
-
|
255
|
-
|
260
|
+
if datestring.include?('Date')
|
261
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
262
|
+
original, date, timezone = *date_pattern.match(datestring)
|
263
|
+
date = (date.to_i / 1000)
|
264
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
265
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
266
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
267
|
+
else # handle date 'types' for small subset of payroll API's
|
268
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
269
|
+
end
|
256
270
|
end
|
257
271
|
end
|
258
272
|
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.6.0
|
7
6
|
Contact: api@xero.com
|
8
7
|
Generated by: https://openapi-generator.tech
|
9
8
|
OpenAPI Generator version: 4.3.1
|
@@ -191,38 +190,53 @@ 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: false)
|
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
|
-
|
198
|
+
key = downcase ? attr : param
|
199
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
200
200
|
end
|
201
201
|
hash
|
202
202
|
end
|
203
203
|
|
204
|
+
# Returns the object in the form of hash with snake_case
|
205
|
+
def to_attributes
|
206
|
+
to_hash(downcase: true)
|
207
|
+
end
|
208
|
+
|
204
209
|
# Outputs non-array value in the form of hash
|
205
210
|
# For object, use to_hash. Otherwise, just return the value
|
206
211
|
# @param [Object] value Any valid value
|
207
212
|
# @return [Hash] Returns the value in the form of hash
|
208
|
-
def _to_hash(value)
|
213
|
+
def _to_hash(value, downcase: false)
|
209
214
|
if value.is_a?(Array)
|
210
|
-
value.
|
215
|
+
value.map do |v|
|
216
|
+
v.to_hash(downcase: downcase)
|
217
|
+
end
|
211
218
|
elsif value.is_a?(Hash)
|
212
219
|
{}.tap do |hash|
|
213
|
-
value.
|
220
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
214
221
|
end
|
215
222
|
elsif value.respond_to? :to_hash
|
216
|
-
value.to_hash
|
223
|
+
value.to_hash(downcase: downcase)
|
217
224
|
else
|
218
225
|
value
|
219
226
|
end
|
220
227
|
end
|
221
228
|
|
222
|
-
# customized data_parser
|
223
229
|
def parse_date(datestring)
|
224
|
-
|
225
|
-
|
230
|
+
if datestring.include?('Date')
|
231
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
232
|
+
original, date, timezone = *date_pattern.match(datestring)
|
233
|
+
date = (date.to_i / 1000)
|
234
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
235
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
236
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
237
|
+
else # handle date 'types' for small subset of payroll API's
|
238
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
239
|
+
end
|
226
240
|
end
|
227
241
|
end
|
228
242
|
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.6.0
|
7
6
|
Contact: api@xero.com
|
8
7
|
Generated by: https://openapi-generator.tech
|
9
8
|
OpenAPI Generator version: 4.3.1
|
@@ -193,38 +192,53 @@ module XeroRuby::PayrollNz
|
|
193
192
|
|
194
193
|
# Returns the object in the form of hash
|
195
194
|
# @return [Hash] Returns the object in the form of hash
|
196
|
-
def to_hash
|
195
|
+
def to_hash(downcase: false)
|
197
196
|
hash = {}
|
198
197
|
self.class.attribute_map.each_pair do |attr, param|
|
199
198
|
value = self.send(attr)
|
200
199
|
next if value.nil?
|
201
|
-
|
200
|
+
key = downcase ? attr : param
|
201
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
202
202
|
end
|
203
203
|
hash
|
204
204
|
end
|
205
205
|
|
206
|
+
# Returns the object in the form of hash with snake_case
|
207
|
+
def to_attributes
|
208
|
+
to_hash(downcase: true)
|
209
|
+
end
|
210
|
+
|
206
211
|
# Outputs non-array value in the form of hash
|
207
212
|
# For object, use to_hash. Otherwise, just return the value
|
208
213
|
# @param [Object] value Any valid value
|
209
214
|
# @return [Hash] Returns the value in the form of hash
|
210
|
-
def _to_hash(value)
|
215
|
+
def _to_hash(value, downcase: false)
|
211
216
|
if value.is_a?(Array)
|
212
|
-
value.
|
217
|
+
value.map do |v|
|
218
|
+
v.to_hash(downcase: downcase)
|
219
|
+
end
|
213
220
|
elsif value.is_a?(Hash)
|
214
221
|
{}.tap do |hash|
|
215
|
-
value.
|
222
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
216
223
|
end
|
217
224
|
elsif value.respond_to? :to_hash
|
218
|
-
value.to_hash
|
225
|
+
value.to_hash(downcase: downcase)
|
219
226
|
else
|
220
227
|
value
|
221
228
|
end
|
222
229
|
end
|
223
230
|
|
224
|
-
# customized data_parser
|
225
231
|
def parse_date(datestring)
|
226
|
-
|
227
|
-
|
232
|
+
if datestring.include?('Date')
|
233
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
234
|
+
original, date, timezone = *date_pattern.match(datestring)
|
235
|
+
date = (date.to_i / 1000)
|
236
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
237
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
238
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
239
|
+
else # handle date 'types' for small subset of payroll API's
|
240
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
241
|
+
end
|
228
242
|
end
|
229
243
|
end
|
230
244
|
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.6.0
|
7
6
|
Contact: api@xero.com
|
8
7
|
Generated by: https://openapi-generator.tech
|
9
8
|
OpenAPI Generator version: 4.3.1
|
@@ -211,38 +210,53 @@ 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: false)
|
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
|
-
|
218
|
+
key = downcase ? attr : param
|
219
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
220
220
|
end
|
221
221
|
hash
|
222
222
|
end
|
223
223
|
|
224
|
+
# Returns the object in the form of hash with snake_case
|
225
|
+
def to_attributes
|
226
|
+
to_hash(downcase: true)
|
227
|
+
end
|
228
|
+
|
224
229
|
# Outputs non-array value in the form of hash
|
225
230
|
# For object, use to_hash. Otherwise, just return the value
|
226
231
|
# @param [Object] value Any valid value
|
227
232
|
# @return [Hash] Returns the value in the form of hash
|
228
|
-
def _to_hash(value)
|
233
|
+
def _to_hash(value, downcase: false)
|
229
234
|
if value.is_a?(Array)
|
230
|
-
value.
|
235
|
+
value.map do |v|
|
236
|
+
v.to_hash(downcase: downcase)
|
237
|
+
end
|
231
238
|
elsif value.is_a?(Hash)
|
232
239
|
{}.tap do |hash|
|
233
|
-
value.
|
240
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
234
241
|
end
|
235
242
|
elsif value.respond_to? :to_hash
|
236
|
-
value.to_hash
|
243
|
+
value.to_hash(downcase: downcase)
|
237
244
|
else
|
238
245
|
value
|
239
246
|
end
|
240
247
|
end
|
241
248
|
|
242
|
-
# customized data_parser
|
243
249
|
def parse_date(datestring)
|
244
|
-
|
245
|
-
|
250
|
+
if datestring.include?('Date')
|
251
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
252
|
+
original, date, timezone = *date_pattern.match(datestring)
|
253
|
+
date = (date.to_i / 1000)
|
254
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
255
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
256
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
257
|
+
else # handle date 'types' for small subset of payroll API's
|
258
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
259
|
+
end
|
246
260
|
end
|
247
261
|
end
|
248
262
|
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.6.0
|
7
6
|
Contact: api@xero.com
|
8
7
|
Generated by: https://openapi-generator.tech
|
9
8
|
OpenAPI Generator version: 4.3.1
|
@@ -257,38 +256,53 @@ module XeroRuby::PayrollNz
|
|
257
256
|
|
258
257
|
# Returns the object in the form of hash
|
259
258
|
# @return [Hash] Returns the object in the form of hash
|
260
|
-
def to_hash
|
259
|
+
def to_hash(downcase: false)
|
261
260
|
hash = {}
|
262
261
|
self.class.attribute_map.each_pair do |attr, param|
|
263
262
|
value = self.send(attr)
|
264
263
|
next if value.nil?
|
265
|
-
|
264
|
+
key = downcase ? attr : param
|
265
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
266
266
|
end
|
267
267
|
hash
|
268
268
|
end
|
269
269
|
|
270
|
+
# Returns the object in the form of hash with snake_case
|
271
|
+
def to_attributes
|
272
|
+
to_hash(downcase: true)
|
273
|
+
end
|
274
|
+
|
270
275
|
# Outputs non-array value in the form of hash
|
271
276
|
# For object, use to_hash. Otherwise, just return the value
|
272
277
|
# @param [Object] value Any valid value
|
273
278
|
# @return [Hash] Returns the value in the form of hash
|
274
|
-
def _to_hash(value)
|
279
|
+
def _to_hash(value, downcase: false)
|
275
280
|
if value.is_a?(Array)
|
276
|
-
value.
|
281
|
+
value.map do |v|
|
282
|
+
v.to_hash(downcase: downcase)
|
283
|
+
end
|
277
284
|
elsif value.is_a?(Hash)
|
278
285
|
{}.tap do |hash|
|
279
|
-
value.
|
286
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
280
287
|
end
|
281
288
|
elsif value.respond_to? :to_hash
|
282
|
-
value.to_hash
|
289
|
+
value.to_hash(downcase: downcase)
|
283
290
|
else
|
284
291
|
value
|
285
292
|
end
|
286
293
|
end
|
287
294
|
|
288
|
-
# customized data_parser
|
289
295
|
def parse_date(datestring)
|
290
|
-
|
291
|
-
|
296
|
+
if datestring.include?('Date')
|
297
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
298
|
+
original, date, timezone = *date_pattern.match(datestring)
|
299
|
+
date = (date.to_i / 1000)
|
300
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
301
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
302
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
303
|
+
else # handle date 'types' for small subset of payroll API's
|
304
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
305
|
+
end
|
292
306
|
end
|
293
307
|
end
|
294
308
|
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.6.0
|
7
6
|
Contact: api@xero.com
|
8
7
|
Generated by: https://openapi-generator.tech
|
9
8
|
OpenAPI Generator version: 4.3.1
|
@@ -20,7 +19,7 @@ module XeroRuby::PayrollNz
|
|
20
19
|
# The Xero identifier for a Timesheet
|
21
20
|
attr_accessor :timesheet_id
|
22
21
|
|
23
|
-
# The Xero identifier for the Payroll
|
22
|
+
# The Xero identifier for the Payroll Calendar that the Timesheet applies to
|
24
23
|
attr_accessor :payroll_calendar_id
|
25
24
|
|
26
25
|
# The Xero identifier for the Employee that the Timesheet is for
|
@@ -37,6 +36,7 @@ module XeroRuby::PayrollNz
|
|
37
36
|
DRAFT = "Draft".freeze
|
38
37
|
APPROVED = "Approved".freeze
|
39
38
|
COMPLETED = "Completed".freeze
|
39
|
+
REQUESTED = "Requested".freeze
|
40
40
|
|
41
41
|
# The Total Hours of the Timesheet
|
42
42
|
attr_accessor :total_hours
|
@@ -183,7 +183,7 @@ module XeroRuby::PayrollNz
|
|
183
183
|
return false if @employee_id.nil?
|
184
184
|
return false if @start_date.nil?
|
185
185
|
return false if @end_date.nil?
|
186
|
-
status_validator = EnumAttributeValidator.new('String', ["Draft", "Approved", "Completed"])
|
186
|
+
status_validator = EnumAttributeValidator.new('String', ["Draft", "Approved", "Completed", "Requested"])
|
187
187
|
return false unless status_validator.valid?(@status)
|
188
188
|
true
|
189
189
|
end
|
@@ -191,7 +191,7 @@ module XeroRuby::PayrollNz
|
|
191
191
|
# Custom attribute writer method checking allowed values (enum).
|
192
192
|
# @param [Object] status Object to be assigned
|
193
193
|
def status=(status)
|
194
|
-
validator = EnumAttributeValidator.new('String', ["Draft", "Approved", "Completed"])
|
194
|
+
validator = EnumAttributeValidator.new('String', ["Draft", "Approved", "Completed", "Requested"])
|
195
195
|
unless validator.valid?(status)
|
196
196
|
fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
|
197
197
|
end
|
@@ -310,38 +310,53 @@ module XeroRuby::PayrollNz
|
|
310
310
|
|
311
311
|
# Returns the object in the form of hash
|
312
312
|
# @return [Hash] Returns the object in the form of hash
|
313
|
-
def to_hash
|
313
|
+
def to_hash(downcase: false)
|
314
314
|
hash = {}
|
315
315
|
self.class.attribute_map.each_pair do |attr, param|
|
316
316
|
value = self.send(attr)
|
317
317
|
next if value.nil?
|
318
|
-
|
318
|
+
key = downcase ? attr : param
|
319
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
319
320
|
end
|
320
321
|
hash
|
321
322
|
end
|
322
323
|
|
324
|
+
# Returns the object in the form of hash with snake_case
|
325
|
+
def to_attributes
|
326
|
+
to_hash(downcase: true)
|
327
|
+
end
|
328
|
+
|
323
329
|
# Outputs non-array value in the form of hash
|
324
330
|
# For object, use to_hash. Otherwise, just return the value
|
325
331
|
# @param [Object] value Any valid value
|
326
332
|
# @return [Hash] Returns the value in the form of hash
|
327
|
-
def _to_hash(value)
|
333
|
+
def _to_hash(value, downcase: false)
|
328
334
|
if value.is_a?(Array)
|
329
|
-
value.
|
335
|
+
value.map do |v|
|
336
|
+
v.to_hash(downcase: downcase)
|
337
|
+
end
|
330
338
|
elsif value.is_a?(Hash)
|
331
339
|
{}.tap do |hash|
|
332
|
-
value.
|
340
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
333
341
|
end
|
334
342
|
elsif value.respond_to? :to_hash
|
335
|
-
value.to_hash
|
343
|
+
value.to_hash(downcase: downcase)
|
336
344
|
else
|
337
345
|
value
|
338
346
|
end
|
339
347
|
end
|
340
348
|
|
341
|
-
# customized data_parser
|
342
349
|
def parse_date(datestring)
|
343
|
-
|
344
|
-
|
350
|
+
if datestring.include?('Date')
|
351
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
352
|
+
original, date, timezone = *date_pattern.match(datestring)
|
353
|
+
date = (date.to_i / 1000)
|
354
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
355
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
356
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
357
|
+
else # handle date 'types' for small subset of payroll API's
|
358
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
359
|
+
end
|
345
360
|
end
|
346
361
|
end
|
347
362
|
end
|