Вікно для генерації та відображення звітів, а також їх експорту у CSV/JSON.
More...
#include <ReportsWindow.h>
|
| void | refreshReport () |
| | Оновлює відображення звіту з урахуванням вибраної валюти.
|
| |
|
| const User & | user |
| | Посилання (лише для читання) на користувача, для якого генерується звіт.
|
| |
| QTextEdit * | output |
| | Текстове поле для відображення згенерованого звіту.
|
| |
| QLineEdit * | pathInput |
| | Поле для введення шляху збереження файлу (для експорту).
|
| |
| QComboBox * | currencyCombo |
| | Випадаючий список для вибору валюти відображення.
|
| |
| QPushButton * | btnUpdateRates |
| | Кнопка для оновлення курсів валют з API.
|
| |
| CurrencyConverter | converter |
| | Конвертер валют для перетворення сум.
|
| |
| QString | selectedCurrency |
| | Поточна вибрана валюта для відображення.
|
| |
Вікно для генерації та відображення звітів, а також їх експорту у CSV/JSON.
Це вікно надає користувачу інтерфейс для перегляду повного звіту про свої фінанси та збереження цього звіту у різних форматах.
◆ ReportsWindow()
| ReportsWindow::ReportsWindow |
( |
const User & |
u, |
|
|
QWidget * |
parent = nullptr |
|
) |
| |
Конструктор класу ReportsWindow.
Конструктор ReportsWindow.
- Parameters
-
| user | Посилання на об'єкт користувача (лише для читання), дані якого використовуються для звітів. |
| parent | Вказівник на батьківський віджет (зазвичай 0 або nullptr). |
Ініціалізує елементи інтерфейсу: заголовок, текстове поле 'output' та кнопки для генерації звіту, експорту та закриття. Встановлює з'єднання сигналів та слотів.
◆ onClose
| void ReportsWindow::onClose |
( |
| ) |
|
|
privateslot |
Слот для закриття поточного діалогового вікна.
Закриває діалогове вікно.
◆ onCurrencyChanged
| void ReportsWindow::onCurrencyChanged |
( |
| ) |
|
|
privateslot |
Слот, що спрацьовує при зміні вибраної валюти.
◆ onExportCSV
| void ReportsWindow::onExportCSV |
( |
| ) |
|
|
privateslot |
Слот для експорту поточного звіту у формат CSV.
Експортує дані користувача у файл CSV.
Використовує шлях, вказаний у 'pathInput', або запитує новий.
- Перевіряє, чи є транзакції.
- Відкриває QFileDialog, щоб користувач обрав шлях збереження.
- Створює ReportGenerator та викликає його метод exportToCSV().
- Показує повідомлення про успіх.
◆ onExportJSON
| void ReportsWindow::onExportJSON |
( |
| ) |
|
|
privateslot |
Слот для експорту поточного звіту у формат JSON.
Експортує дані користувача у файл JSON.
Використовує шлях, вказаний у 'pathInput', або запитує новий.
- Перевіряє, чи є транзакції.
- Відкриває QFileDialog, щоб користувач обрав шлях збереження.
- Створює ReportGenerator та викликає його метод exportToJSON().
- Показує повідомлення про успіх.
◆ onGenerateFullReport
| void ReportsWindow::onGenerateFullReport |
( |
| ) |
|
|
privateslot |
Слот, що спрацьовує при натисканні "Сформувати повний звіт".
Генерує повний текстовий звіт та відображає його у полі 'output'.
Генерує звіт на основі даних користувача та виводить його у текстове поле 'output'.
- Перевіряє, чи є транзакції у користувача.
- Створює екземпляр ReportGenerator.
- Розраховує загальну суму.
- Форматує рядок звіту (QString) з заголовком, статистикою та списком транзакцій.
- Встановлює згенерований текст у QTextEdit 'output'.
◆ onUpdateExchangeRates
| void ReportsWindow::onUpdateExchangeRates |
( |
| ) |
|
|
privateslot |
Слот для оновлення курсу валют з API.
◆ refreshReport()
| void ReportsWindow::refreshReport |
( |
| ) |
|
|
private |
Оновлює відображення звіту з урахуванням вибраної валюти.
◆ btnUpdateRates
| QPushButton* ReportsWindow::btnUpdateRates |
|
private |
Кнопка для оновлення курсів валют з API.
◆ converter
Конвертер валют для перетворення сум.
◆ currencyCombo
| QComboBox* ReportsWindow::currencyCombo |
|
private |
Випадаючий список для вибору валюти відображення.
◆ output
| QTextEdit* ReportsWindow::output |
|
private |
Текстове поле для відображення згенерованого звіту.
◆ pathInput
| QLineEdit* ReportsWindow::pathInput |
|
private |
Поле для введення шляху збереження файлу (для експорту).
◆ selectedCurrency
| QString ReportsWindow::selectedCurrency |
|
private |
Поточна вибрана валюта для відображення.
◆ user
| const User& ReportsWindow::user |
|
private |
Посилання (лише для читання) на користувача, для якого генерується звіт.
The documentation for this class was generated from the following files: