Anzeige der Buchungen im Mitgliederdatensatz

master
Thomas Hooge 2 years ago
parent 357d680896
commit 0eb74240c7
  1. 3
      INSTALL
  2. 25
      editdialog.cpp
  3. 4
      editdialog.h
  4. 4
      editdialog.ui

@ -56,12 +56,11 @@ Voraussetzung für Entwicklungsmodus
QT5 Datenbanktreiber für MariaDB erstellen QT5 Datenbanktreiber für MariaDB erstellen
```
cd C:\Qt\5.15.2\Src\qtbase\src\plugins\sqldrivers cd C:\Qt\5.15.2\Src\qtbase\src\plugins\sqldrivers
qmake -- MYSQL_INCDIR="C:/Program Files/MariaDB/MariaDB Connector C 64-bit/include" MYSQL_LIBDIR="C:/Program Files/MariaDB/MariaDB Connector C 64-bit/lib" qmake -- MYSQL_INCDIR="C:/Program Files/MariaDB/MariaDB Connector C 64-bit/include" MYSQL_LIBDIR="C:/Program Files/MariaDB/MariaDB Connector C 64-bit/lib"
mingw32-make mingw32-make
mingw32-make install mingw32-make install
```
Wenn etwas nicht funktioniert: Die Datei `config.cache` löschen Wenn etwas nicht funktioniert: Die Datei `config.cache` löschen

@ -83,6 +83,7 @@ EditDialog::EditDialog(QWidget *parent, int nummer) :
} }
qry.finish(); qry.finish();
// TODO Die Sichtbarkeit der Beitragsdaten hängt von den Berechtigungen ab
qry.prepare("SELECT beitrag, mahndatum, reduziert, reduziert_bis " qry.prepare("SELECT beitrag, mahndatum, reduziert, reduziert_bis "
"FROM beitrag WHERE mitgliednr=:nr"); "FROM beitrag WHERE mitgliednr=:nr");
qry.bindValue(":nr", nummer); qry.bindValue(":nr", nummer);
@ -104,6 +105,30 @@ EditDialog::EditDialog(QWidget *parent, int nummer) :
} }
} }
qry.finish(); qry.finish();
// TODO Berechtigungen für die einzelnen Buchungen sind vmtl. noch eine Stufe
// "höher" in den Berechtigungen einzustufen.
model = new QSqlTableModel(this);
model->setTable("buchung");
model->setFilter(QString("mitgliednr=%1").arg(nummer));
model->setSort(2, Qt::DescendingOrder);
model->setEditStrategy(QSqlTableModel::OnManualSubmit);
model->setHeaderData(0, Qt::Horizontal, "ID");
model->setHeaderData(1, Qt::Horizontal, "Mitglied-Nr.");
model->setHeaderData(2, Qt::Horizontal, "Datum");
model->setHeaderData(3, Qt::Horizontal, "Soll");
model->setHeaderData(4, Qt::Horizontal, "Ist");
model->setHeaderData(5, Qt::Horizontal, "Jahr");
// model->setSort(0, Qt::AscendingOrder);
ui->tableView_Buchung->setSelectionBehavior(QAbstractItemView::SelectRows);
ui->tableView_Buchung->setModel(model);
ui->tableView_Buchung->setColumnHidden(0, true);
ui->tableView_Buchung->setColumnHidden(1, true);
model->select();
} }
EditDialog::~EditDialog() EditDialog::~EditDialog()

@ -19,6 +19,8 @@
#define EDITDIALOG_H #define EDITDIALOG_H
#include <QDialog> #include <QDialog>
#include <QSqlTableModel>
#include <QDataWidgetMapper>
namespace Ui { namespace Ui {
class EditDialog; class EditDialog;
@ -38,6 +40,8 @@ private slots:
private: private:
Ui::EditDialog *ui; Ui::EditDialog *ui;
int mitgliednr; int mitgliednr;
QSqlTableModel *model;
}; };
#endif // EDITDIALOG_H #endif // EDITDIALOG_H

@ -628,13 +628,13 @@
<attribute name="title"> <attribute name="title">
<string>Buchungen</string> <string>Buchungen</string>
</attribute> </attribute>
<widget class="QTableView" name="tableView"> <widget class="QTableView" name="tableView_Buchung">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>10</x> <x>10</x>
<y>10</y> <y>10</y>
<width>531</width> <width>531</width>
<height>261</height> <height>381</height>
</rect> </rect>
</property> </property>
</widget> </widget>

Loading…
Cancel
Save