I am trying to get a job to fire off that creates an order in our ERP.
all works just fine directly through the gem, so I started making the job itself.
I have 3 files: erp_order_methods.rb, create_or_update_erp_order.rb order.rb
erp_order_methods.rb:
module ErpOrderMethods
# These methods are used by create_or_update_erp_order_job
def self.include base
bese.extend ClassMethods
end
module ClassMethods
create_or_update_erp_order_job.rb
class CreateOrUpdateErpOrderJob
include ErpOrderMethods
@queue = :priority_queue
def self.perform(task_id, order_id)
task = Task.find(task_id)
order = Order.find(order_id)
erp_order = order.erp_order
order.rb (model)
def create_or_update_erp_order
@task = Task.create(
status: "scheduled",
description: "Create or Updat Order for Web Order No: #{self.id}",
system_task: true
)
Resque.enqueue(CreateOrUpdateErpOrderJob, @task.id, self.id)
end
When i go to test this, I am getting:
General Error: Type - NameError | Message - uninitialized constant CreateOrUpdateErpOrderJob::RestClient
so I found the issue after some digging around.
def self.include base
bese.extend ClassMethods
spelling errors: bese => base
self.include => self.included