DmitrMakeev
commited on
Commit
•
53118c9
1
Parent(s):
d45745f
Update app.py
Browse files
app.py
CHANGED
@@ -1192,7 +1192,7 @@ def update_or_insert_user(db_name, user_data, mapping_template):
|
|
1192 |
cursor = conn.cursor()
|
1193 |
|
1194 |
# Получение email пользователя из данных
|
1195 |
-
email = user_data.get('
|
1196 |
if not email:
|
1197 |
logging.error(f"User data missing email: {user_data}")
|
1198 |
return
|
@@ -1200,30 +1200,15 @@ def update_or_insert_user(db_name, user_data, mapping_template):
|
|
1200 |
logging.debug(f"Processing user with email: {email}")
|
1201 |
|
1202 |
# Проверка существования пользователя в базе данных по email
|
1203 |
-
cursor.execute("SELECT
|
1204 |
user = cursor.fetchone()
|
1205 |
logging.debug(f"User found: {user}")
|
1206 |
|
1207 |
-
#
|
1208 |
-
web_st_value = 1 # Инициализация значения web_st
|
1209 |
if user:
|
1210 |
-
# Проверка текущего значения web_st и его инкрементация
|
1211 |
-
current_web_st = user[0] if user[0] is not None and user[0] != "" else 0
|
1212 |
-
web_st_value = int(current_web_st) + 1
|
1213 |
-
logging.debug(f"Calculated web_st_value: {web_st_value}")
|
1214 |
-
|
1215 |
-
# Обновление значения web_st
|
1216 |
-
cursor.execute("UPDATE contacts SET web_st = ? WHERE email = ?", (web_st_value, email))
|
1217 |
-
conn.commit()
|
1218 |
conn.close()
|
1219 |
-
logging.debug(f"User {email}
|
1220 |
-
|
1221 |
-
conn.close()
|
1222 |
-
logging.debug(f"User {email} not found, proceeding with insert")
|
1223 |
-
|
1224 |
-
# Открываем соединение снова для остальных операций
|
1225 |
-
conn = sqlite3.connect(db_name)
|
1226 |
-
cursor = conn.cursor()
|
1227 |
|
1228 |
# Преобразование данных пользователя на основе шаблона сопоставления
|
1229 |
transformed_data = {}
|
@@ -1254,39 +1239,26 @@ def update_or_insert_user(db_name, user_data, mapping_template):
|
|
1254 |
logging.debug(f"Transformed data after adding required fields: {transformed_data}")
|
1255 |
|
1256 |
# Обработка номера телефона, если он есть
|
1257 |
-
if '
|
1258 |
-
phone = user_data['
|
1259 |
if phone.startswith('+'):
|
1260 |
phone = phone[1:]
|
1261 |
transformed_data['phone'] = phone
|
1262 |
logging.debug(f"Transformed data after phone processing: {transformed_data}")
|
1263 |
|
1264 |
-
# Добавление
|
1265 |
-
|
1266 |
-
|
1267 |
-
|
1268 |
-
|
1269 |
-
|
1270 |
-
|
1271 |
-
for column, value in transformed_data.items():
|
1272 |
-
update_query += f"{column} = ?, "
|
1273 |
-
update_values.append(value)
|
1274 |
-
update_query = update_query.rstrip(", ") + " WHERE email = ?"
|
1275 |
-
update_values.append(email)
|
1276 |
-
logging.debug(f"Update query: {update_query} with values: {update_values}")
|
1277 |
-
cursor.execute(update_query, update_values)
|
1278 |
-
else:
|
1279 |
-
columns = ', '.join(transformed_data.keys())
|
1280 |
-
placeholders = ', '.join('?' for _ in transformed_data)
|
1281 |
-
insert_query = f"INSERT INTO contacts ({columns}) VALUES ({placeholders})"
|
1282 |
-
insert_values = list(transformed_data.values())
|
1283 |
-
logging.debug(f"Insert query: {insert_query} with values: {insert_values}")
|
1284 |
-
cursor.execute(insert_query, insert_values)
|
1285 |
|
1286 |
# Подтверждение изменений и закрытие соединения
|
1287 |
conn.commit()
|
1288 |
conn.close()
|
1289 |
-
logging.debug(f"User with email {email}
|
|
|
1290 |
|
1291 |
@app.route('/upload_csv', methods=['POST'])
|
1292 |
def upload_csv():
|
|
|
1192 |
cursor = conn.cursor()
|
1193 |
|
1194 |
# Получение email пользователя из данных
|
1195 |
+
email = user_data.get('email')
|
1196 |
if not email:
|
1197 |
logging.error(f"User data missing email: {user_data}")
|
1198 |
return
|
|
|
1200 |
logging.debug(f"Processing user with email: {email}")
|
1201 |
|
1202 |
# Проверка существования пользователя в базе данных по email
|
1203 |
+
cursor.execute("SELECT 1 FROM contacts WHERE email = ?", (email,))
|
1204 |
user = cursor.fetchone()
|
1205 |
logging.debug(f"User found: {user}")
|
1206 |
|
1207 |
+
# Если пользователь существует, закрываем соединение и возвращаемся
|
|
|
1208 |
if user:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1209 |
conn.close()
|
1210 |
+
logging.debug(f"User with email {email} already exists. Skipping insert.")
|
1211 |
+
return
|
|
|
|
|
|
|
|
|
|
|
|
|
1212 |
|
1213 |
# Преобразование данных пользователя на основе шаблона сопоставления
|
1214 |
transformed_data = {}
|
|
|
1239 |
logging.debug(f"Transformed data after adding required fields: {transformed_data}")
|
1240 |
|
1241 |
# Обработка номера телефона, если он есть
|
1242 |
+
if 'phone' in user_data:
|
1243 |
+
phone = user_data['phone']
|
1244 |
if phone.startswith('+'):
|
1245 |
phone = phone[1:]
|
1246 |
transformed_data['phone'] = phone
|
1247 |
logging.debug(f"Transformed data after phone processing: {transformed_data}")
|
1248 |
|
1249 |
+
# Добавление нового пользователя в базу данных
|
1250 |
+
columns = ', '.join(transformed_data.keys())
|
1251 |
+
placeholders = ', '.join('?' for _ in transformed_data)
|
1252 |
+
insert_query = f"INSERT INTO contacts ({columns}) VALUES ({placeholders})"
|
1253 |
+
insert_values = list(transformed_data.values())
|
1254 |
+
logging.debug(f"Insert query: {insert_query} with values: {insert_values}")
|
1255 |
+
cursor.execute(insert_query, insert_values)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1256 |
|
1257 |
# Подтверждение изменений и закрытие соединения
|
1258 |
conn.commit()
|
1259 |
conn.close()
|
1260 |
+
logging.debug(f"User with email {email} inserted successfully")
|
1261 |
+
|
1262 |
|
1263 |
@app.route('/upload_csv', methods=['POST'])
|
1264 |
def upload_csv():
|