This repository has been archived on 2021-09-15. You can view files and clone it, but cannot push or open issues or pull requests.
L3GestionParking/src/m/Client.py

86 lines
2.8 KiB
Python

import random
import string
from src.m.connexionBDD import connexionBDD
__author__ = 'sidya'
class Client:
def __init__(self,id, nom, prenom, adresse, typeAbonnement):
if id is None:
self.__nom = nom
self.__prenom = prenom
self.__typeAbonnement = typeAbonnement
self.__adresse = adresse
while True:
id = ''.join(random.choice(string.ascii_uppercase + string.ascii_lowercase + string.digits) for _ in
range(random.randint(1, 10)))
try :
Client(id)
except IndexError :
break
self.__id = id
c = connexionBDD()
c.execute("INSERT INTO client (idClient, nom, prenom, adresse, typeAbonnement) VALUES (?,?,?,?,?)",
(str(self.__id), str(self.__nom), str(self.__prenom), "", str(self.__typeAbonnement)))
c.seDeconnecter()
else:
c = connexionBDD()
r = c.execute("SELECT * FROM client WHERE idClient='"+str(id)+"'")
row = r.fetchone()
if row is None :
raise IndexError("Invalid id")
c.seDeconnecter()
self.__id = id
self.__nom = row["nom"]
self.__prenom = row["prenom"]
self.__typeAbonnement = row["typeAbonnement"]
self.__adresse = row["adresse"]
def maj(self, nom, prenom, adresse, typeAbonnement):
self.__nom = nom
self.__prenom = prenom
self.__typeAbonnement = typeAbonnement
self.__adresse = adresse
c = connexionBDD()
c.execute("UPDATE client SET nom = ?, prenom = ?, adresse = ?, typeAbonnement = ? WHERE idClient = ?",
(str(self.__nom), str(self.__prenom), "", str(self.__typeAbonnement), str(self.__id)))
c.seDeconnecter()
def desabo(self):
c = connexionBDD()
c.execute("DELETE FROM client WHERE idClient ='"+str(id)+"'")
c.seDeconnecter()
@property
def prenom(self):
return self.__prenom
@property
def nom(self):
return self.__nom
@property
def id(self):
return self.__id
@property
def adr(self,nom, prenom, adresse, typeAbonnement):
return self.__adresse
@property
def abonnement(self):
return self.__typeAbonnement
def __str__(self):
return "[Client :" \
" id = " + str(self.__id) + ", " \
" prenom = " + str(self.__prenom) + ", " \
" nom = " + str(self.__nom) + ", " \
" adresse = " + str(self.__adresse) + ", " \
" typeAbonnement = " + str(self.__typeAbonnement) + "]"
class TypeAbonnement:
ABONNE = 0
SUPER_ABONNE = 1