Class: Spree::Telegram::OrdersController

Inherits:
BaseController
  • Object
show all
Defined in:
app/controllers/spree/telegram/orders_controller.rb

Instance Method Summary collapse

Methods inherited from BaseController

#authorized_vendors, #authorizer_context, #handle_unauthorized_vendor, #required_telegram_vendor_user!, #resource_not_found

Instance Method Details

#approveObject

Raises:

  • (ActiveRecord::RecordNotFound)


22
23
24
25
26
27
28
29
30
31
32
# File 'app/controllers/spree/telegram/orders_controller.rb', line 22

def approve
  order = order_scope.find_by(number: params[:id])
  raise ActiveRecord::RecordNotFound if order.nil?

  result = SpreeCmCommissioner::OrderAcceptedStateUpdater.call(order: order, authorized_user: authorizer_context.user)
  if result.success?
    head :ok
  else
    head :unprocessable_entity
  end
end

#order_scopeObject



34
35
36
# File 'app/controllers/spree/telegram/orders_controller.rb', line 34

def order_scope
  Spree::Order.joins(:line_items).where(line_items: { vendor_id: authorized_vendors.pluck(:id) })
end

#rejectObject

Raises:

  • (ActiveRecord::RecordNotFound)


10
11
12
13
14
15
16
17
18
19
20
# File 'app/controllers/spree/telegram/orders_controller.rb', line 10

def reject
  order = order_scope.find_by(number: params[:id])
  raise ActiveRecord::RecordNotFound if order.nil?

  result = SpreeCmCommissioner::OrderRejectedStateUpdater.call(order: order, authorized_user: authorizer_context.user)
  if result.success?
    head :ok
  else
    head :unprocessable_entity
  end
end

#showObject



6
7
8
# File 'app/controllers/spree/telegram/orders_controller.rb', line 6

def show
  @order = Order.find_by(number: params[:id])
end