DmitrMakeev commited on
Commit
df074cf
·
verified ·
1 Parent(s): 86cb835

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +21 -5
app.py CHANGED
@@ -2036,10 +2036,10 @@ def from_allow():
2036
  name = request.args.get('name', '')
2037
  email = request.args.get('email', '')
2038
  phone = request.args.get('phone', '').lstrip('+')
2039
- modu = request.args.get('modu', '')
2040
  status = request.args.get('status', '')
2041
  del_flag = request.args.get('del', '')
2042
- n_con_flag = request.args.get('n_con', '') # Добавлен параметр n_con
2043
 
2044
  if not email or not phone:
2045
  return json.dumps({"error": "Email and phone are required"}), 400
@@ -2054,17 +2054,29 @@ def from_allow():
2054
  result = cursor.fetchone()
2055
 
2056
  if result:
 
2057
  pr5 = result[21] if result[21] else '{}'
2058
  pr5_data = json.loads(pr5)
 
2059
  else:
 
2060
  pr5_data = {}
 
2061
 
2062
  if del_flag == '1':
2063
- pr5_data = {}
2064
- elif modu and status:
2065
- pr5_data[modu] = status
 
 
 
 
 
 
 
2066
 
2067
  pr5_json = json.dumps(pr5_data)
 
2068
 
2069
  # Получение текущей даты и времени в Московском часовом поясе
2070
  utc_now = datetime.utcnow()
@@ -2081,21 +2093,25 @@ def from_allow():
2081
  set_clause = ', '.join([f"{col} = ?" for col in columns_to_update])
2082
  query = f"UPDATE contacts SET {set_clause} WHERE email = ? OR phone = ?"
2083
  cursor.execute(query, values_to_update + [email, phone])
 
2084
  else:
2085
  # Вставляем новые данные
2086
  query = f"INSERT INTO contacts ({', '.join(columns_to_update)}) VALUES ({', '.join(['?' for _ in columns_to_update])})"
2087
  cursor.execute(query, values_to_update)
 
2088
 
2089
  conn.commit()
2090
 
2091
  # Замена NULL на пустые строки
2092
  replace_null_with_empty_string(conn)
 
2093
 
2094
  conn.close()
2095
 
2096
  return json.dumps(pr5_data), 200
2097
 
2098
  except Exception as e:
 
2099
  return json.dumps({"error": str(e)}), 500
2100
 
2101
 
 
2036
  name = request.args.get('name', '')
2037
  email = request.args.get('email', '')
2038
  phone = request.args.get('phone', '').lstrip('+')
2039
+ module = request.args.get('module', '')
2040
  status = request.args.get('status', '')
2041
  del_flag = request.args.get('del', '')
2042
+ n_con_flag = request.args.get('n_con', '')
2043
 
2044
  if not email or not phone:
2045
  return json.dumps({"error": "Email and phone are required"}), 400
 
2054
  result = cursor.fetchone()
2055
 
2056
  if result:
2057
+ # Если есть запись, загружаем текущий JSON из поля pr5
2058
  pr5 = result[21] if result[21] else '{}'
2059
  pr5_data = json.loads(pr5)
2060
+ print(f"Existing record found. Loaded JSON: {pr5_data}")
2061
  else:
2062
+ # Если записи нет, создаем пустой словарь
2063
  pr5_data = {}
2064
+ print("No existing record found. Initialized new JSON.")
2065
 
2066
  if del_flag == '1':
2067
+ # Удаление ключа из JSON
2068
+ if module in pr5_data:
2069
+ del pr5_data[module]
2070
+ print(f"Key '{module}' found and deleted from JSON.")
2071
+ else:
2072
+ print(f"Key '{module}' not found in JSON.")
2073
+ elif module and status:
2074
+ # Обновление значения существующего ключа или добавление нового
2075
+ pr5_data[module] = status
2076
+ print(f"Updated JSON with key '{module}' and status '{status}'.")
2077
 
2078
  pr5_json = json.dumps(pr5_data)
2079
+ print(f"Updated JSON to be saved: {pr5_json}")
2080
 
2081
  # Получение текущей даты и времени в Московском часовом поясе
2082
  utc_now = datetime.utcnow()
 
2093
  set_clause = ', '.join([f"{col} = ?" for col in columns_to_update])
2094
  query = f"UPDATE contacts SET {set_clause} WHERE email = ? OR phone = ?"
2095
  cursor.execute(query, values_to_update + [email, phone])
2096
+ print("Record updated in database.")
2097
  else:
2098
  # Вставляем новые данные
2099
  query = f"INSERT INTO contacts ({', '.join(columns_to_update)}) VALUES ({', '.join(['?' for _ in columns_to_update])})"
2100
  cursor.execute(query, values_to_update)
2101
+ print("New record inserted into database.")
2102
 
2103
  conn.commit()
2104
 
2105
  # Замена NULL на пустые строки
2106
  replace_null_with_empty_string(conn)
2107
+ print("NULL values replaced with empty strings if any.")
2108
 
2109
  conn.close()
2110
 
2111
  return json.dumps(pr5_data), 200
2112
 
2113
  except Exception as e:
2114
+ print(f"An error occurred: {str(e)}")
2115
  return json.dumps({"error": str(e)}), 500
2116
 
2117