2010-05-14 15:04:01 +02:00
|
|
|
#ifndef USER_H
|
|
|
|
#define USER_H
|
|
|
|
|
2010-06-03 18:28:38 +02:00
|
|
|
#include <vector>
|
2010-05-24 20:14:15 +02:00
|
|
|
#include <wx/wx.h>
|
2010-05-15 11:21:42 +02:00
|
|
|
#include "Preferences.h"
|
2010-05-14 15:04:01 +02:00
|
|
|
|
2010-05-16 10:35:34 +02:00
|
|
|
struct operation {
|
|
|
|
wxString id;
|
|
|
|
unsigned int day;
|
|
|
|
unsigned int month;
|
|
|
|
unsigned int year;
|
2010-05-27 21:09:02 +02:00
|
|
|
double amount;
|
2010-05-16 10:35:34 +02:00
|
|
|
wxString description;
|
|
|
|
wxString category;
|
|
|
|
bool fix_cost;
|
2010-05-16 20:09:18 +02:00
|
|
|
wxString account;
|
2010-05-16 10:35:34 +02:00
|
|
|
} ;
|
|
|
|
|
2010-05-24 20:14:15 +02:00
|
|
|
struct Account {
|
|
|
|
wxString id;
|
|
|
|
wxString name;
|
|
|
|
wxString number;
|
|
|
|
int amount;
|
|
|
|
bool shared;
|
|
|
|
bool _default;
|
|
|
|
};
|
|
|
|
|
2010-05-14 15:04:01 +02:00
|
|
|
class User
|
|
|
|
{
|
2010-05-15 11:21:42 +02:00
|
|
|
public:
|
|
|
|
~User();
|
|
|
|
|
|
|
|
wxString _id;
|
2010-05-14 15:04:01 +02:00
|
|
|
wxString _name;
|
|
|
|
wxString _password;
|
2010-05-24 20:14:15 +02:00
|
|
|
std::map<wxString, Account> _accounts;
|
2010-06-03 18:28:38 +02:00
|
|
|
std::map<unsigned int, std::map<unsigned int, std::vector<operation> >* > _operations;
|
2010-05-15 11:21:42 +02:00
|
|
|
Preferences _preferences;
|
2010-05-24 20:14:15 +02:00
|
|
|
|
|
|
|
wxString GetCategoryName(wxString catId);
|
2010-06-03 18:28:38 +02:00
|
|
|
wxString GetCategoryId(wxString catName);
|
2010-05-24 20:14:15 +02:00
|
|
|
wxString GetAccountName(wxString accountId);
|
2010-06-03 18:28:38 +02:00
|
|
|
wxString GetAccountId(wxString accountName);
|
2010-05-27 21:09:02 +02:00
|
|
|
int GetCategoriesNumber();
|
2010-06-02 22:14:11 +02:00
|
|
|
int GetAccountsNumber();
|
|
|
|
int GetOperationsNumber(int month, int year);
|
2010-05-14 15:04:01 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|