105 lines
2.0 KiB
Ruby
105 lines
2.0 KiB
Ruby
# encoding: UTF-8
|
|
# frozen_string_literal: true
|
|
|
|
module API
|
|
module V2
|
|
module Entities
|
|
class Deposit < Base
|
|
expose(
|
|
:id,
|
|
documentation: {
|
|
type: Integer,
|
|
desc: 'Unique deposit id.'
|
|
}
|
|
)
|
|
|
|
expose(
|
|
:currency_id,
|
|
as: :currency,
|
|
documentation: {
|
|
type: String,
|
|
desc: 'Deposit currency id.'
|
|
}
|
|
)
|
|
|
|
expose(
|
|
:amount,
|
|
format_with: :decimal,
|
|
documentation: {
|
|
type: BigDecimal,
|
|
desc: 'Deposit amount.'
|
|
}
|
|
)
|
|
|
|
expose(
|
|
:fee,
|
|
documentation: {
|
|
type: BigDecimal,
|
|
desc: 'Deposit fee.'
|
|
}
|
|
)
|
|
|
|
expose(
|
|
:txid,
|
|
documentation: {
|
|
type: String,
|
|
desc: 'Deposit transaction id.'
|
|
}
|
|
)
|
|
|
|
expose(
|
|
:confirmations,
|
|
documentation: {
|
|
type: Integer,
|
|
desc: 'Number of deposit confirmations.'
|
|
},
|
|
if: ->(deposit) { deposit.currency.coin? }
|
|
)
|
|
|
|
expose(
|
|
:aasm_state,
|
|
as: :state,
|
|
documentation: {
|
|
type: String,
|
|
desc: 'Deposit state.'
|
|
}
|
|
)
|
|
|
|
expose(
|
|
:transfer_type,
|
|
documentation: {
|
|
type: String,
|
|
desc: 'Deposit transfer type'
|
|
}
|
|
)
|
|
|
|
|
|
expose(
|
|
:created_at,
|
|
format_with: :iso8601,
|
|
documentation: {
|
|
type: String,
|
|
desc: 'The datetime when deposit was created.'
|
|
}
|
|
)
|
|
|
|
expose(
|
|
:completed_at,
|
|
format_with: :iso8601,
|
|
documentation: {
|
|
type: String,
|
|
desc: 'The datetime when deposit was completed..'
|
|
}
|
|
)
|
|
expose(
|
|
:tid,
|
|
documentation: {
|
|
type: String,
|
|
desc: 'The shared transaction ID'
|
|
}
|
|
)
|
|
end
|
|
end
|
|
end
|
|
end
|