Projet e-stock  0.2
BTS SNIR LaSalle Avignon 2020
Supervision.h
Aller à la documentation de ce fichier.
1 #ifndef SUPERVISION_H
2 #define SUPERVISION_H
3 
18 #include <QObject>
19 #include <QString>
20 #include <QVector>
21 
22 #define DEBUG_SUPERVISION
23 //#define CHANGE_PASSWORD_BEFORE
24 #define SUPERVISION_TEST_POIDS
25 
26 #define PRECISION 0
27 
28 class Armoire;
29 class Article;
30 class Ihm;
31 class Bdd;
32 class CodeBarre;
33 class Communication;
34 class Rfid;
35 class Utilisateur;
36 class Communication;
37 class Casier;
38 
53 {
54  Q_OBJECT
55 
56 public:
57  Supervision(Ihm *parent = nullptr);
58  ~Supervision();
59 
61  void creerCasiers();
62  QStringList getInformationsArmoire();
63 
64 public slots:
65  void verifierAuthentificationBadge(QString badge);
66  void verifierAuthentificationIdentifiant(QString identifiant, QString motDePasse);
67  void rechercherArticle(QString recherche);
68  void selectionnerArticle(QString nomArticle);
69  void traiterTramePoids(QString trame);
70 
71 signals:
72  void reponseDemandeDeConnexion(bool, QString);
74  void articlesTrouves(QVector<QStringList>);
75  void donneesArticleSelectionne(QVector<QStringList>);
76  void donneesArticleSelectionne(QStringList);
77 
78 private:
79  Ihm *ihm;
80  Bdd *bdd;
86  QVector<Casier*> casiers;
87 
88  void connecterSignauxSlots();
89 
90  // Athentification
91  QStringList recupererDonneesUtilisateur(QString requeteBDD);
92  void crypterMotDepasse(QString &motDePasse);
93  bool verifierDateValidite(QString stringDateValidite);
94  bool verifierDonneesUtilisateur(QStringList &donnees);
95  void connecterUtilisateur(QStringList &donnees);
96 
97  QString extrairePoids(QString trame);
98  QString extraireNumeroCasier(QString trame);
99  int compter(QString poidArticle, QString poidTotal, QString tare);
100  int arrondir(QString arrondire);
101 
102  void ajouterDonneesArticle(Article *article, QVector<QStringList> &donneesArticle, QStringList &donnees);
103 };
104 
105 #endif // SUPERVISION_H
void verifierAuthentificationIdentifiant(QString identifiant, QString motDePasse)
[verifierAuthentificationBadge]
void donneesArticleSelectionne(QVector< QStringList >)
void creerCasiers()
Définition de la méthode creerCasiers.
Definition: Supervision.cpp:90
La classe Article traite les articles.
Definition: Article.h:63
Armoire * armoire
association d&#39;un objet Armoire
Definition: Supervision.h:84
void connecterSignauxSlots()
[connecterUtilisateur]
bool verifierDonneesUtilisateur(QStringList &donnees)
Définition de la méthode verifierDonneesUtilisateur.
~Supervision()
Définition du destructeur de Supervision.
Definition: Supervision.cpp:66
CodeBarre * codeBarre
association d&#39;un objet CodeBarre
Definition: Supervision.h:83
Communication * communication
association d&#39;un objet Communication
Definition: Supervision.h:85
La classe Supervision permet de superviser l&#39;ensemble de l&#39;application.
Definition: Supervision.h:52
void traiterTramePoids(QString trame)
[selectionnerArticle_supervision]
La classe Casier gère le casier contenant des articles.
Definition: Casier.h:32
Bdd * bdd
association d&#39;un objet Bdd (accès à la base de données)
Definition: Supervision.h:80
QString extraireNumeroCasier(QString trame)
Définition de la méthode extraireNumeroCasier.
void crypterMotDepasse(QString &motDePasse)
[recupererDonneesUtilisateur]
void connecterUtilisateur(QStringList &donnees)
[verifierDonneesUtilisateur]
QVector< Casier * > casiers
les casiers de l&#39;armoire
Definition: Supervision.h:86
int compter(QString poidArticle, QString poidTotal, QString tare)
Définition de la méthode compter.
void verifierAuthentificationBadge(QString badge)
Définition de la méthode verifierAuthentificationBadge.
void ajouterDonneesArticle(Article *article, QVector< QStringList > &donneesArticle, QStringList &donnees)
Définition de la méthode ajouterDonneesArticle.
Rfid * rfid
association d&#39;un objet Rfid (le lecteur de badge)
Definition: Supervision.h:81
Déclaration de la classe CodeBarre.
Definition: CodeBarre.h:31
void rechercherArticle(QString recherche)
Définition de la méthode rechercherArticle.
void deconnecterUtilisateur()
Méthode qui permet la déconnexion de l&#39;utilisateur.
Definition: Supervision.cpp:76
QStringList getInformationsArmoire()
Définition de la méthode getInformationsArmoire.
Déclaration de la classe Ihm.
Definition: Ihm.h:65
bool verifierDateValidite(QString stringDateValidite)
[crypterMotDepasse]
Supervision(Ihm *parent=nullptr)
Définition du constructeur de la classe Supervision.
Definition: Supervision.cpp:36
La classe Utilisateur gère les données relative à l&#39;utilisateur.
Definition: Utilisateur.h:52
QString extrairePoids(QString trame)
Définition de la méthode extrairePoids.
void selectionnerArticle(QString nomArticle)
[Supervision_rechercherArticle]
QStringList recupererDonneesUtilisateur(QString requeteBDD)
[verifierAuthentificationIdentifiant]
void articlesTrouves(QVector< QStringList >)
La classe Communication permet de communiquer avec le port série.
Definition: Communication.h:46
La classe QObject est la classe de base de tous les objets Qt. Elle permet à ces objets Qt de dispose...
void reponseDemandeDeConnexion(bool, QString)
int arrondir(QString arrondire)
Définition de la méthode arrondir.
Ihm * ihm
association d&#39;un objet Ihm (fenêtre princiaple de l&#39;application)
Definition: Supervision.h:79
La classe Armoire traite les articles.
Definition: Armoire.h:49
Déclaration de la classe utilisant la base de données.
Definition: Bdd.h:42
void erreurDepassementQuantite()
La classe Rfid traite la trame reçue d&#39;un lecteur Rfid.
Definition: Rfid.h:35
Utilisateur * utilisateur
association d&#39;un objet Utilisateur (l&#39;utilisateur authentifié)
Definition: Supervision.h:82