"Сервісний" клас для генерації фінансових звітів.
More...
#include <ReportGenerator.h>
|
| | ReportGenerator (const std::string &title="Finance Report") |
| | Конструктор ReportGenerator.
|
| |
| void | addTransaction (const Transaction &t) |
| | Додає одну транзакцію до вектора transactions.
|
| |
| double | calculateTotal () const |
| | Розраховує загальну суму всіх транзакцій.
|
| |
| double | calculateByCategory (const std::string &categoryId) const |
| | Розраховує загальну суму для конкретної категорії.
|
| |
| double | calculateByAccount (const std::string &accountId) const |
| | Розраховує загальну суму для конкретного рахунку.
|
| |
| void | exportToCSV (const std::string &filePath) const |
| | Експортує всі транзакції у файл формату CSV.
|
| |
| void | exportToJSON (const std::string &filePath) const |
| | Експортує всі транзакції у файл формату JSON.
|
| |
| std::map< std::string, double > | preparePieChartData () const |
| | Готує дані для кругової діаграми (Pie Chart).
|
| |
|
| std::string | reportTitle |
| | Заголовок, який буде використовуватися у згенерованих звітах.
|
| |
| std::vector< Transaction > | transactions |
| | Вектор транзакцій, на основі якого будується звіт.
|
| |
"Сервісний" клас для генерації фінансових звітів.
Цей клас приймає вектор транзакцій та надає методи для розрахунку статистики (загальна сума, за категоріями) та експорту даних у різні формати (CSV, JSON).
◆ ReportGenerator()
| ReportGenerator::ReportGenerator |
( |
const std::string & |
title = "Finance Report" | ) |
|
|
inline |
Конструктор ReportGenerator.
- Parameters
-
| title | Заголовок звіту, що встановлюється для reportTitle. |
◆ addTransaction()
| void ReportGenerator::addTransaction |
( |
const Transaction & |
t | ) |
|
Додає одну транзакцію до вектора transactions.
- Parameters
-
| t | Транзакція, яку потрібно додати. |
◆ calculateByAccount()
| double ReportGenerator::calculateByAccount |
( |
const std::string & |
accountId | ) |
const |
Розраховує загальну суму для конкретного рахунку.
- Parameters
-
| accountId | ID рахунку, за яким фільтруються транзакції. |
- Returns
- Загальна сума (double) для цього рахунку.
◆ calculateByCategory()
| double ReportGenerator::calculateByCategory |
( |
const std::string & |
categoryId | ) |
const |
Розраховує загальну суму для конкретної категорії.
- Parameters
-
| categoryId | ID категорії, за якою фільтруються транзакції. |
- Returns
- Загальна сума (double) для цієї категорії.
◆ calculateTotal()
| double ReportGenerator::calculateTotal |
( |
| ) |
const |
Розраховує загальну суму всіх транзакцій.
- Returns
- Загальна сума (double).
◆ exportToCSV()
| void ReportGenerator::exportToCSV |
( |
const std::string & |
filePath | ) |
const |
Експортує всі транзакції у файл формату CSV.
- Parameters
-
| filePath | Повний шлях до файлу (включно з .csv), куди буде збережено звіт. |
◆ exportToJSON()
| void ReportGenerator::exportToJSON |
( |
const std::string & |
filePath | ) |
const |
Експортує всі транзакції у файл формату JSON.
- Parameters
-
| filePath | Повний шлях до файлу (включно з .json), куди буде збережено звіт. |
◆ preparePieChartData()
| std::map< std::string, double > ReportGenerator::preparePieChartData |
( |
| ) |
const |
Готує дані для кругової діаграми (Pie Chart).
Групує транзакції за категоріями та підсумовує їх.
- Returns
std::map, де ключ (string) - це categoryId, а значення (double) - це загальна сума для цієї категорії.
◆ reportTitle
| std::string ReportGenerator::reportTitle |
Заголовок, який буде використовуватися у згенерованих звітах.
◆ transactions
Вектор транзакцій, на основі якого будується звіт.
The documentation for this class was generated from the following files: