Class: Spree::Api::V2::Tenant::VotePackagesController

Inherits:
BaseController
  • Object
show all
Defined in:
app/controllers/spree/api/v2/tenant/vote_packages_controller.rb

Instance Method Summary collapse

Methods inherited from BaseController

#current_vendor, #render_serialized_payload, #require_tenant, #scope

Instance Method Details

#claim_statusObject



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'app/controllers/spree/api/v2/tenant/vote_packages_controller.rb', line 14

def claim_status
  product = current_season.vote_packages.find(params[:id])

  result = SpreeCmCommissioner::VotingCredits::ClaimableScopeResolver.new(
    product: product,
    voting_session_id: params[:voting_session_id]
  ).call

  return render_error_payload(result.error, 422) if result.failure?

  scope = result.value

  claimed = SpreeCmCommissioner::Claim.free_claimed?(
    user_id: spree_current_user.id,
    product_id: product.id,
    claimable_id: scope[:claimable_id],
    claimable_type: scope[:claimable_type]
  )

  render_serialized_payload { { claimed: claimed }.merge(scope) }
end

#indexObject

Overrided



10
11
12
# File 'app/controllers/spree/api/v2/tenant/vote_packages_controller.rb', line 10

def index
  render_serialized_payload { serialize_collection(sorted_collection) }
end