Files
x-stake/app/graphql/mutations/create_deposit_order.rb
João Geonizeli ccfc35aa01 add deposit form
2021-09-06 11:33:17 -03:00

20 lines
607 B
Ruby

# frozen_string_literal: true
module Mutations
class CreateDepositOrder < BaseMutation
field :order, Types::DepositOrderType, null: true
argument :order, Inputs::CreateDepositOrderAttributesInput, required: true
def resolve(order:)
ActiveRecord::Base.transaction do
record = BuildDepositOrder.new(paid_amount_cents: order[:amount_cents], user_id: current_user.id).build
record.save!
{ order: record.reload }
rescue ActiveRecord::RecordInvalid => e
{ errors: Resolvers::ModelErrors.from_active_record_model(e.record) }
end
end
end
end