-
Notifications
You must be signed in to change notification settings - Fork 0
/
requete.py
155 lines (136 loc) · 3.64 KB
/
requete.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
from ampalibe import Model
class Requete (Model):
def __init__(self, conf):
'''
Connexion à la base
'''
Model.__init__(self, conf)
@Model.verif_db
def list_album(self):
"""
Fonction pour récupérer la liste des albums
"""
req = """
SELECT id_album, nom_album, photo
FROM album
"""
self.cursor.execute(req)
result = self.cursor.fetchall()
self.db.commit()
return result
@Model.verif_db
def list_music(self):
"""
Fonction pour récupérer la liste des musiques
"""
req="""
SELECT id_chant, titre, photo_couverture
FROM musique
"""
self.cursor.execute(req)
result = self.cursor.fetchall()
self.db.commit()
return result
@Model.verif_db
def get_AlbumMusic(self, id_album):
"""
Function pour récupérer la liste des musiques contenu dans un albums
"""
req="""
SELECT id_chant, titre, photo_couverture
FROM musique
WHERE id_album = %s
"""
self.cursor.execute(req, (id_album,))
result = self.cursor.fetchall()
self.db.commit()
return result
@Model.verif_db
def list_tournee(self):
"""
Récupération des prochaines tournées de l'artiste X
"""
req="""
SELECT id_tournee, date_tournee, lieu, image
FROM tournee
"""
self.cursor.execute(req)
result = self.cursor.fetchall()
self.db.commit()
return result
@Model.verif_db
def get_audio(self, id_chant):
"""
Récupération du musique audio de la chanson
"""
req="""
SELECT media
FROM media
WHERE id_chant= %s AND id_type = 1
"""
self.cursor.execute(req, (id_chant,))
result = self.cursor.fetchone()
self.db.commit()
return result[0]
@Model.verif_db
def get_video(self, id_chant):
"""
Récupération du musique vidéo de la chanson
"""
req="""
SELECT media
FROM media
WHERE id_chant= %s AND id_type = 2
"""
self.cursor.execute(req, (id_chant,))
result = self.cursor.fetchone()
self.db.commit()
return result[0]
@Model.verif_db
def Music_Search(self, title):
"""
Fonction pour trouver la musique recherhé par l'utilisateur
"""
req="""
SELECT id_chant, titre, photo_couverture
FROM musique
WHERE UPPER(titre) LIKE %s
OR SOUNDEX(titre)=SOUNDEX(%s)
"""
self.cursor.execute(req, (f"%{title.upper()}%", title))
result = self.cursor.fetchall()
self.db.commit()
return result
@Model.verif_db
def get_reservation(self, id_tournee):
"""
Fonction pour vérifier la disponibilité selon la date de tournée
"""
req="""
SELECT id_reservation, date_debut, date_fin, nbre_billet
FROM reservation
WHERE id_tournee=%s
"""
self.cursor.execute(req, (id_tournee,))
result = self.cursor.fetchall()
self.db.commit()
return result
@Model.verif_db
def get_temp(self, user_id):
'''
Récuperer les données temporaire de l'utilisateur
'''
req = "SELECT tmp FROM amp_user"
self.cursor.execute(req, (user_id,))
result = self.cursor.fetchone()
self.db.commit()
return result[0]
@Model.verif_db
def set_temp(self, user_id, result):
'''
Insertion des données temporaire des utilisateur
'''
req = "UPDATE amp_user SET tmp= %s WHERE FB_id = %s"
self.cursor.execute(req, (result, user_id))
self.db.commit()
#---------------------------------Requete pour l'admin----------------------------------------#