summaryrefslogtreecommitdiff
path: root/noncore/unsupported/qashmoney/transaction.h
Side-by-side diff
Diffstat (limited to 'noncore/unsupported/qashmoney/transaction.h') (more/less context) (ignore whitespace changes)
-rwxr-xr-xnoncore/unsupported/qashmoney/transaction.h73
1 files changed, 73 insertions, 0 deletions
diff --git a/noncore/unsupported/qashmoney/transaction.h b/noncore/unsupported/qashmoney/transaction.h
new file mode 100755
index 0000000..3df43a8
--- a/dev/null
+++ b/noncore/unsupported/qashmoney/transaction.h
@@ -0,0 +1,73 @@
+#ifndef TRANSACTION_H
+#define TRANSACTION_H
+
+#include <qstring.h>
+#include <qlistview.h>
+#include <qdatetime.h>
+#include <sqlite3.h>
+
+#include "preferences.h"
+
+class Transaction
+ {
+ public:
+
+ Transaction ();
+ ~Transaction ();
+
+ // This function adds a new transaction to the database. It takes the payee, accountid,
+ // budgetid, number, day, month, year, amount, cleared
+ void addTransaction ( QString description, QString payee, int accountid, int parentid, int number, int day, int month, int year, float amount, int cleared, int budgetid, int lineitemid );
+
+ // This updates an already existing transaction
+ void updateTransaction ( QString, QString, int, int, int, int, float, int, int, int, int );
+
+ // Deletes a transaction. Takes the transid as its parameter
+ void deleteTransaction ( int );
+
+ // Returns the number of transactions
+ int getNumberOfTransactions ();
+
+ // this is an overloaded function that returns the number of
+ // transactions for an account
+ int getNumberOfTransactions ( int );
+
+ // deletes all transactions for the provided accountid
+ void deleteAllTransactions ( int accountid );
+
+ QString getBudgetTotal ( int budgetid, int lineitemid, int year, int month, int viewtype );
+ QString getActualTotal ( int budgetid, int year, int month, int viewtype );
+
+ // These two functions clear budget ids is either a line item or an entire budget is deleted
+ void clearBudgetIDs ( int, int );
+ void clearBudgetIDs ( int );
+
+ public slots:
+
+ void displayTransactions ( QListView *, int, bool, const char *, QDate );
+ char ** selectAllTransactions ( QDate fromdate, bool children, const char *limit, int id );
+ char ** selectNonClearedTransactions ( QDate fromdate, bool children, const char *limit, int id );
+ QString getPayee ( int );
+ QString getTransactionDescription ( int );
+ QString getNumber ( int );
+ QString getAmount ( int );
+ QString getAbsoluteAmount ( int );
+ int getCleared ( int );
+ void setCleared ( int id, int cleared );
+ int getBudgetID ( int id );
+ int getLineItemID ( int id );
+ int getDay ( int );
+ int getMonth ( int );
+ int getYear ( int );
+ int getAccountID ( int id );
+
+ private:
+
+ sqlite3 *tdb;
+ int rows, columns;
+ };
+
+#endif
+
+
+