DmitrMakeev commited on
Commit
3d71b86
·
verified ·
1 Parent(s): 2f6e1c8

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -17
app.py CHANGED
@@ -2031,7 +2031,7 @@ def from_allow():
2031
  api_sys_control = request.args.get('api_sys')
2032
 
2033
  if api_sys_control != api_key_sys:
2034
- return jsonify({"error": "Unauthorized access"}), 403
2035
 
2036
  name = request.args.get('name', '')
2037
  email = request.args.get('email', '')
@@ -2039,10 +2039,12 @@ def from_allow():
2039
  module = request.args.get('module', '')
2040
  status = request.args.get('status', '')
2041
  del_flag = request.args.get('del', '')
 
2042
 
2043
  if not email or not phone:
2044
- return jsonify({"error": "Email and phone are required"}), 400
2045
 
 
2046
  phone = clean_phone_number_ss(phone)
2047
 
2048
  conn = sqlite3.connect(DATABASE6)
@@ -2058,27 +2060,21 @@ def from_allow():
2058
  pr5_data = {}
2059
 
2060
  if del_flag == '1':
2061
- # Удаление ключа из JSON
2062
- if module in pr5_data:
2063
- del pr5_data[module]
2064
- elif module and status:
2065
- if module in pr5_data:
2066
- # Обновление значения существующего ключа
2067
- pr5_data[module] = status
2068
- else:
2069
- # Добавление нового ключа в JSON
2070
- pr5_data[module] = status
2071
 
2072
  pr5_json = json.dumps(pr5_data)
2073
 
 
2074
  utc_now = datetime.utcnow()
2075
  msk_tz = pytz.timezone('Europe/Moscow')
2076
  msk_now = utc_now.replace(tzinfo=pytz.utc).astimezone(msk_tz)
2077
  data_on = msk_now.strftime('%Y-%m-%d %H:%M:%S')
2078
 
2079
- # Обновление или вставка данных в таблицу contacts
2080
- columns_to_update = ['name', 'phone', 'email', 'pr5', 'data_on']
2081
- values_to_update = [name, phone, email, pr5_json, data_on]
2082
 
2083
  if result:
2084
  # Обновляем только те поля, которые переданы в запросе
@@ -2091,13 +2087,16 @@ def from_allow():
2091
  cursor.execute(query, values_to_update)
2092
 
2093
  conn.commit()
 
 
2094
  replace_null_with_empty_string(conn)
 
2095
  conn.close()
2096
 
2097
- return jsonify(pr5_data), 200
2098
 
2099
  except Exception as e:
2100
- return jsonify({"error": str(e)}), 500
2101
 
2102
 
2103
 
 
2031
  api_sys_control = request.args.get('api_sys')
2032
 
2033
  if api_sys_control != api_key_sys:
2034
+ return json.dumps({"error": "Unauthorized access"}), 403
2035
 
2036
  name = request.args.get('name', '')
2037
  email = request.args.get('email', '')
 
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', '') # Добавлен параметр n_con
2043
 
2044
  if not email or not phone:
2045
+ return json.dumps({"error": "Email and phone are required"}), 400
2046
 
2047
+ # Очистка номера телефона
2048
  phone = clean_phone_number_ss(phone)
2049
 
2050
  conn = sqlite3.connect(DATABASE6)
 
2060
  pr5_data = {}
2061
 
2062
  if del_flag == '1':
2063
+ pr5_data = {}
2064
+ elif order and status:
2065
+ pr5_data[order] = status
 
 
 
 
 
 
 
2066
 
2067
  pr5_json = json.dumps(pr5_data)
2068
 
2069
+ # Получение текущей даты и времени в Московском часовом поясе
2070
  utc_now = datetime.utcnow()
2071
  msk_tz = pytz.timezone('Europe/Moscow')
2072
  msk_now = utc_now.replace(tzinfo=pytz.utc).astimezone(msk_tz)
2073
  data_on = msk_now.strftime('%Y-%m-%d %H:%M:%S')
2074
 
2075
+ # Исключаем все столбцы, кроме name, phone, email, pr5, n_con, data_on
2076
+ columns_to_update = ['name', 'phone', 'email', 'shop_st', 'n_con', 'data_on']
2077
+ values_to_update = [name, phone, email, pr5_json, n_con_flag, data_on]
2078
 
2079
  if result:
2080
  # Обновляем только те поля, которые переданы в запросе
 
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(shop_st_data), 200
2097
 
2098
  except Exception as e:
2099
+ return json.dumps({"error": str(e)}), 500
2100
 
2101
 
2102