KissCount/controller/KissCount.h

55 lines
1.3 KiB
C++

#ifndef KISSCOUNT_H
#define KISSCOUNT_H
#include <fstream>
#include <iostream>
#include <list>
#include <model/model.h>
#include <view/wxUI.h>
class wxUI;
class KissCount
{
public:
KissCount();
~KissCount();
std::list<wxString> GetUsers();
bool IsValidUser(wxString user, wxString password);
void LoadUser(wxString user);
User* GetUser();
void ChangePassword(wxString password);
bool UserExists(wxString name);
void ChangeName(wxString name);
void NewUser(wxString name);
void LoadYear(int year, bool force=false);
wxString AddOperation(Operation op);
void UpdateOperation(Operation op);
void DeleteOperation(Operation op);
void DeleteOperations(int month, int year);
double GetAccountAmount(wxString id, int month, int year);
void SetAccountAmount(int month, int year, wxString accountId, double value);
wxString AddAccount(Account ac);
void UpdateAccount(Account ac);
void DeleteAccount(Account ac);
wxString AddCategory(Category category);
void UpdateCategory(Category category);
void DeleteCategory(Category category);
std::map<int, std::vector<int> > GetAllOperations();
void GenerateMonth(int monthFrom, int yearFrom, int monthTo, int yearTo);
void KillMe();
private:
wxUI* _wxUI;
Database* _db;
User* _user;
};
#endif