26 lines
557 B
Ruby
26 lines
557 B
Ruby
class MoneyMove < ApplicationRecord
|
|
belongs_to :homie
|
|
|
|
def create_move(params)
|
|
common_params = { description: params[:description] }
|
|
|
|
move_from = MoneyMove.new(
|
|
common_params + {
|
|
homie_id: params[:from_homie_id],
|
|
amount: -BigDecimal.new(params[:amount])
|
|
}
|
|
)
|
|
move_to = MoneyMove.new(
|
|
common_params + {
|
|
homie_id: params[:from_homie_id],
|
|
amount: BigDecimal.new(params[:amount])
|
|
}
|
|
)
|
|
|
|
MoneyMove.transaction do
|
|
move_from.save!
|
|
move_to.save!
|
|
end
|
|
end
|
|
end
|