Update app.py
Browse files
app.py
CHANGED
|
@@ -811,7 +811,13 @@ def update_or_insert_user(db_name, user_data, mapping_template):
|
|
| 811 |
cursor.execute("UPDATE contacts SET web_st = ? WHERE email = ?", (web_st_value, email))
|
| 812 |
conn.commit()
|
| 813 |
logging.debug(f"User {email} web_st updated to {web_st_value}")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 814 |
else:
|
|
|
|
| 815 |
logging.debug(f"User {email} not found, proceeding with insert")
|
| 816 |
|
| 817 |
# Преобразование данных пользователя на основе шаблона сопоставления
|
|
@@ -847,7 +853,6 @@ def update_or_insert_user(db_name, user_data, mapping_template):
|
|
| 847 |
# Добавление значения web_st в данные для вставки
|
| 848 |
transformed_data['web_st'] = web_st_value
|
| 849 |
|
| 850 |
-
# Выполнение двух пунктов:
|
| 851 |
# Баннеры: Проверяется наличие ключа banners в user_data и устанавливается b_baners в 1 или 0.
|
| 852 |
if 'banners' in user_data and isinstance(user_data['banners'], list) and user_data['banners']:
|
| 853 |
transformed_data['b_baners'] = '1'
|
|
@@ -862,14 +867,14 @@ def update_or_insert_user(db_name, user_data, mapping_template):
|
|
| 862 |
transformed_data['b_butt'] = '0'
|
| 863 |
logging.debug(f"Transformed data after buttons processing: {transformed_data}")
|
| 864 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 865 |
# Обновление данных пользователя в базе данных
|
| 866 |
if user:
|
| 867 |
-
# Объединение новых и старых сообщений
|
| 868 |
-
new_messages = user_data.get('messages', [])
|
| 869 |
-
old_messages = json.loads(user[1]) if user[1] else []
|
| 870 |
-
all_messages = old_messages + new_messages
|
| 871 |
-
transformed_data['b_mess'] = json.dumps(all_messages)
|
| 872 |
-
|
| 873 |
update_query = "UPDATE contacts SET "
|
| 874 |
update_values = []
|
| 875 |
for column, value in transformed_data.items():
|
|
@@ -880,9 +885,6 @@ def update_or_insert_user(db_name, user_data, mapping_template):
|
|
| 880 |
logging.debug(f"Update query: {update_query} with values: {update_values}")
|
| 881 |
cursor.execute(update_query, update_values)
|
| 882 |
else:
|
| 883 |
-
# Преобразование сообщений в JSON
|
| 884 |
-
transformed_data['b_mess'] = json.dumps(user_data.get('messages', []))
|
| 885 |
-
|
| 886 |
columns = ', '.join(transformed_data.keys())
|
| 887 |
placeholders = ', '.join('?' for _ in transformed_data)
|
| 888 |
insert_query = f"INSERT INTO contacts ({columns}) VALUES ({placeholders})"
|
|
|
|
| 811 |
cursor.execute("UPDATE contacts SET web_st = ? WHERE email = ?", (web_st_value, email))
|
| 812 |
conn.commit()
|
| 813 |
logging.debug(f"User {email} web_st updated to {web_st_value}")
|
| 814 |
+
|
| 815 |
+
# Извлечение старых сообщений
|
| 816 |
+
old_messages = json.loads(user[1]) if user[1] else []
|
| 817 |
+
logging.debug(f"Old messages: {old_messages}")
|
| 818 |
+
|
| 819 |
else:
|
| 820 |
+
old_messages = []
|
| 821 |
logging.debug(f"User {email} not found, proceeding with insert")
|
| 822 |
|
| 823 |
# Преобразование данных пользователя на основе шаблона сопоставления
|
|
|
|
| 853 |
# Добавление значения web_st в данные для вставки
|
| 854 |
transformed_data['web_st'] = web_st_value
|
| 855 |
|
|
|
|
| 856 |
# Баннеры: Проверяется наличие ключа banners в user_data и устанавливается b_baners в 1 или 0.
|
| 857 |
if 'banners' in user_data and isinstance(user_data['banners'], list) and user_data['banners']:
|
| 858 |
transformed_data['b_baners'] = '1'
|
|
|
|
| 867 |
transformed_data['b_butt'] = '0'
|
| 868 |
logging.debug(f"Transformed data after buttons processing: {transformed_data}")
|
| 869 |
|
| 870 |
+
# Обработка новых сообщений
|
| 871 |
+
new_messages = user_data.get('messages', [])
|
| 872 |
+
all_messages = old_messages + new_messages
|
| 873 |
+
transformed_data['b_mess'] = json.dumps(all_messages)
|
| 874 |
+
logging.debug(f"Transformed data after adding messages: {transformed_data}")
|
| 875 |
+
|
| 876 |
# Обновление данных пользователя в базе данных
|
| 877 |
if user:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 878 |
update_query = "UPDATE contacts SET "
|
| 879 |
update_values = []
|
| 880 |
for column, value in transformed_data.items():
|
|
|
|
| 885 |
logging.debug(f"Update query: {update_query} with values: {update_values}")
|
| 886 |
cursor.execute(update_query, update_values)
|
| 887 |
else:
|
|
|
|
|
|
|
|
|
|
| 888 |
columns = ', '.join(transformed_data.keys())
|
| 889 |
placeholders = ', '.join('?' for _ in transformed_data)
|
| 890 |
insert_query = f"INSERT INTO contacts ({columns}) VALUES ({placeholders})"
|