Class: QuickbooksCustomerResolverJob
- Inherits:
-
ApplicationJob
- Object
- ActiveJob::Base
- ApplicationJob
- QuickbooksCustomerResolverJob
- Defined in:
- app/jobs/quickbooks_customer_resolver_job.rb
Overview
QuickbooksCustomerResolverJob processes individual QuickBooks customers
This job is responsible for:
-
Resolving a QuickBooks customer into our internal customer model
-
Creating or updating the customer record
-
Creating or updating the customer-by-company association
This job is typically enqueued by QuickbooksCustomersPollJob for each customer retrieved from QuickBooks.
Example usage:
QuickbooksCustomerResolverJob.perform_later(
company_id: 123,
suffix_code: 'QB',
quickbooks_customer: quickbooks_customer_hash
)
Instance Method Summary collapse
-
#perform(company_id:, suffix_code:, quickbooks_customer:) ⇒ void
Performs the customer resolution process.
Instance Method Details
#perform(company_id:, suffix_code:, quickbooks_customer:) ⇒ void
This method returns an undefined value.
Performs the customer resolution process
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'app/jobs/quickbooks_customer_resolver_job.rb', line 28 def perform(company_id:, suffix_code:, quickbooks_customer:) # resolve customer customer_id = resolve_customer( company_id: company_id, suffix_code: suffix_code, quickbooks_customer: quickbooks_customer ) # resolve customer_by_company resolve_customer_by_company( company_id: company_id, customer_id: customer_id, quickbooks_customer: quickbooks_customer ) end |