Mercurial > hg > syntilista
diff src/main.cpp @ 218:c3f47d489097
Implement global transactions viewer dialog.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Tue, 06 Mar 2018 14:37:39 +0200 |
parents | 58af72da7f60 |
children | 5406b8664f00 |
line wrap: on
line diff
--- a/src/main.cpp Tue Jan 02 01:47:38 2018 +0200 +++ b/src/main.cpp Tue Mar 06 14:37:39 2018 +0200 @@ -14,6 +14,7 @@ #include "ui_mainwindow.h" #include "ui_editperson.h" #include "ui_aboutwindow.h" +#include "ui_viewtransactions.h" // @@ -845,6 +846,12 @@ } +void SyntilistaMainWindow::on_button_ViewTransactions_clicked() +{ + new ViewTransactions(this); +} + + void SyntilistaMainWindow::on_button_DeletePerson_clicked() { if (currPerson.id <= 0) @@ -1582,3 +1589,63 @@ { close(); } + + +// +// Global transactions list viewer +// +ViewTransactions::ViewTransactions(QWidget *parent) : + QDialog(parent), + ui(new Ui::ViewTransactions) +{ + ui->setupUi(this); + + slSetCommonStyleSheet(this); + + setModal(true); + setAttribute(Qt::WA_DeleteOnClose); + show(); + activateWindow(); + raise(); + setFocus(); + + model_Transactions = new SLTransactionSQLModel(); + ui->tableview_Transactions->setModel(model_Transactions); + ui->tableview_Transactions->setItemDelegate(new QSqlRelationalDelegate(ui->tableview_Transactions)); + ui->tableview_Transactions->verticalHeader()->setVisible(false); + ui->tableview_Transactions->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch); + + QSqlQuery query; + query.prepare(QStringLiteral( + "SELECT transactions.id,transactions.value,transactions.added," + "people.last_name,people.first_name FROM transactions " + "LEFT JOIN people ON transactions.person=people.id ORDER BY transactions.added DESC" + )); + + query.exec(); + slCheckAndReportSQLError("SELECT transactions for tableview_Transactions", query.lastError()); + + model_Transactions->setQuery(query); + + model_Transactions->setHeaderData(0, Qt::Horizontal, tr("ID")); + model_Transactions->setHeaderData(1, Qt::Horizontal, tr("Summa")); + model_Transactions->setHeaderData(2, Qt::Horizontal, tr("Aika")); + model_Transactions->setHeaderData(3, Qt::Horizontal, tr("Sukunimi")); + model_Transactions->setHeaderData(4, Qt::Horizontal, tr("Etunimi")); + + ui->tableview_Transactions->setModel(model_Transactions); + ui->tableview_Transactions->setColumnHidden(0, true); +} + + +ViewTransactions::~ViewTransactions() +{ + delete ui; + delete model_Transactions; +} + + +void ViewTransactions::on_button_Close_clicked() +{ + close(); +}