20#ifndef ORES_REFDATA_API_DOMAIN_CURRENCY_HPP
21#define ORES_REFDATA_API_DOMAIN_CURRENCY_HPP
26#include <boost/uuid/uuid.hpp>
27#include "ores.utility/uuid/tenant_id.hpp"
Domain types for risk management.
Definition EntityDetailOperations.hpp:192
Represents a currency with its metadata and formatting rules.
Definition currency.hpp:34
std::string modified_by
Username of the person who recorded this version in the system.
Definition currency.hpp:106
std::string iso_code
ISO 4217 alphabetic code (e.g., "USD").
Definition currency.hpp:48
std::string change_commentary
Free-text commentary explaining the change.
Definition currency.hpp:118
std::string fraction_symbol
Symbol for fractional unit (e.g., "cent").
Definition currency.hpp:66
int rounding_precision
Decimal places to round to during formatting.
Definition currency.hpp:81
int fractions_per_unit
Number of fractional units per whole unit (e.g., 100 for cents).
Definition currency.hpp:71
std::string symbol
Currency symbol (e.g., "$").
Definition currency.hpp:62
std::string market_tier
Market tier classification (e.g., g10, emerging, exotic, frontier, historical).
Definition currency.hpp:96
std::string monetary_nature
Monetary nature (e.g., fiat, commodity, synthetic, supranational).
Definition currency.hpp:91
std::string numeric_code
ISO 4217 numeric code (e.g., "840").
Definition currency.hpp:58
std::optional< boost::uuids::uuid > image_id
Optional reference to a flag image in the images table.
Definition currency.hpp:101
std::chrono::system_clock::time_point recorded_at
Timestamp when this version of the record was recorded in the system.
Definition currency.hpp:128
std::string name
Full name of the currency (e.g., "United States Dollar").
Definition currency.hpp:53
int version
Version number for optimistic locking and change tracking.
Definition currency.hpp:38
std::string rounding_type
Rounding method for fractional amounts.
Definition currency.hpp:76
std::string format
Format string for display.
Definition currency.hpp:86
std::string performed_by
Username of the account that performed this operation.
Definition currency.hpp:123
utility::uuid::tenant_id tenant_id
Tenant identifier for multi-tenancy isolation.
Definition currency.hpp:43
std::string change_reason_code
Code identifying the reason for the change.
Definition currency.hpp:113
A strongly-typed wrapper around a UUID representing a tenant identifier.
Definition tenant_id.hpp:66
static tenant_id system()
Creates a tenant_id representing the system tenant.
Definition tenant_id.cpp:41