Class: Dscf::Marketplace::RetailersController

Inherits:
ApplicationController show all
Includes:
Core::Common, Core::RoleAssignable
Defined in:
app/controllers/dscf/marketplace/retailers_controller.rb

Instance Method Summary collapse

Methods inherited from ApplicationController

#bypass_permissions_for_demo?, #pundit_user

Instance Method Details

#my_retailersObject



30
31
32
33
34
35
36
37
38
39
40
41
# File 'app/controllers/dscf/marketplace/retailers_controller.rb', line 30

def my_retailers
  authorize @clazz.new, :my_retailers?
  service = MyResourceService.new(current_user)
  retailers = service.my_retailers(params)

  options = {
    include: default_serializer_includes[:index] || [],
    meta: {resource_type: "my_retailers"}
  }

  render_success("retailers.success.index", data: retailers, serializer_options: options)
end

#registerObject



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'app/controllers/dscf/marketplace/retailers_controller.rb', line 9

def register
  registration = Dscf::Marketplace::Retailer::Registration.new(
    user_attributes: user_registration_params,
    retailer_attributes: retailer_registration_params,
    address_attributes: address_registration_params,
    actor: current_user,
    obsolete_profile_address: obsolete_profile_address?
  ).create!

  render_success(
    "retailers.success.register",
    data: registration.retailer,
    status: :created
  )
rescue Dscf::Marketplace::Retailer::Registration::InvalidInput => e
  render_error("retailers.errors.register", errors: e.errors, status: :unprocessable_entity)
rescue ActiveRecord::RecordInvalid, ActiveRecord::RecordNotSaved => e
  errors = e.respond_to?(:record) && e.record ? e.record.errors.full_messages : [ e.message ]
  render_error("retailers.errors.register", errors: errors, status: :unprocessable_entity)
end