ORE Studio 0.0.4
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
portfolio_service Class Reference

Service for managing portfolios. More...

#include <portfolio_service.hpp>

Collaboration diagram for portfolio_service:
Collaboration graph

Public Types

using context = ores::database::context
 

Public Member Functions

 portfolio_service (context ctx)
 Constructs a portfolio_service with required repositories.
 
std::vector< domain::portfoliolist_portfolios ()
 Lists all portfolios.
 
std::optional< domain::portfoliofind_portfolio (const boost::uuids::uuid &id)
 Finds a portfolio by its ID.
 
std::optional< domain::portfoliofind_portfolio_by_code (const std::string &code)
 Finds a portfolio by its code.
 
void save_portfolio (const domain::portfolio &portfolio)
 Saves a portfolio (creates or updates).
 
void save_portfolios (const std::vector< domain::portfolio > &portfolios)
 Saves multiple portfolios (creates or updates).
 
void remove_portfolio (const boost::uuids::uuid &id)
 Removes a portfolio.
 
std::vector< domain::portfolioget_portfolio_history (const boost::uuids::uuid &id)
 Gets the version history for a portfolio.
 

Detailed Description

Service for managing portfolios.

This service provides functionality for:

Constructor & Destructor Documentation

◆ portfolio_service()

portfolio_service ( context  ctx)
explicit

Constructs a portfolio_service with required repositories.

Parameters
ctxThe database context.

Member Function Documentation

◆ save_portfolio()

void save_portfolio ( const domain::portfolio portfolio)

Saves a portfolio (creates or updates).

Parameters
portfolioThe portfolio to save

◆ save_portfolios()

void save_portfolios ( const std::vector< domain::portfolio > &  portfolios)

Saves multiple portfolios (creates or updates).

Parameters
portfoliosThe portfolios to save

◆ remove_portfolio()

void remove_portfolio ( const boost::uuids::uuid &  id)

Removes a portfolio.

Parameters
idThe ID of the portfolio to remove

◆ get_portfolio_history()

std::vector< domain::portfolio > get_portfolio_history ( const boost::uuids::uuid &  id)

Gets the version history for a portfolio.

Parameters
idThe portfolio ID
Returns
Vector of all versions, newest first