Change verificationIdentifiants
behaviour and add a method to fetch data on user by id
This commit is contained in:
parent
bc177c2aa8
commit
7c5e52a59f
1 changed files with 20 additions and 9 deletions
29
users.py
29
users.py
|
@ -28,7 +28,7 @@ class Utilisateurs(BaseDeDonnees):
|
|||
passe="P@ssword",
|
||||
metier=0,
|
||||
nom="Admin",
|
||||
prenom="Admin",
|
||||
prenom="Système",
|
||||
naissance="2000/10/09",
|
||||
adresse="12 Rue de Montmartre",
|
||||
postal=46800
|
||||
|
@ -54,16 +54,19 @@ class Utilisateurs(BaseDeDonnees):
|
|||
"""
|
||||
self.requete(requete, pseudo)
|
||||
|
||||
def verificationIdentifiants(self, pseudo: str, motDePasse: str) -> bool:
|
||||
"""Renvoie vrai ou faux si les identifiants données sont bons."""
|
||||
def verificationIdentifiants(self, pseudo: str, motDePasse: str):
|
||||
"""
|
||||
Retourne l'ID de l'utilisateur si trouvé dans la base de donnée ainsi
|
||||
que son métier (`tuple`), sinon renvoie `(0,)`.
|
||||
"""
|
||||
requete = """
|
||||
SELECT EXISTS (
|
||||
SELECT 1 FROM utilisateurs
|
||||
WHERE pseudo = ? AND passe = ?
|
||||
)
|
||||
SELECT id, metier FROM utilisateurs
|
||||
WHERE pseudo = ? AND passe = ?
|
||||
"""
|
||||
# Vrai si le premier élément que renvoie la requête au dessus est 1
|
||||
return True if self.affichageResultat(self.requete(requete, [pseudo, motDePasse]))[0][0] == 1 else False
|
||||
reponseBaseDeDonnee = self.affichageResultat(self.requete(requete, [pseudo, motDePasse]))
|
||||
if len(reponseBaseDeDonnee) == 0: # si les identifiants renseignés sont mauvais
|
||||
return (0,)
|
||||
return reponseBaseDeDonnee[0]
|
||||
|
||||
def listUtilisateurs(self) -> list:
|
||||
"""Retourne la liste des nom d'utilisateurs."""
|
||||
|
@ -72,3 +75,11 @@ class Utilisateurs(BaseDeDonnees):
|
|||
"""
|
||||
# i[0] parce que sinon ça renvoie des Tuple qui ressemble à ça : `(Utilisateur,)`
|
||||
return [i[0] for i in self.affichageResultat(self.requete(requete))]
|
||||
|
||||
def recuperationUtilisateur(self, id: int) -> list:
|
||||
"""Retourne les informations d'un utilisateur grâce à son ID."""
|
||||
requete = """
|
||||
SELECT pseudo, passe, metier, nom, prenom, naissance, adresse, postal FROM utilisateurs
|
||||
WHERE id = ?
|
||||
"""
|
||||
return self.affichageResultat(self.requete(requete, [id]))
|
||||
|
|
Reference in a new issue