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 UK 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::PayrollUk
|
|
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 UK 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
|
@@ -224,38 +223,53 @@ module XeroRuby::PayrollUk
|
|
224
223
|
|
225
224
|
# Returns the object in the form of hash
|
226
225
|
# @return [Hash] Returns the object in the form of hash
|
227
|
-
def to_hash
|
226
|
+
def to_hash(downcase: false)
|
228
227
|
hash = {}
|
229
228
|
self.class.attribute_map.each_pair do |attr, param|
|
230
229
|
value = self.send(attr)
|
231
230
|
next if value.nil?
|
232
|
-
|
231
|
+
key = downcase ? attr : param
|
232
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
233
233
|
end
|
234
234
|
hash
|
235
235
|
end
|
236
236
|
|
237
|
+
# Returns the object in the form of hash with snake_case
|
238
|
+
def to_attributes
|
239
|
+
to_hash(downcase: true)
|
240
|
+
end
|
241
|
+
|
237
242
|
# Outputs non-array value in the form of hash
|
238
243
|
# For object, use to_hash. Otherwise, just return the value
|
239
244
|
# @param [Object] value Any valid value
|
240
245
|
# @return [Hash] Returns the value in the form of hash
|
241
|
-
def _to_hash(value)
|
246
|
+
def _to_hash(value, downcase: false)
|
242
247
|
if value.is_a?(Array)
|
243
|
-
value.
|
248
|
+
value.map do |v|
|
249
|
+
v.to_hash(downcase: downcase)
|
250
|
+
end
|
244
251
|
elsif value.is_a?(Hash)
|
245
252
|
{}.tap do |hash|
|
246
|
-
value.
|
253
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
247
254
|
end
|
248
255
|
elsif value.respond_to? :to_hash
|
249
|
-
value.to_hash
|
256
|
+
value.to_hash(downcase: downcase)
|
250
257
|
else
|
251
258
|
value
|
252
259
|
end
|
253
260
|
end
|
254
261
|
|
255
|
-
# customized data_parser
|
256
262
|
def parse_date(datestring)
|
257
|
-
|
258
|
-
|
263
|
+
if datestring.include?('Date')
|
264
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
265
|
+
original, date, timezone = *date_pattern.match(datestring)
|
266
|
+
date = (date.to_i / 1000)
|
267
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
268
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
269
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
270
|
+
else # handle date 'types' for small subset of payroll API's
|
271
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
272
|
+
end
|
259
273
|
end
|
260
274
|
end
|
261
275
|
end
|
@@ -3,7 +3,6 @@
|
|
3
3
|
|
4
4
|
#This is the Xero Payroll API for orgs in the UK 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::PayrollUk
|
|
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 UK 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::PayrollUk
|
|
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 UK 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::PayrollUk
|
|
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 UK 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::PayrollUk
|
|
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 UK 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
|
@@ -47,6 +46,7 @@ module XeroRuby::PayrollUk
|
|
47
46
|
# The type of the payment of the corresponding salary and wages
|
48
47
|
attr_accessor :payment_type
|
49
48
|
SALARY = "Salary".freeze
|
49
|
+
HOURLY = "Hourly".freeze
|
50
50
|
|
51
51
|
class EnumAttributeValidator
|
52
52
|
attr_reader :datatype
|
@@ -194,7 +194,7 @@ module XeroRuby::PayrollUk
|
|
194
194
|
status_validator = EnumAttributeValidator.new('String', ["Active", "Pending", "History"])
|
195
195
|
return false unless status_validator.valid?(@status)
|
196
196
|
return false if @payment_type.nil?
|
197
|
-
payment_type_validator = EnumAttributeValidator.new('String', ["Salary"])
|
197
|
+
payment_type_validator = EnumAttributeValidator.new('String', ["Salary", "Hourly"])
|
198
198
|
return false unless payment_type_validator.valid?(@payment_type)
|
199
199
|
true
|
200
200
|
end
|
@@ -212,7 +212,7 @@ module XeroRuby::PayrollUk
|
|
212
212
|
# Custom attribute writer method checking allowed values (enum).
|
213
213
|
# @param [Object] payment_type Object to be assigned
|
214
214
|
def payment_type=(payment_type)
|
215
|
-
validator = EnumAttributeValidator.new('String', ["Salary"])
|
215
|
+
validator = EnumAttributeValidator.new('String', ["Salary", "Hourly"])
|
216
216
|
unless validator.valid?(payment_type)
|
217
217
|
fail ArgumentError, "invalid value for \"payment_type\", must be one of #{validator.allowable_values}."
|
218
218
|
end
|
@@ -331,38 +331,53 @@ module XeroRuby::PayrollUk
|
|
331
331
|
|
332
332
|
# Returns the object in the form of hash
|
333
333
|
# @return [Hash] Returns the object in the form of hash
|
334
|
-
def to_hash
|
334
|
+
def to_hash(downcase: false)
|
335
335
|
hash = {}
|
336
336
|
self.class.attribute_map.each_pair do |attr, param|
|
337
337
|
value = self.send(attr)
|
338
338
|
next if value.nil?
|
339
|
-
|
339
|
+
key = downcase ? attr : param
|
340
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
340
341
|
end
|
341
342
|
hash
|
342
343
|
end
|
343
344
|
|
345
|
+
# Returns the object in the form of hash with snake_case
|
346
|
+
def to_attributes
|
347
|
+
to_hash(downcase: true)
|
348
|
+
end
|
349
|
+
|
344
350
|
# Outputs non-array value in the form of hash
|
345
351
|
# For object, use to_hash. Otherwise, just return the value
|
346
352
|
# @param [Object] value Any valid value
|
347
353
|
# @return [Hash] Returns the value in the form of hash
|
348
|
-
def _to_hash(value)
|
354
|
+
def _to_hash(value, downcase: false)
|
349
355
|
if value.is_a?(Array)
|
350
|
-
value.
|
356
|
+
value.map do |v|
|
357
|
+
v.to_hash(downcase: downcase)
|
358
|
+
end
|
351
359
|
elsif value.is_a?(Hash)
|
352
360
|
{}.tap do |hash|
|
353
|
-
value.
|
361
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
354
362
|
end
|
355
363
|
elsif value.respond_to? :to_hash
|
356
|
-
value.to_hash
|
364
|
+
value.to_hash(downcase: downcase)
|
357
365
|
else
|
358
366
|
value
|
359
367
|
end
|
360
368
|
end
|
361
369
|
|
362
|
-
# customized data_parser
|
363
370
|
def parse_date(datestring)
|
364
|
-
|
365
|
-
|
371
|
+
if datestring.include?('Date')
|
372
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
373
|
+
original, date, timezone = *date_pattern.match(datestring)
|
374
|
+
date = (date.to_i / 1000)
|
375
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
376
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
377
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
378
|
+
else # handle date 'types' for small subset of payroll API's
|
379
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
380
|
+
end
|
366
381
|
end
|
367
382
|
end
|
368
383
|
end
|