mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-24 07:39:39 +02:00
* Add trends, time series, seed data * Remove test data * Replace old view values with helpers * Fix tooltip bugs in D3 chart * Fix tests * Fix smoke test * Add CRUD actions for valuations * Scaffold out inline editing with Turbo
26 lines
582 B
Ruby
26 lines
582 B
Ruby
class Trend
|
|
attr_reader :current, :previous
|
|
|
|
def initialize(current, previous)
|
|
@current = current
|
|
@previous = previous
|
|
end
|
|
|
|
def direction
|
|
return "flat" unless @previous
|
|
return "up" if @current > @previous
|
|
return "down" if @current < @previous
|
|
"flat"
|
|
end
|
|
|
|
def amount
|
|
return 0 if @previous.nil?
|
|
@current - @previous
|
|
end
|
|
|
|
def percent
|
|
return 0 if @previous.nil?
|
|
return Float::INFINITY if @previous == 0
|
|
((@current - @previous).abs / @previous.to_f * 100).round(1)
|
|
end
|
|
end
|