Aller à la documentation de ce fichier.00001 #ifndef USER_H
00002 #define USER_H
00003
00004 #include "modele.h"
00005
00006 #include <QList>
00007 #include <QMap>
00008 #include "emprunt.h"
00009
00010 #include "../configuedata.h"
00011
00012 class User : public Modele
00013 {
00014 public:
00015 User();
00016
00017 void charger(int id);
00018 static User select(int id);
00019 static User selectLite(int id);
00020 static void listUsersCompletition(bool all, QStringList &list, QMap<QString,int> &map);
00021 static QList< User >* listUsers(QString lettre, int page, int nbrElements);
00022 static int nbrUsers();
00023 static int nbrUsers(QString lettre);
00024 static QString mailList(bool petit, bool grand = false, bool perm = false, bool bureau = false, bool ancien = false);
00025
00026
00027 bool emprunter(QString cote, QString &message);
00028 bool rendre(QString cote);
00029
00030
00031 void chargerEmprunt();
00032 QStringList listEmpruntActuel();
00033 QStringList listEmpruntPast();
00034 void calculNbrEmpruntActuel();
00035 int nbrEmpruntActuel() { return m_nbrEmpruntActuel; }
00036
00037
00038
00039 static int adresseId( QString adresse );
00040 virtual bool creer();
00041 virtual bool modifier() const;
00042 virtual bool supprimer();
00043
00044
00045
00046
00047 QString name() const { return m_name; }
00048 QString lastname() const { return m_lastname; }
00049 QString email() const { return m_email; }
00050 QString semestre() const { return m_semestre; }
00051 bool paid() const { return m_paid; }
00052 bool deposit() const { return m_deposit; }
00053 QString comment() const { return m_comment; }
00054 QList< Emprunt > emprunts() const { return m_emprunts; }
00055 int nbrMax() const { return m_grade.nbr_max; }
00056 QString grade() const { return m_grade.name; }
00057 int gradeType() const { return m_grade.type; }
00058
00059 void setName(QString name) { m_name = name; }
00060 void setLastname(QString lastname) { m_lastname = lastname; }
00061 void setEmail(QString email) { m_email = email; }
00062 void setGrade(QString grade) { m_grade.name = grade; }
00063 void setSemestre(QString semestre) { m_semestre = semestre; }
00064 void setPaid(bool paid) { m_paid = paid; }
00065 void setDeposit(bool deposit) { m_deposit = deposit; }
00066 void setComment(QString comment) { m_comment = comment; }
00067
00068
00069 protected:
00070 QString m_name;
00071 QString m_lastname;
00072 QString m_email;
00073 Grade m_grade;
00074 QString m_semestre;
00075 bool m_paid;
00076 bool m_deposit;
00077 QString m_comment;
00078
00079 QList< Emprunt > m_emprunts;
00080 int m_nbrEmpruntActuel;
00081
00082
00083
00084
00085
00086
00087
00088 };
00089
00090 #endif // USER_H