Projet e-stock  1.0
BTS SN-IR 2019
Signaux | Fonctions membres publiques | Fonctions membres protégées | Connecteurs privés | Fonctions membres privées | Attributs privés | Liste de tous les membres
Référence de la classe IhmAuthentificationSansBadge

#include <IhmAuthentificationSansBadge.h>

Graphe de collaboration de IhmAuthentificationSansBadge:
Collaboration graph

Signaux

void utilisateurAutorise (QString identifiant, QString motDePasse)
 

Fonctions membres publiques

 IhmAuthentificationSansBadge (QWidget *parent=nullptr)
 Constructeur de la fenêtre d'authentification sans badge. Plus de détails...
 
 ~IhmAuthentificationSansBadge ()
 Destructeur de la fenêtre d'authentification sans badge. Plus de détails...
 
QString getIdUtilisateur () const
 Retourne l'identifiant de l'utilisateur. Plus de détails...
 
bool estValide ()
 Requete SQL pour valider l'identifiant de l'utilisateur et son mot de passe. Plus de détails...
 
bool estAutorise ()
 

Fonctions membres protégées

void showEvent (QShowEvent *ev)
 

Connecteurs privés

void fermer ()
 Permet de fermer le clavier virtuel. Plus de détails...
 
void validerAcces ()
 Permet de valide l'acces à l'utilisateur avec son identifiant, mot de passe. Plus de détails...
 
void effacerMessage ()
 

Fonctions membres privées

void initialiserFenetre ()
 Initialise le mode plein écran. Plus de détails...
 
void initialiserClavierVirtuel ()
 Initialisation d'un clavier virtuel. Plus de détails...
 
void supprimerClavierVirtuel ()
 Suppression du clavier virtuel. Plus de détails...
 

Attributs privés

Ui::IhmAuthentificationSansBadge * ui
 
QString identifiant
 le login de l'utilisateur Plus de détails...
 
QString motDePasse
 
QString idUtilisateur
 
QString dateValidite
 
bool valide
 
bool autorise
 
BaseDeDonneesbdd
 agrégation de l'objet BaseDeDonnees Plus de détails...
 

Documentation des constructeurs et destructeur

◆ IhmAuthentificationSansBadge()

IhmAuthentificationSansBadge::IhmAuthentificationSansBadge ( QWidget *  parent = nullptr)
explicit

Constructeur de la fenêtre gestion armoire.

Paramètres
parentQObject Adresse de l'objet Qt parent

Références bdd, BaseDeDonnees::connecter(), BaseDeDonnees::estConnecte(), fermer(), BaseDeDonnees::getInstance(), initialiserFenetre(), ui, et validerAcces().

27  :
28  QWidget(parent),
29  ui(new Ui::IhmAuthentificationSansBadge)
30 {
31  ui->setupUi(this);
32  qDebug() << Q_FUNC_INFO;
33 
35  if(!bdd->estConnecte())
36  bdd->connecter();
37 
38  // Connexion des signaux/slots
39  connect(ui->boutonConnexion, SIGNAL(clicked()), this, SLOT(validerAcces()));
40  connect(ui->boutonFermeture, SIGNAL(clicked()), this, SLOT(fermer()));
41 
43 }
static BaseDeDonnees * getInstance(QString type="QMYSQL")
Definition: ihm-estock/baseDeDonnees.cpp:38
void initialiserFenetre()
Initialise le mode plein écran.
Definition: IhmAuthentificationSansBadge.cpp:63
bool estConnecte()
Definition: ihm-estock/baseDeDonnees.cpp:70
BaseDeDonnees * bdd
agrégation de l&#39;objet BaseDeDonnees
Definition: IhmAuthentificationSansBadge.h:35
bool connecter(QString nomBase=BDD_NOMBASE, QString username=BDD_USERNAME, QString password=BDD_PASSWORD, QString serveur=BDD_SERVEUR)
Definition: ihm-estock/baseDeDonnees.cpp:76
void validerAcces()
Permet de valide l&#39;acces à l&#39;utilisateur avec son identifiant, mot de passe.
Definition: IhmAuthentificationSansBadge.cpp:132
Ui::IhmAuthentificationSansBadge * ui
Definition: IhmAuthentificationSansBadge.h:28
void fermer()
Permet de fermer le clavier virtuel.
Definition: IhmAuthentificationSansBadge.cpp:121

◆ ~IhmAuthentificationSansBadge()

IhmAuthentificationSansBadge::~IhmAuthentificationSansBadge ( )

Références BaseDeDonnees::detruireInstance(), et ui.

51 {
52  delete ui;
54  qDebug() << Q_FUNC_INFO;
55 }
static void detruireInstance()
Definition: ihm-estock/baseDeDonnees.cpp:51
Ui::IhmAuthentificationSansBadge * ui
Definition: IhmAuthentificationSansBadge.h:28

Documentation des fonctions membres

◆ effacerMessage

void IhmAuthentificationSansBadge::effacerMessage ( )
privateslot

Références ui.

Référencé par validerAcces().

210 {
211  ui->labelMessagAuthentificatioSansBadge->setText("");
212 }
Ui::IhmAuthentificationSansBadge * ui
Definition: IhmAuthentificationSansBadge.h:28

◆ estAutorise()

bool IhmAuthentificationSansBadge::estAutorise ( )

Références bdd, dateValidite, estValide(), identifiant, idUtilisateur, motDePasse, BaseDeDonnees::recuperer(), ui, et valide.

Référencé par validerAcces().

188 {
189  QString dateMaintenant = QDateTime::currentDateTime().toString("yyyy-MM-dd");
190  identifiant = ui->lineEditAuthentification->text();
191  motDePasse = ui->lineEditMotDePasse->text();
192 
193  QString requete = "SELECT idUtilisateur, DateValidite FROM Utilisateur WHERE Identifiant='" + ui->lineEditAuthentification->text() + "' AND MotDePasse='" + ui->lineEditMotDePasse->text() + "'";
194  QStringList donneesUtilisateur;
195  idUtilisateur.clear();
196  dateValidite.clear();
197  motDePasse.clear();
198  valide = bdd->recuperer(requete, donneesUtilisateur);
199  if(valide)
200  {
201  idUtilisateur = donneesUtilisateur.at(0);
202  dateValidite = donneesUtilisateur.at(1);
203  qDebug() << Q_FUNC_INFO << "valide" << valide << "idUtilisateur" << idUtilisateur << "dateValidite" << dateValidite << "motDePasse" << motDePasse;
204  }
205  qDebug() << Q_FUNC_INFO << "valide" << valide;
206  return (valide && estValide());
207 }
QString dateValidite
Definition: IhmAuthentificationSansBadge.h:32
QString idUtilisateur
Definition: IhmAuthentificationSansBadge.h:31
QString motDePasse
Definition: IhmAuthentificationSansBadge.h:30
BaseDeDonnees * bdd
agrégation de l&#39;objet BaseDeDonnees
Definition: IhmAuthentificationSansBadge.h:35
bool recuperer(QString requete, QString &donnees)
Definition: ihm-estock/baseDeDonnees.cpp:190
bool estValide()
Requete SQL pour valider l&#39;identifiant de l&#39;utilisateur et son mot de passe.
Definition: IhmAuthentificationSansBadge.cpp:157
QString identifiant
le login de l&#39;utilisateur
Definition: IhmAuthentificationSansBadge.h:29
Ui::IhmAuthentificationSansBadge * ui
Definition: IhmAuthentificationSansBadge.h:28
bool valide
Definition: IhmAuthentificationSansBadge.h:33

◆ estValide()

IhmAuthentificationSansBadge::estValide ( )

Requete SQL pour autoriser l'acces de l'utilisateur.

Renvoie
valide
valide && estValide

Références bdd, dateValidite, BaseDeDonnees::recuperer(), ui, et valide.

Référencé par estAutorise().

158 {
159  QString dateMaintenant = QDateTime::currentDateTime().toString("yyyy-MM-dd");
160  QString requete = "SELECT DateValidite FROM Utilisateur WHERE Identifiant='" + ui->lineEditAuthentification->text() + "' AND DateValidite>='" + dateMaintenant + "'";
161  qDebug() << Q_FUNC_INFO << "requete" << requete;
162  QString retour;
163  valide = bdd->recuperer(requete, retour);
164  qDebug() << Q_FUNC_INFO << "valide" << valide << "dateValidite" << dateValidite;
165  return valide;
166 }
QString dateValidite
Definition: IhmAuthentificationSansBadge.h:32
BaseDeDonnees * bdd
agrégation de l&#39;objet BaseDeDonnees
Definition: IhmAuthentificationSansBadge.h:35
bool recuperer(QString requete, QString &donnees)
Definition: ihm-estock/baseDeDonnees.cpp:190
Ui::IhmAuthentificationSansBadge * ui
Definition: IhmAuthentificationSansBadge.h:28
bool valide
Definition: IhmAuthentificationSansBadge.h:33

◆ fermer

void IhmAuthentificationSansBadge::fermer ( )
privateslot

Références supprimerClavierVirtuel().

Référencé par IhmAuthentificationSansBadge().

122 {
124  close();
125 }
void supprimerClavierVirtuel()
Suppression du clavier virtuel.
Definition: IhmAuthentificationSansBadge.cpp:107

◆ getIdUtilisateur()

QString IhmAuthentificationSansBadge::getIdUtilisateur ( ) const
Renvoie
idUtilisateur*

Références idUtilisateur.

Référencé par IhmAuthentification::autoriserSansBadge().

176 {
177  return idUtilisateur;
178 }
QString idUtilisateur
Definition: IhmAuthentificationSansBadge.h:31

◆ initialiserClavierVirtuel()

void IhmAuthentificationSansBadge::initialiserClavierVirtuel ( )
private

Référencé par showEvent().

94 {
95  QProcess processus;
96  QString programme = "/usr/bin/florence";
97  QStringList arguments;
98  arguments << "--use-config=/usr/share/doc/florence/examples/florence.conf";
99  processus.startDetached(programme, arguments);
100 }

◆ initialiserFenetre()

void IhmAuthentificationSansBadge::initialiserFenetre ( )
private

Références IHM_CSS.

Référencé par IhmAuthentificationSansBadge().

64 {
65  setStyleSheet(IHM_CSS);
66 
67  #ifndef DESKTOP
68  const int w = qApp->desktop()->availableGeometry(this).width();
69  const int h = qApp->desktop()->availableGeometry(this).height();
70  resize(w, h);
71  #else
72  // 800×480
73  resize(800, 480);
74  #endif
75  setWindowFlags(Qt::FramelessWindowHint | Qt::Dialog); // Ajouter Qt::WindowStaysOnTopHint
76  //showMaximized();
77  setWindowModality(Qt::WindowModal);
78 }
#define IHM_CSS
Definition: e-stock.h:24

◆ showEvent()

void IhmAuthentificationSansBadge::showEvent ( QShowEvent *  ev)
protected

Références initialiserClavierVirtuel(), et ui.

81 {
82  Q_UNUSED(ev)
83 
85  ui->lineEditAuthentification->setFocus();
86 }
void initialiserClavierVirtuel()
Initialisation d&#39;un clavier virtuel.
Definition: IhmAuthentificationSansBadge.cpp:93
Ui::IhmAuthentificationSansBadge * ui
Definition: IhmAuthentificationSansBadge.h:28

◆ supprimerClavierVirtuel()

void IhmAuthentificationSansBadge::supprimerClavierVirtuel ( )
private

Référencé par fermer().

108 {
109  QProcess processus;
110  QString programme = "killall"; // le nom du programme
111  QStringList arguments; // arguments du programme
112  arguments << "florence";
113  processus.startDetached(programme, arguments);
114 }

◆ utilisateurAutorise

void IhmAuthentificationSansBadge::utilisateurAutorise ( QString  identifiant,
QString  motDePasse 
)
signal

Référencé par validerAcces().

◆ validerAcces

void IhmAuthentificationSansBadge::validerAcces ( )
privateslot

Références effacerMessage(), estAutorise(), identifiant, motDePasse, ui, et utilisateurAutorise().

Référencé par IhmAuthentificationSansBadge().

133 {
134  if(estAutorise())
135  {
136  close();
138  }
139  else
140  {
141  ui->labelMessagAuthentificatioSansBadge->setText("Identifiant non valide !");
142  QTimer::singleShot(1000, this, SLOT(effacerMessage()));
143  }
144  // Réinitialiser la saisie d'un nouvel utilisateur
145  ui->lineEditAuthentification->setText("");
146  ui->lineEditMotDePasse->setText("");
147  ui->lineEditAuthentification->setFocus();
148 }
bool estAutorise()
Definition: IhmAuthentificationSansBadge.cpp:187
QString motDePasse
Definition: IhmAuthentificationSansBadge.h:30
void effacerMessage()
Definition: IhmAuthentificationSansBadge.cpp:209
void utilisateurAutorise(QString identifiant, QString motDePasse)
QString identifiant
le login de l&#39;utilisateur
Definition: IhmAuthentificationSansBadge.h:29
Ui::IhmAuthentificationSansBadge * ui
Definition: IhmAuthentificationSansBadge.h:28

Documentation des données membres

◆ autorise

bool IhmAuthentificationSansBadge::autorise
private

◆ bdd

BaseDeDonnees* IhmAuthentificationSansBadge::bdd
private

◆ dateValidite

QString IhmAuthentificationSansBadge::dateValidite
private

Référencé par estAutorise(), et estValide().

◆ identifiant

QString IhmAuthentificationSansBadge::identifiant
private

Référencé par estAutorise(), et validerAcces().

◆ idUtilisateur

QString IhmAuthentificationSansBadge::idUtilisateur
private

Référencé par estAutorise(), et getIdUtilisateur().

◆ motDePasse

QString IhmAuthentificationSansBadge::motDePasse
private

Référencé par estAutorise(), et validerAcces().

◆ ui

Ui::IhmAuthentificationSansBadge* IhmAuthentificationSansBadge::ui
private

◆ valide

bool IhmAuthentificationSansBadge::valide
private

Référencé par estAutorise(), et estValide().


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