Projet e-stock  1.0
BTS SN-IR 2019
Signaux | Fonctions membres publiques | Propriétés | Attributs privés | Liste de tous les membres
Référence de la classe UtilisateurTerminal

#include <utilisateurTerminal.h>

Graphe de collaboration de UtilisateurTerminal:
Collaboration graph

Signaux

void utilisateurUpdated ()
 

Fonctions membres publiques

 UtilisateurTerminal (QObject *p_parent=nullptr)
 
 ~UtilisateurTerminal ()
 
Q_INVOKABLE bool lireUtilisateur (QString p_identifiant, QString p_password, bool p_doForceLogin)
 
Q_INVOKABLE bool reinitialiser ()
 
Q_INVOKABLE bool estExistant ()
 
Q_INVOKABLE bool estAutorise ()
 
QString getNom () const
 
QString getPrenom () const
 

Propriétés

QString Nom
 
QString Prenom
 

Attributs privés

QString m_idUtilisateur
 
QString m_idProfil
 
QString m_idGroupe
 
QString m_identifiant
 
QString m_nom
 
QString m_prenom
 
QString m_dateValidite
 
QString m_badge
 
QString m_email
 
QString m_profil
 
QString m_groupe
 
BaseDeDonneesm_pBaseDeDonnees
 
bool m_estExistant
 
bool m_estAutorise
 

Documentation des constructeurs et destructeur

◆ UtilisateurTerminal()

UtilisateurTerminal::UtilisateurTerminal ( QObject *  p_parent = nullptr)

Références BaseDeDonnees::getInstance(), m_estAutorise, m_estExistant, et m_pBaseDeDonnees.

5  : QObject(p_parent)
6 {
7  m_estExistant = false;
8  m_estAutorise = false;
10 }
static BaseDeDonnees * getInstance(QString type="QMYSQL")
Definition: ihm-estock/baseDeDonnees.cpp:38
bool m_estExistant
Definition: utilisateurTerminal.h:53
bool m_estAutorise
Definition: utilisateurTerminal.h:54
BaseDeDonnees * m_pBaseDeDonnees
Definition: utilisateurTerminal.h:52

◆ ~UtilisateurTerminal()

UtilisateurTerminal::~UtilisateurTerminal ( )

Références BaseDeDonnees::detruireInstance().

13 {
15 }
static void detruireInstance()
Definition: ihm-estock/baseDeDonnees.cpp:51

Documentation des fonctions membres

◆ estAutorise()

bool UtilisateurTerminal::estAutorise ( )

Références m_estAutorise.

129 {
130  return m_estAutorise;
131 }
bool m_estAutorise
Definition: utilisateurTerminal.h:54

◆ estExistant()

bool UtilisateurTerminal::estExistant ( )

Références m_estExistant.

124 {
125  return m_estExistant;
126 }
bool m_estExistant
Definition: utilisateurTerminal.h:53

◆ getNom()

QString UtilisateurTerminal::getNom ( ) const

Références m_nom.

134 {
135  return m_nom;
136 }
QString m_nom
Definition: utilisateurTerminal.h:43

◆ getPrenom()

QString UtilisateurTerminal::getPrenom ( ) const

Références m_prenom.

139 {
140  return m_prenom;
141 }
QString m_prenom
Definition: utilisateurTerminal.h:44

◆ lireUtilisateur()

bool UtilisateurTerminal::lireUtilisateur ( QString  p_identifiant,
QString  p_password,
bool  p_doForceLogin 
)
A faire:
Vérifier la validité de l'utilisateur avec son mot de passe

Références m_badge, m_dateValidite, m_email, m_estAutorise, m_estExistant, m_groupe, m_identifiant, m_idGroupe, m_idProfil, m_idUtilisateur, m_nom, m_pBaseDeDonnees, m_prenom, m_profil, BaseDeDonnees::recuperer(), et utilisateurUpdated().

18 {
19  QString requeteExistant =
20  "SELECT COUNT(*) AS decompte " \
21  "FROM Utilisateur " \
22  "WHERE Utilisateur.Identifiant='" + p_identifiant + "'";
23  QString valeurDecompte;
24 
25  m_estExistant = false;
26  m_estAutorise = false;
27 
28  if (!m_pBaseDeDonnees->recuperer(requeteExistant, valeurDecompte))
29  {
30  return false;
31  }
32  else
33  {
34  if (valeurDecompte == "0") // Inutile de convertir en valeur numérique ici car COUNT(*)
35  {
36  return false;
37  }
38  else
39  {
40  m_estExistant = true;
41  m_estAutorise = false;
42  }
43  }
44 
45  QString requeteAutorisation =
46  "SELECT Utilisateur.idUtilisateur, Utilisateur.Nom, Utilisateur.Prenom, Utilisateur.DateValidite, Utilisateur.Identifiant, Utilisateur.Badge, Utilisateur.Email, Profil.idProfil, Profil.Nom AS Profil, Groupe.idGroupe, Groupe.Nom AS Groupe " \
47  "FROM Utilisateur " \
48  "INNER JOIN Groupe ON Groupe.idGroupe=Utilisateur.idGroupe " \
49  "INNER JOIN Profil ON Profil.idProfil=Utilisateur.idProfil " \
50  "WHERE Utilisateur.Identifiant='" + p_identifiant + "'";
51 
52  QStringList donneesUtilisateur;
53 
54  if (!p_doForceLogin)
55  {
59  requeteAutorisation += " AND Utilisateur.MotDePasse='" + p_password + "'";
60  }
61 
62 
63  /*
64  * Exemple de résultat :
65 +---------------+----------+--------+--------------+-------------+-------+-------------------------+----------+-------------+----------+----------+
66 | idUtilisateur | Nom | Prenom | DateValidite | Identifiant | Badge | Email | idProfil | Profil | idGroupe | Groupe |
67 +---------------+----------+--------+--------------+-------------+-------+-------------------------+----------+-------------+----------+----------+
68 | 7 | GAUTHIER | Robin | 2019-07-01 | gauthier.r | 4444 | rgauthier2510@gmail.com | 3 | Utilisateur | 5 | T-BTS-SN |
69 +---------------+----------+--------+--------------+-------------+-------+-------------------------+----------+-------------+----------+----------+
70  */
71 
72  if (m_pBaseDeDonnees->recuperer(requeteAutorisation, donneesUtilisateur))
73  {
74  qDebug() << Q_FUNC_INFO << "donneesUtilisateur" << donneesUtilisateur;
75  m_idUtilisateur = donneesUtilisateur.at(0);
76  m_idProfil = donneesUtilisateur.at(7);
77  m_idGroupe = donneesUtilisateur.at(9);
78  m_identifiant = donneesUtilisateur.at(4);
79  m_nom = donneesUtilisateur.at(1);
80  m_prenom = donneesUtilisateur.at(2);
81  m_dateValidite = donneesUtilisateur.at(3);
82  m_badge = donneesUtilisateur.at(5);
83  m_email = donneesUtilisateur.at(6);
84  m_profil = donneesUtilisateur.at(8);
85  m_groupe = donneesUtilisateur.at(10);
86 
87  m_estAutorise = true;
88 
89  emit utilisateurUpdated();
90 
91  return true;
92  }
93  else
94  {
95  m_estAutorise = false;
96 
97  return false;
98  }
99 
100  return false;
101 }
QString m_email
Definition: utilisateurTerminal.h:47
QString m_profil
Definition: utilisateurTerminal.h:49
QString m_dateValidite
Definition: utilisateurTerminal.h:45
QString m_groupe
Definition: utilisateurTerminal.h:50
QString m_idGroupe
Definition: utilisateurTerminal.h:41
bool m_estExistant
Definition: utilisateurTerminal.h:53
QString m_badge
Definition: utilisateurTerminal.h:46
bool m_estAutorise
Definition: utilisateurTerminal.h:54
bool recuperer(QString requete, QString &donnees)
Definition: ihm-estock/baseDeDonnees.cpp:190
BaseDeDonnees * m_pBaseDeDonnees
Definition: utilisateurTerminal.h:52
QString m_identifiant
Definition: utilisateurTerminal.h:42
QString m_idProfil
Definition: utilisateurTerminal.h:40
QString m_idUtilisateur
Definition: utilisateurTerminal.h:39
QString m_nom
Definition: utilisateurTerminal.h:43
QString m_prenom
Definition: utilisateurTerminal.h:44

◆ reinitialiser()

bool UtilisateurTerminal::reinitialiser ( )

Références m_badge, m_dateValidite, m_email, m_estAutorise, m_estExistant, m_groupe, m_identifiant, m_idGroupe, m_idProfil, m_idUtilisateur, m_nom, m_prenom, m_profil, et utilisateurUpdated().

104 {
105  qDebug() << Q_FUNC_INFO;
106  m_idUtilisateur.clear();
107  m_idProfil.clear();
108  m_idGroupe.clear();
109  m_identifiant.clear();
110  m_nom.clear();
111  m_prenom.clear();
112  m_dateValidite.clear();
113  m_badge.clear();
114  m_email.clear();
115  m_profil.clear();
116  m_groupe.clear();
117  m_estExistant = false;
118  m_estAutorise = false;
119  emit utilisateurUpdated();
120  return true;
121 }
QString m_email
Definition: utilisateurTerminal.h:47
QString m_profil
Definition: utilisateurTerminal.h:49
QString m_dateValidite
Definition: utilisateurTerminal.h:45
QString m_groupe
Definition: utilisateurTerminal.h:50
QString m_idGroupe
Definition: utilisateurTerminal.h:41
bool m_estExistant
Definition: utilisateurTerminal.h:53
QString m_badge
Definition: utilisateurTerminal.h:46
bool m_estAutorise
Definition: utilisateurTerminal.h:54
QString m_identifiant
Definition: utilisateurTerminal.h:42
QString m_idProfil
Definition: utilisateurTerminal.h:40
QString m_idUtilisateur
Definition: utilisateurTerminal.h:39
QString m_nom
Definition: utilisateurTerminal.h:43
QString m_prenom
Definition: utilisateurTerminal.h:44

◆ utilisateurUpdated

void UtilisateurTerminal::utilisateurUpdated ( )
signal

Référencé par lireUtilisateur(), et reinitialiser().

Documentation des données membres

◆ m_badge

QString UtilisateurTerminal::m_badge
private

Référencé par lireUtilisateur(), et reinitialiser().

◆ m_dateValidite

QString UtilisateurTerminal::m_dateValidite
private

Référencé par lireUtilisateur(), et reinitialiser().

◆ m_email

QString UtilisateurTerminal::m_email
private

Référencé par lireUtilisateur(), et reinitialiser().

◆ m_estAutorise

bool UtilisateurTerminal::m_estAutorise
private

◆ m_estExistant

bool UtilisateurTerminal::m_estExistant
private

◆ m_groupe

QString UtilisateurTerminal::m_groupe
private

Référencé par lireUtilisateur(), et reinitialiser().

◆ m_identifiant

QString UtilisateurTerminal::m_identifiant
private

Référencé par lireUtilisateur(), et reinitialiser().

◆ m_idGroupe

QString UtilisateurTerminal::m_idGroupe
private

Référencé par lireUtilisateur(), et reinitialiser().

◆ m_idProfil

QString UtilisateurTerminal::m_idProfil
private

Référencé par lireUtilisateur(), et reinitialiser().

◆ m_idUtilisateur

QString UtilisateurTerminal::m_idUtilisateur
private

Référencé par lireUtilisateur(), et reinitialiser().

◆ m_nom

QString UtilisateurTerminal::m_nom
private

Référencé par getNom(), lireUtilisateur(), et reinitialiser().

◆ m_pBaseDeDonnees

BaseDeDonnees* UtilisateurTerminal::m_pBaseDeDonnees
private

◆ m_prenom

QString UtilisateurTerminal::m_prenom
private

◆ m_profil

QString UtilisateurTerminal::m_profil
private

Référencé par lireUtilisateur(), et reinitialiser().

Documentation des propriétés

◆ Nom

QString UtilisateurTerminal::Nom

◆ Prenom

QString UtilisateurTerminal::Prenom

La documentation de cette classe a été générée à partir des fichiers suivants :