DmitrMakeev commited on
Commit
be1b174
·
verified ·
1 Parent(s): 02d7ffc

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +55 -51
app.py CHANGED
@@ -71,6 +71,13 @@ def init_db(db_name):
71
  ws_stop TEXT NOT NULL,
72
  web_statys INTEGER,
73
  fin_progress INTEGER,
 
 
 
 
 
 
 
74
  shop_statys_full TEXT NOT NULL,
75
  curator TEXT NOT NULL,
76
  pr1 TEXT NOT NULL,
@@ -212,19 +219,6 @@ def export_user():
212
 
213
 
214
 
215
-
216
- def send_second_request(export_id):
217
- if export_id is None:
218
- raise Exception("export_id is None")
219
- # Формирование URL для второго запроса
220
- export_url_template = f"https://school.riverpsy.com/pl/api/account/exports/{export_id}?key=jqgxSMUnHWoKUcxF3MHSb77VUMk7HpFbO9SHnfVYwHtwqe1S81lqeKxrLPoSPWCephtYQuJwMFsCXEFmyByXdruDpDFgf6L7ij66K9ji0Kf2qAIwbTqEyJGB5MOHwyHl"
221
- try:
222
- response = requests.get(export_url_template)
223
- response.raise_for_status()
224
- return response.json() # Возвращаем JSON-ответ сервера
225
- except requests.RequestException as e:
226
- raise Exception(f"Ошибка при выполнении запроса: {e}")
227
-
228
  def load_data_from_json(json_data):
229
  if 'info' not in json_data or 'items' not in json_data['info'] or 'fields' not in json_data['info']:
230
  raise ValueError("Invalid JSON structure")
@@ -232,46 +226,56 @@ def load_data_from_json(json_data):
232
  items = json_data['info']['items']
233
  fields = json_data['info']['fields']
234
 
235
- db = 'data_gc.db' # Указываем конкретную базу данных
236
- conn = sqlite3.connect(db)
237
- cursor = conn.cursor()
238
 
239
- for item in items:
240
- user_data = dict(zip(fields, item))
241
- # Проверяем наличие значений для полей и устанавливаем значения по умолчанию, если они отсутствуют
242
- user_data.setdefault('vk_id', '')
243
- user_data.setdefault('chat_id', '')
244
- user_data.setdefault('ws_st', '')
245
- user_data.setdefault('ws_stop', '')
246
- user_data.setdefault('web_st', '')
247
- user_data.setdefault('fin_prog', '')
248
- user_data.setdefault('shop_st', '')
249
- user_data.setdefault('curator', '')
250
- user_data.setdefault('pr1', '')
251
- user_data.setdefault('pr2', '')
252
- user_data.setdefault('pr3', '')
253
- user_data.setdefault('pr4', '')
254
- user_data.setdefault('pr5', '')
255
- user_data.setdefault('ad_url', '')
256
- user_data.setdefault('key_pr', '')
257
- user_data.setdefault('n_con', '')
258
- user_data.setdefault('canal', '')
259
- user_data.setdefault('data_t', '')
260
- # Убираем плюс в начале телефона, если он присутствует
261
- if 'Телефон' in user_data and user_data['Телефон'].startswith('+'):
262
- user_data['Телефон'] = user_data['Телефон'][1:]
263
-
264
- query = '''
265
- INSERT INTO contacts (
266
- name, phone, email, vk_id, chat_id, ws_statys, ws_stop, web_statys, fin_progress, shop_statys_full, pr1, pr2, pr3, pr4, pr5, ad_url, curator, key_pr, n_con, canal, data_t
267
- ) VALUES (
268
- :Имя, :Телефон, :Email, :vk_id, :chat_id, :ws_st, :ws_stop, :web_st, :fin_prog, :shop_st, :pr1, :pr2, :pr3, :pr4, :pr5, :ad_url, :curator, :key_pr, :n_con, :canal, :data_t
269
- )
270
- '''
271
- cursor.execute(query, user_data)
 
 
 
 
 
 
 
 
 
 
272
 
273
- conn.commit()
274
- conn.close()
275
 
276
  @app.route('/start', methods=['GET'])
277
  def start():
 
71
  ws_stop TEXT NOT NULL,
72
  web_statys INTEGER,
73
  fin_progress INTEGER,
74
+ b_city TEXT NOT NULL,
75
+ b_fin TEXT NOT NULL,
76
+ b_ban TEXT NOT NULL,
77
+ b_ign TEXT NOT NULL,
78
+ b_baners TEXT NOT NULL,
79
+ b_butt TEXT NOT NULL,
80
+ b_mess TEXT NOT NULL,
81
  shop_statys_full TEXT NOT NULL,
82
  curator TEXT NOT NULL,
83
  pr1 TEXT NOT NULL,
 
219
 
220
 
221
 
 
 
 
 
 
 
 
 
 
 
 
 
 
222
  def load_data_from_json(json_data):
223
  if 'info' not in json_data or 'items' not in json_data['info'] or 'fields' not in json_data['info']:
224
  raise ValueError("Invalid JSON structure")
 
226
  items = json_data['info']['items']
227
  fields = json_data['info']['fields']
228
 
229
+ for db in DATABASES:
230
+ conn = sqlite3.connect(db)
231
+ cursor = conn.cursor()
232
 
233
+ for item in items:
234
+ user_data = dict(zip(fields, item))
235
+ # Проверяем наличие значений для полей и устанавливаем значения по умолчанию, если они отсутствуют
236
+ user_data.setdefault('vk_id', '')
237
+ user_data.setdefault('chat_id', '')
238
+ user_data.setdefault('ws_st', '')
239
+ user_data.setdefault('ws_stop', '')
240
+ user_data.setdefault('web_st', '')
241
+ user_data.setdefault('fin_prog', '')
242
+ user_data.setdefault('b_city', '')
243
+ user_data.setdefault('b_fin', '')
244
+ user_data.setdefault('b_ban', '')
245
+ user_data.setdefault('b_ign', '')
246
+ user_data.setdefault('b_baners', '')
247
+ user_data.setdefault('b_butt', '')
248
+ user_data.setdefault('b_mess', '')
249
+ user_data.setdefault('shop_st', '')
250
+ user_data.setdefault('curator', '')
251
+ user_data.setdefault('pr1', '')
252
+ user_data.setdefault('pr2', '')
253
+ user_data.setdefault('pr3', '')
254
+ user_data.setdefault('pr4', '')
255
+ user_data.setdefault('pr5', '')
256
+ user_data.setdefault('ad_url', '')
257
+ user_data.setdefault('key_pr', '')
258
+ user_data.setdefault('n_con', '')
259
+ user_data.setdefault('canal', '')
260
+ user_data.setdefault('data_t', '')
261
+ # Убираем плюс в начале телефона, если он присутствует
262
+ if 'Телефон' in user_data and user_data['Телефон'].startswith('+'):
263
+ user_data['Телефон'] = user_data['Телефон'][1:]
264
+
265
+ # Создаем динамический запрос на основе полей в user_data
266
+ columns = ', '.join(user_data.keys())
267
+ placeholders = ', '.join(':' + key for key in user_data.keys())
268
+ query = f'''
269
+ INSERT INTO contacts (
270
+ {columns}
271
+ ) VALUES (
272
+ {placeholders}
273
+ )
274
+ '''
275
+ cursor.execute(query, user_data)
276
 
277
+ conn.commit()
278
+ conn.close()
279
 
280
  @app.route('/start', methods=['GET'])
281
  def start():