diff options
Diffstat (limited to 'core/src/Model/TransactionsModel.hpp')
-rw-r--r-- | core/src/Model/TransactionsModel.hpp | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/core/src/Model/TransactionsModel.hpp b/core/src/Model/TransactionsModel.hpp deleted file mode 100644 index c9b33f1..0000000 --- a/core/src/Model/TransactionsModel.hpp +++ /dev/null @@ -1,80 +0,0 @@ -#pragma once - -#include "cplt_fwd.hpp" - -#include <SQLiteCpp/Database.h> -#include <SQLiteCpp/Statement.h> -#include <cstdint> - -enum class TableKind -{ - Sales, - SalesItems, - Purchases, - PurchasesItems, - Deliveries, - DeliveriesItems, -}; - -class SalesTable -{ -public: - SQLite::Statement GetRowCount; - SQLite::Statement GetRows; - SQLite::Statement GetItems; - -public: - SalesTable(TransactionModel& db); -}; - -class PurchasesTable -{ -public: - SQLite::Statement GetRowCount; - SQLite::Statement GetRows; - SQLite::Statement GetItems; - -public: - PurchasesTable(TransactionModel& db); -}; - -class DeliveryTable -{ -public: - SQLite::Statement FilterByTypeAndId; - SQLite::Statement GetItems; - -public: - DeliveryTable(TransactionModel& db); -}; - -// TODO fuck SQLite::Statement has move ctor but not move assignment operator -class TransactionModel -{ -private: - class DatabaseWrapper - { - public: - SQLite::Database mSqlite; - DatabaseWrapper(TransactionModel& self); - }; - - Project* mProject; - DatabaseWrapper mDbWrapper; - SalesTable mSales; - PurchasesTable mPurchases; - DeliveryTable mDeliveries; - -public: - TransactionModel(Project& project); - - const SQLite::Database& GetSQLite() const; - SQLite::Database& GetSQLite(); - - const SalesTable& GetSales() const; - SalesTable& GetSales(); - const PurchasesTable& GetPurchases() const; - PurchasesTable& GetPurchases(); - const DeliveryTable& GetDeliveries() const; - DeliveryTable& GetDeliveries(); -}; |