/*************************************************************************** libMiniCash Copyright © 2013-2022 christoph holzheuer c.holzheuer@sourceworx.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. ***************************************************************************/ #ifndef MCBILLINGVIEW_H #define MCBILLINGVIEW_H #include #include #include #include class MCMainWindow; namespace Ui { class MCBillingView; } /** * @brief Das Hauptfenster der Anwendung im Abrechnungsmodus. * * Beim Umschalten in den Abrechnungsmodus wir ein neues Hauptfenster * angezeigt. Hier lassen sich die zur Abrechnung notwendigen Daten noch * einmal überprüfen und gegebenenfalls ändern. */ class LIBMINICASH_EXPORT MCBillingView : public QFrame { Q_OBJECT public: explicit MCBillingView( QWidget *parent = nullptr ); virtual ~MCBillingView(); void setupDefaults( const QString& datafilename, QSettings* settings ); protected slots: void onReadTransactions(); // Kassendateien einlesen void onPrintBills(); // Abrechnungen drucken void onPrintReceipts(); // Quittungen drucken protected: bool testFormData(); Ui::MCBillingView* _ui{}; int _allCustomers; QSettings* _settings = nullptr; MCSalesModel _salesModel; // StandardItemModel, speichert Verkaufsdaten und zeigt sie an. MCSalesSummary _salesSummary; // _alle_ transaktionen, für die Auswertung QString _fileFilter; }; #endif // MCBILLINGVIEW_H