mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-23 07:09:39 +02:00
* Update Security model to include country_code in the data definition. * Modify Provider::SecurityConcept to define country_code for security. * Enhance Provider::Synth to extract country_code from security data. * Update Security::Provided to include country_code when creating security instances. * Adjust Security::SynthComboboxOption to add country_code as an attribute. * Revise combobox_security partial to conditionally display country flag and code.
23 lines
997 B
Ruby
23 lines
997 B
Ruby
module Provider::SecurityConcept
|
|
extend ActiveSupport::Concern
|
|
|
|
Security = Data.define(:symbol, :name, :logo_url, :exchange_operating_mic, :country_code)
|
|
SecurityInfo = Data.define(:symbol, :name, :links, :logo_url, :description, :kind, :exchange_operating_mic)
|
|
Price = Data.define(:symbol, :date, :price, :currency, :exchange_operating_mic)
|
|
|
|
def search_securities(symbol, country_code: nil, exchange_operating_mic: nil)
|
|
raise NotImplementedError, "Subclasses must implement #search_securities"
|
|
end
|
|
|
|
def fetch_security_info(symbol:, exchange_operating_mic:)
|
|
raise NotImplementedError, "Subclasses must implement #fetch_security_info"
|
|
end
|
|
|
|
def fetch_security_price(symbol:, exchange_operating_mic:, date:)
|
|
raise NotImplementedError, "Subclasses must implement #fetch_security_price"
|
|
end
|
|
|
|
def fetch_security_prices(symbol:, exchange_operating_mic:, start_date:, end_date:)
|
|
raise NotImplementedError, "Subclasses must implement #fetch_security_prices"
|
|
end
|
|
end
|