Qwael 4.0.0.0.3__py3-none-any.whl → 4.0.0.0.5__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Qwael/Multidata.py CHANGED
@@ -22,10 +22,14 @@ class Admin:
22
22
  print("Connection Error:", e)
23
23
 
24
24
  # ------------------------------------------------------
25
- # INSERT (db.add)
25
+ # ADD
26
26
  # ------------------------------------------------------
27
27
  def add(self, table, **kwargs):
28
- Control = kwargs.pop("Control", None)
28
+ external_control = None
29
+
30
+ if "Control" in kwargs:
31
+ external_control = kwargs["Control"]
32
+ kwargs.pop("Control")
29
33
 
30
34
  keys = ", ".join(kwargs.keys())
31
35
  values = ", ".join(["%s"] * len(kwargs))
@@ -35,15 +39,14 @@ class Admin:
35
39
  self.cursor.execute(sql, tuple(kwargs.values()))
36
40
  self.conn.commit()
37
41
  print("Added!")
38
-
39
- if Control is not None:
40
- Control.append(True)
41
-
42
+ if external_control is not None:
43
+ external_control.append(True)
44
+ return True
42
45
  except mysql.connector.Error as e:
43
46
  print("Insert Error:", e)
44
-
45
- if Control is not None:
46
- Control.append(False)
47
+ if external_control is not None:
48
+ external_control.append(False)
49
+ return False
47
50
 
48
51
  # ------------------------------------------------------
49
52
  # UPDATE
@@ -59,20 +62,25 @@ class Admin:
59
62
  self.cursor.execute(sql, values)
60
63
  self.conn.commit()
61
64
  print("Updated!")
62
-
63
65
  if Control is not None:
64
66
  Control.append(True)
65
-
67
+ return True
66
68
  except mysql.connector.Error as e:
67
69
  print("Update Error:", e)
68
-
69
70
  if Control is not None:
70
71
  Control.append(False)
72
+ return False
71
73
 
72
74
  # ------------------------------------------------------
73
75
  # DELETE
74
76
  # ------------------------------------------------------
75
- def delete(self, table, Control=None, **kwargs):
77
+ def delete(self, table, **kwargs):
78
+ external_control = None
79
+
80
+ if "Control" in kwargs:
81
+ external_control = kwargs["Control"]
82
+ kwargs.pop("Control")
83
+
76
84
  where_clause = " AND ".join([f"{k}=%s" for k in kwargs])
77
85
  sql = f"DELETE FROM {table} WHERE {where_clause}"
78
86
 
@@ -80,27 +88,30 @@ class Admin:
80
88
  self.cursor.execute(sql, tuple(kwargs.values()))
81
89
  self.conn.commit()
82
90
  print("Deleted!")
83
-
84
- if Control is not None:
85
- Control.append(True)
86
-
91
+ if external_control is not None:
92
+ external_control.append(True)
93
+ return True
87
94
  except mysql.connector.Error as e:
88
95
  print("Delete Error:", e)
89
-
90
- if Control is not None:
91
- Control.append(False)
96
+ if external_control is not None:
97
+ external_control.append(False)
98
+ return False
92
99
 
93
100
  # ------------------------------------------------------
94
101
  # GET (tek veri)
95
102
  # ------------------------------------------------------
96
- def get(self, table, Control=None, **kwargs):
103
+ def get(self, table, **kwargs):
97
104
  external_var = None
105
+ external_control = None
98
106
 
99
- # Variable parametresini dışarı al
100
107
  if "Variable" in kwargs:
101
108
  external_var = kwargs["Variable"]
102
109
  kwargs.pop("Variable")
103
110
 
111
+ if "Control" in kwargs:
112
+ external_control = kwargs["Control"]
113
+ kwargs.pop("Control")
114
+
104
115
  where_clause = " AND ".join([f"{k}=%s" for k in kwargs])
105
116
  sql = f"SELECT * FROM {table} WHERE {where_clause} LIMIT 1"
106
117
 
@@ -113,25 +124,22 @@ class Admin:
113
124
  external_var.clear()
114
125
  external_var.update(row)
115
126
 
116
- print("Data found:", row)
117
-
118
- if Control is not None:
119
- Control.append(True)
127
+ if external_control is not None:
128
+ external_control.append(True)
120
129
 
130
+ print("Data found:", row)
121
131
  return row
122
132
 
123
133
  print("No data found.")
124
-
125
- if Control is not None:
126
- Control.append(False)
127
-
134
+ if external_control is not None:
135
+ external_control.append(False)
128
136
  return None
129
137
 
130
138
  except mysql.connector.Error as e:
131
139
  print("Get Error:", e)
132
-
133
- if Control is not None:
134
- Control.append(False)
140
+ if external_control is not None:
141
+ external_control.append(False)
142
+ return None
135
143
 
136
144
  # ------------------------------------------------------
137
145
  # GET ALL
@@ -142,16 +150,125 @@ class Admin:
142
150
  try:
143
151
  self.cursor.execute(sql)
144
152
  rows = self.cursor.fetchall()
145
-
146
153
  if Control is not None:
147
154
  Control.append(True)
148
-
149
155
  return rows
150
-
151
156
  except mysql.connector.Error as e:
152
157
  print("Get All Error:", e)
153
-
154
158
  if Control is not None:
155
159
  Control.append(False)
160
+ return []
161
+
162
+ # ------------------------------------------------------
163
+ # CONTROLL
164
+ # db.Controll("Users", ID=3, name="Ali", Control=durum)
165
+ # ------------------------------------------------------
166
+ def Controll(self, table, **kwargs):
167
+ external_control = None
168
+
169
+ if "Control" in kwargs:
170
+ external_control = kwargs["Control"]
171
+ kwargs.pop("Control")
172
+
173
+ filters = {}
174
+ checks = {}
175
+
176
+ for key, value in kwargs.items():
177
+ if key.isupper():
178
+ filters[key] = value
179
+ else:
180
+ checks[key] = value
156
181
 
157
- return []
182
+ if not filters:
183
+ print("Controll Error: ID gibi bir filtre gerekli.")
184
+ if external_control is not None:
185
+ external_control.append(False)
186
+ return False
187
+
188
+ where_clause = " AND ".join([f"{k}=%s" for k in filters])
189
+ sql = f"SELECT * FROM {table} WHERE {where_clause} LIMIT 1"
190
+
191
+ try:
192
+ self.cursor.execute(sql, tuple(filters.values()))
193
+ row = self.cursor.fetchone()
194
+
195
+ if not row:
196
+ print("Controll: Veri yok.")
197
+ if external_control is not None:
198
+ external_control.append(False)
199
+ return False
200
+
201
+ for key, expected in checks.items():
202
+ if key not in row or row[key] != expected:
203
+ print("Controll: Uyuşmayan değer:", key)
204
+ if external_control is not None:
205
+ external_control.append(False)
206
+ return False
207
+
208
+ print("Controll: Doğru.")
209
+ if external_control is not None:
210
+ external_control.append(True)
211
+ return True
212
+
213
+ except mysql.connector.Error as e:
214
+ print("Controll Error:", e)
215
+ if external_control is not None:
216
+ external_control.append(False)
217
+ return False
218
+
219
+ # ------------------------------------------------------
220
+ # ID_CONTROL
221
+ # db.ID_Control("Users", name="Ali", ID=bura, Control=durum)
222
+ # ------------------------------------------------------
223
+ def ID_Control(self, table, **kwargs):
224
+ external_id_var = None
225
+ external_control = None
226
+
227
+ # Dış değişken referansı alınıyor
228
+ if "ID" in kwargs:
229
+ external_id_var = kwargs["ID"]
230
+ kwargs.pop("ID")
231
+
232
+ if "Control" in kwargs:
233
+ external_control = kwargs["Control"]
234
+ kwargs.pop("Control")
235
+
236
+ filters = kwargs
237
+
238
+ if not filters:
239
+ print("ID_Control Error: name gibi filtre gerekli.")
240
+ if external_control is not None:
241
+ external_control.append(False)
242
+ return False
243
+
244
+ where_clause = " AND ".join([f"{k}=%s" for k in filters])
245
+ sql = f"SELECT ID FROM {table} WHERE {where_clause} LIMIT 1"
246
+
247
+ try:
248
+ self.cursor.execute(sql, tuple(filters.values()))
249
+ row = self.cursor.fetchone()
250
+
251
+ if not row:
252
+ print("ID_Control: Veri yok.")
253
+ if external_control is not None:
254
+ external_control.append(False)
255
+ return False
256
+
257
+ # ❗ Kullanıcıya ID tek değer olarak aktarılsın
258
+ if external_id_var is not None:
259
+ external_id_var.clear()
260
+ external_id_var["value"] = row["ID"]
261
+
262
+ print("ID_Control: ID bulundu:", row["ID"])
263
+
264
+ if external_control is not None:
265
+ external_control.append(True)
266
+
267
+
268
+ return row["ID"]
269
+
270
+ except mysql.connector.Error as e:
271
+ print("ID_Control Error:", e)
272
+ if external_control is not None:
273
+ external_control.append(False)
274
+ return False
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: Qwael
3
- Version: 4.0.0.0.3
3
+ Version: 4.0.0.0.5
4
4
  Summary: Qwael: İşlevsel ve kolaylaştırılmış Python kütüphanesi
5
5
  Author: Bedirhan
6
6
  Author-email: bedirhan.oytpass@gmail.com
@@ -1,11 +1,11 @@
1
1
  Qwael/DRİVE.py,sha256=OTiyoXFb5iFP7hXr2QHnH3c0pHZijZr1sFsqguXtMfc,12976
2
2
  Qwael/DoIP.py,sha256=5ujPzbZGepFZN0-tMI9Unodvo2gJG3PDL2ShqdBJjdE,418
3
3
  Qwael/MultiDB.py,sha256=glptDsH22TyklZrA_ywStnsT6bGnq7JsSR5NN_U1NII,17286
4
- Qwael/Multidata.py,sha256=juL3I9l8gz1PK77k-2uekGbCq-vk6wHKpUIjr3u4wL0,4735
4
+ Qwael/Multidata.py,sha256=TBMw9Dkf6Yu41SxM4_zyWQBqqBUWU9lKyjbP9qizS9E,8952
5
5
  Qwael/__init__.py,sha256=8-RUlmpcvWxxqHWc4_sSpHdxAetSy7Oe6YNDfOGpvRw,234
6
6
  Qwael/filesz.py,sha256=M93tuP-BQxmySgjtYR5uQ3Otx2AfqbfAuKD6pyZDBC4,3859
7
- qwael-4.0.0.0.3.dist-info/licenses/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
- qwael-4.0.0.0.3.dist-info/METADATA,sha256=s73humQzDWvHHkxYHnGKqmCJ3T38Pv8dvHM7UUeHNfQ,2280
9
- qwael-4.0.0.0.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
10
- qwael-4.0.0.0.3.dist-info/top_level.txt,sha256=UtaXY8Mui4lwYNkGrplHcEVe8PjH553OT1Xu5V9bhg0,6
11
- qwael-4.0.0.0.3.dist-info/RECORD,,
7
+ qwael-4.0.0.0.5.dist-info/licenses/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
+ qwael-4.0.0.0.5.dist-info/METADATA,sha256=A7Cg4snLQNG6Ew143LpRQt8FhThS-MUNXLjbAx_PzIo,2280
9
+ qwael-4.0.0.0.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
10
+ qwael-4.0.0.0.5.dist-info/top_level.txt,sha256=UtaXY8Mui4lwYNkGrplHcEVe8PjH553OT1Xu5V9bhg0,6
11
+ qwael-4.0.0.0.5.dist-info/RECORD,,