lib/fin/models/money_limit.rb in fin-0.1.0 vs lib/fin/models/money_limit.rb in fin-0.1.2

- old
+ new

@@ -3,79 +3,50 @@ module Fin # Represents information about client`s money, vm and various limits # Source table: FORTS_ PART_REPL::part – информация о средствах и лимитах # class MoneyLimit < Model + model_class_id 13 + # Properties as per P2ClientGate API - prop_accessor [:repl_id, :id], [:repl_rev, :rev], - :client_code, # c7 Код клиента - :money_old, # d26.2 Денег на начало сессии - :money_amount, # d26.2 Всего денег - :money_free, # d26.2 Свободно денег - :money_blocked, # d26.2 Заблокировано денег - :pledge_old, # d26.2 Залогов на начало сессии - :pledge_amount, # d26.2 Всего залогов - :pledge_free, # d26.2 Свободно залогов - :pledge_blocked, # d26.2 Заблокировано залогов - :vm_reserve, # d26.2 Сумма, зарезервированная под вариационную маржу - :vm_intercl, # d26.2 Mаржа, списанная или полученная в пром. клиринг - :fee, # d26.2 Списанный сбор - :fee_reserve, # d26.2 Заблокированный резерв сбора под заявки - :limit_spot_buy, # d26.2 Лимит на Покупку Спотов. - :limit_spot_buy_used, # d26.2 Использованный Лимит на Покупку Спотов - :coeff_go, # d16.5 Коэффициент клиентского ГО - :coeff_liquidity, # d16.5 Коэффициент ликвидности - :premium, # d26.2 Премия - :premium_order_reserve, # f Резерв премии под заявки + property :client_code => :c7, # Код клиента + :money_old => :'d26.2', # Денег на начало сессии + :money_amount => :'d26.2', # Всего денег + :money_free => :'d26.2', # Свободно денег + :money_blocked => :'d26.2', # Заблокировано денег + :pledge_old => :'d26.2', # Залогов на начало сессии + :pledge_amount => :'d26.2', # Всего залогов + :pledge_free => :'d26.2', # Свободно залогов + :pledge_blocked => :'d26.2', # Заблокировано залогов + :vm_reserve => :'d26.2', # Зарезервированно под вариационную маржу + :vm_intercl => :'d26.2', # Mаржа, списанная/полученная в пром. клиринг + :fee => :'d26.2', # Списанный сбор + :fee_reserve => :'d26.2', # Заблокированный резерв сбора под заявки + :limit_spot_buy => :'d26.2', # Лимит на Покупку Спотов. + :limit_spot_buy_used => :'d26.2', # Использованный Лимит на Спот-покупку + :coeff_go => :'d16.5', # Коэффициент клиентского ГО + :coeff_liquidity => :'d16.5', # Коэффициент ликвидности + :premium => :'d26.2', # Премия + :premium_order_reserve => :f, # Резерв премии под заявки + :is_auto_update_limit => :i1, # Признак автокоррекции лимита на + # величину дохода при закачке после клиринга: 0-нет, 1-менять. + :is_auto_update_spot_limit => :i1, # Автокоррекция лимитов по Спотам + # (на Продажу, и на Покупку) при закачке после клиринга: 0-нет, 1-менять. + :no_fut_discount => :i1, # 1 - Запрещено использовать скидку по фьючерсам, 0-нет. + :limits_set => :i1 # 1 - Лимиты установлены, 0 – отсутствуют - # Not extracted from record: - :is_auto_update_limit, # i1 Признак автокоррекции лимита на величину - # дохода при закачке после клиринга: 0-нет, 1-менять. - :is_auto_update_spot_limit, # i1 Признак автокоррекции лимитов по Спотам - # (на Продажу, и на Покупку) при закачке после клиринга: 0-нет, 1-менять. - :no_fut_discount, # i1 Запрещение использования скидки по - # фьючерсам: 1-Запрет, 0-нет. - :limits_set # i1 Признак лимитов. 0 – лимиты отсутствуют - - - def self.from_record rec - new :repl_id => rec.GetValAsString('replID').to_i, - :repl_rev => rec.GetValAsString('replRev').to_i, - :client_code => rec.GetValAsString('client_code'), - :money_old => rec.GetValAsString('money_old').to_f, - :money_amount => rec.GetValAsString('money_amount').to_f, - :money_free => rec.GetValAsString('money_free').to_f, - :money_blocked => rec.GetValAsString('money_blocked').to_f, - :pledge_old => rec.GetValAsString('pledge_old').to_f, - :pledge_amount => rec.GetValAsString('pledge_amount').to_f, - :pledge_free => rec.GetValAsString('pledge_free').to_f, - :pledge_blocked => rec.GetValAsString('pledge_blocked').to_f, - :vm_reserve => rec.GetValAsString('vm_reserve').to_f, - :vm_intercl => rec.GetValAsString('vm_intercl').to_f, - :fee => rec.GetValAsString('vm_intercl').to_f, - :fee_reserve => rec.GetValAsString('vm_reserve').to_f, - :limit_spot_buy => rec.GetValAsString('vm_reserve').to_f, - :limit_spot_buy_used => rec.GetValAsString('vm_reserve').to_f, - :coeff_go => rec.GetValAsString('coeff_go').to_f, - :coeff_liquidity => rec.GetValAsString('coeff_liquidity').to_f, - :premium => rec.GetValAsString('premium').to_f, - :premium_order_reserve => rec.GetValAsString('premium_order_reserve').to_f, - end - def self.index_for rec rec.GetValAsLong('replID') end def index - @repl_id + repl_id end - def inspect + def to_s "Money: Old #{money_old} Amt #{money_amount} Free #{money_free} Blck #{money_blocked} " + "Pledge: Old #{pledge_old} Amt #{pledge_amount} Free #{pledge_free} Blck #{pledge_blocked} " + "VM: Reserve #{vm_reserve} Intercl #{vm_intercl} Fee: #{fee} Reserve #{fee_reserve} " + "Limit Spot: Buy #{limit_spot_buy} Used #{limit_spot_buy_used}" end - - alias to_s inspect end end