From e87c0cba3d107dbd04357cc17cdf13d661514c84 Mon Sep 17 00:00:00 2001
From: Aveias <spam@aveias.fr>
Date: Sat, 15 Jul 2017 19:19:57 +0200
Subject: [PATCH] =?UTF-8?q?fonction=20suppression=20utilisateur=20et=20r?=
 =?UTF-8?q?=C3=A9cup=C3=A9ration=20des=20roles?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 Users/Model.py | 27 +++++++++++++++++++++++++--
 1 file changed, 25 insertions(+), 2 deletions(-)

diff --git a/Users/Model.py b/Users/Model.py
index 23072fd..99c4d0f 100644
--- a/Users/Model.py
+++ b/Users/Model.py
@@ -8,6 +8,7 @@ class User:
     def __init__(self, id):
         """Constructeur créant utilisateur à partir d'un ID"""
         self.identifiant = id
+        self.roles = list();
 
         #On va chercher l'user en base de données
         link = db.DBLink()
@@ -30,6 +31,9 @@ class User:
             self.cout = cout
             self.id_fonc = id_fonc
 
+        #Récupération de la liste des roles
+        self.getRoles()
+
 
     def hydrate(self, nom, prenom, identifiant, mdp, cout, idfonc, fonction, pole):
         """Hydratation de l'objet"""
@@ -60,8 +64,27 @@ class User:
         link.commit(query, [self.nom, self.prenom, self.identifiant, self._mdp, self.id_fonc, self.cout, self._id_table])
 
     def delete(self):
-        """supprimer un utilisateur"""
-        
+        """supprimer l'utilisateur courant"""
+        link = db.DBLink()
+        query = "DELETE \
+                FROM utilisateur \
+                WHERE IDUtil = %s"
+        link.commit(query, [self._id_table, ])
+
+        query = "DELETE \
+                FROM roleattribution \
+                WHERE IDUtil = %s"
+        link.commit(query, [self._id_table, ])
+
 
     def getRoles(self):
         """liste des roles de l'utilisateur"""
+        link = db.DBLink()
+        query = "SELECT a.IDRole AS id_role, r.Libellé AS role \
+                FROM roleattribution AS a \
+                JOIN role AS r ON a.IDRole = r.IDRole \
+                WHERE a.IDUtil = %s"
+        result = link.query(query, [self._id_table, ])
+
+        for id_role, role in result:
+            self.roles.append((id_role, role))