Class: Edi::OrderEventProcessor
- Inherits:
-
BaseService
- Object
- BaseService
- Edi::OrderEventProcessor
- Defined in:
- app/services/edi/order_event_processor.rb
Instance Method Summary collapse
-
#dispatch(order, event, options = {}) ⇒ Object
Public entry point used by EDI event handlers.
Methods inherited from BaseService
#initialize, #log_debug, #log_error, #log_info, #log_warning, #logger, #options, #process, #tagged_logger
Constructor Details
This class inherits a constructor from BaseService
Instance Method Details
#dispatch(order, event, options = {}) ⇒ Object
Public entry point used by EDI event handlers.
Resolves :cancel → :auto_cancel/:auto_reject when applicable, then dispatches.
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'app/services/edi/order_event_processor.rb', line 7 def dispatch(order, event, = {}) return unless order.edi_transaction_id event = resolve_event(order, event) = (order, event, ) case event when :acknowledge_order process_acknowledgement(order, ) when :cancel process_cancellation(order, ) InternalMailer.notify_edi_admin_of_edi_cancel(order).deliver_later when :auto_cancel process_auto_cancellation(order, ) when :auto_reject process_auto_reject(order, ) when :back_order process_back_order(order, ) end end |