DmitrMakeev commited on
Commit
2bbbaac
·
verified ·
1 Parent(s): 8e66e64

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +36 -81
app.py CHANGED
@@ -1628,54 +1628,6 @@ def gc_forms():
1628
 
1629
  DATABASE_NAME3 = 'data_gc.db'
1630
 
1631
- def verify_phone_number(phone_number):
1632
- verifikation_start = "1"
1633
- print(f"verifikation_start: {verifikation_start}")
1634
-
1635
- if verifikation_start == "1":
1636
- # Переменные окружения для сборки URL
1637
- wa_url = "https://api.green-api.com/waInstance"
1638
- wa_ak = "1101952913"
1639
- ws_url_ver = "/checkWhatsapp/"
1640
- wa_api_key = "fb4986a9d9cb40ef9be6c7b08cb9c98b7a3b1dc8c6834b0b92"
1641
-
1642
- full_url_ver = f"{wa_url}{wa_ak}{ws_url_ver}{wa_api_key}"
1643
- print(f"Full URL: {full_url_ver}")
1644
-
1645
- # Создаем payload для запроса
1646
- payload = json.dumps({
1647
- "phoneNumber": phone_number
1648
- })
1649
- headers = {
1650
- 'Content-Type': 'application/json'
1651
- }
1652
-
1653
- # Отправляем POST-запрос
1654
- response = requests.post(full_url_ver, headers=headers, data=payload)
1655
-
1656
- # Печатаем статус ответа
1657
- print(f"Response Status Code: {response.status_code}")
1658
-
1659
- # Проверяем статус код ответа
1660
- if response.status_code == 200:
1661
- # Печатаем текст ответа от сервера
1662
- response_body = response.json()
1663
- print(f"Response Body: {response_body}")
1664
-
1665
- # Извлекаем значение из JSON
1666
- exists_whatsapp = response_body.get('existsWhatsapp', 'false')
1667
- print(f"existsWhatsapp: {exists_whatsapp}")
1668
-
1669
- # Возвращаем значение
1670
- return exists_whatsapp
1671
- else:
1672
- print("Error: Unable to fetch data")
1673
- return "Error"
1674
- else:
1675
- print("Verification not started")
1676
- return "Verification not started"
1677
-
1678
- # Функция для добавления или обновления контакта в базе данных
1679
  def add_or_update_contact(contact_data):
1680
  conn = sqlite3.connect(DATABASE_NAME3)
1681
  cursor = conn.cursor()
@@ -1685,10 +1637,15 @@ def add_or_update_contact(contact_data):
1685
  logging.error(f"Missing email in contact data: {contact_data}")
1686
  return
1687
 
 
 
 
 
 
 
1688
  cursor.execute("SELECT id FROM contacts WHERE email = ?", (email,))
1689
  contact = cursor.fetchone()
1690
 
1691
- # List all fields for updating or inserting
1692
  fields = [
1693
  'name', 'phone', 'email', 'vk_id', 'chat_id', 'ws_st', 'ws_stop', 'web_st', 'fin_prog',
1694
  'b_city', 'b_fin', 'b_ban', 'b_ign', 'b_baners', 'b_butt', 'b_mess', 'shop_st', 'curator',
@@ -1699,52 +1656,50 @@ def add_or_update_contact(contact_data):
1699
 
1700
  if contact:
1701
  update_query = f"UPDATE contacts SET {placeholders} WHERE id = ?"
1702
- cursor.execute(update_query, (*[contact_data.get(field, '_') for field in fields], contact[0]))
1703
  else:
1704
  insert_query = f"INSERT INTO contacts ({', '.join(fields)}) VALUES ({', '.join(['?' for _ in fields])})"
1705
- cursor.execute(insert_query, tuple(contact_data.get(field, '_') for field in fields))
1706
 
1707
  conn.commit()
1708
  conn.close()
1709
 
1710
  @app.route('/add_data_ver', methods=['GET'])
1711
  def add_data_ver():
1712
- # Извлечение параметров запроса с дефолтными значениями нижнего подчеркивания
1713
  contact_data = {
1714
- 'name': request.args.get('name', ' _'),
1715
- 'phone': request.args.get('phone', ' _'),
1716
- 'email': request.args.get('email', ' _'),
1717
- 'vk_id': request.args.get('vk_id', ' _'),
1718
- 'chat_id': request.args.get('chat_id', ' _'),
1719
- 'ws_st': request.args.get('ws_st', ' _'),
1720
- 'ws_stop': request.args.get('ws_stop', ' _'),
1721
- 'web_st': request.args.get('web_st', ' _'),
1722
  'fin_prog': request.args.get('fin_prog', '5'),
1723
- 'b_city': request.args.get('b_city', ' _'),
1724
- 'b_fin': request.args.get('b_fin', '_'),
1725
- 'b_ban': request.args.get('b_ban', '_'),
1726
- 'b_ign': request.args.get('b_ign', '_'),
1727
- 'b_baners': request.args.get('b_baners', '_'),
1728
- 'b_butt': request.args.get('b_butt', '_'),
1729
- 'b_mess': request.args.get('b_mess', '_'),
1730
- 'shop_st': request.args.get('shop_st', '_'),
1731
- 'curator': request.args.get('curator', ' _'),
1732
- 'pr1': request.args.get('pr1', ' _'),
1733
- 'pr2': request.args.get('pr2', ' _'),
1734
- 'pr3': request.args.get('pr3', ' _'),
1735
- 'pr4': request.args.get('pr4', ' _'),
1736
- 'pr5': request.args.get('pr5', ' _'),
1737
- 'ad_url': request.args.get('ad_url', '_'),
1738
- 'key_pr': request.args.get('key_pr', '_'),
1739
- 'n_con': request.args.get('n_con', '_'),
1740
- 'canal': request.args.get('canal', '_'),
1741
- 'data_t': request.args.get('data_t', '_')
1742
  }
1743
 
1744
- # Получение значения проверки номера телефона
1745
  phone_verification_response = verify_phone_number(contact_data['phone'])
1746
  if phone_verification_response is not None:
1747
- contact_data['ws_st'] = phone_verification_response # Сохраняем значение в поле ws_st
1748
 
1749
  try:
1750
  add_or_update_contact(contact_data)
 
1628
 
1629
  DATABASE_NAME3 = 'data_gc.db'
1630
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1631
  def add_or_update_contact(contact_data):
1632
  conn = sqlite3.connect(DATABASE_NAME3)
1633
  cursor = conn.cursor()
 
1637
  logging.error(f"Missing email in contact data: {contact_data}")
1638
  return
1639
 
1640
+ # Добавление текущей даты и времени
1641
+ utc_now = datetime.utcnow()
1642
+ msk_tz = pytz.timezone('Europe/Moscow')
1643
+ msk_now = utc_now.replace(tzinfo=pytz.utc).astimezone(msk_tz)
1644
+ contact_data['data_t'] = msk_now.strftime('%Y-%m-%d %H:%M:%S')
1645
+
1646
  cursor.execute("SELECT id FROM contacts WHERE email = ?", (email,))
1647
  contact = cursor.fetchone()
1648
 
 
1649
  fields = [
1650
  'name', 'phone', 'email', 'vk_id', 'chat_id', 'ws_st', 'ws_stop', 'web_st', 'fin_prog',
1651
  'b_city', 'b_fin', 'b_ban', 'b_ign', 'b_baners', 'b_butt', 'b_mess', 'shop_st', 'curator',
 
1656
 
1657
  if contact:
1658
  update_query = f"UPDATE contacts SET {placeholders} WHERE id = ?"
1659
+ cursor.execute(update_query, (*[contact_data.get(field, '') for field in fields], contact[0]))
1660
  else:
1661
  insert_query = f"INSERT INTO contacts ({', '.join(fields)}) VALUES ({', '.join(['?' for _ in fields])})"
1662
+ cursor.execute(insert_query, tuple(contact_data.get(field, '') for field in fields))
1663
 
1664
  conn.commit()
1665
  conn.close()
1666
 
1667
  @app.route('/add_data_ver', methods=['GET'])
1668
  def add_data_ver():
 
1669
  contact_data = {
1670
+ 'name': request.args.get('name', ''),
1671
+ 'phone': request.args.get('phone', ''),
1672
+ 'email': request.args.get('email', ''),
1673
+ 'vk_id': request.args.get('vk_id', ''),
1674
+ 'chat_id': request.args.get('chat_id', ''),
1675
+ 'ws_st': request.args.get('ws_st', ''),
1676
+ 'ws_stop': request.args.get('ws_stop', ''),
1677
+ 'web_st': request.args.get('web_st', ''),
1678
  'fin_prog': request.args.get('fin_prog', '5'),
1679
+ 'b_city': request.args.get('b_city', ''),
1680
+ 'b_fin': request.args.get('b_fin', ''),
1681
+ 'b_ban': request.args.get('b_ban', ''),
1682
+ 'b_ign': request.args.get('b_ign', ''),
1683
+ 'b_baners': request.args.get('b_baners', ''),
1684
+ 'b_butt': request.args.get('b_butt', ''),
1685
+ 'b_mess': request.args.get('b_mess', ''),
1686
+ 'shop_st': request.args.get('shop_st', ''),
1687
+ 'curator': request.args.get('curator', ''),
1688
+ 'pr1': request.args.get('pr1', ''),
1689
+ 'pr2': request.args.get('pr2', ''),
1690
+ 'pr3': request.args.get('pr3', ''),
1691
+ 'pr4': request.args.get('pr4', ''),
1692
+ 'pr5': request.args.get('pr5', ''),
1693
+ 'ad_url': request.args.get('ad_url', ''),
1694
+ 'key_pr': request.args.get('key_pr', ''),
1695
+ 'n_con': request.args.get('n_con', ''),
1696
+ 'canal': request.args.get('canal', ''),
1697
+ 'data_t': '' # Будет заполнено в функции add_or_update_contact
1698
  }
1699
 
 
1700
  phone_verification_response = verify_phone_number(contact_data['phone'])
1701
  if phone_verification_response is not None:
1702
+ contact_data['ws_st'] = phone_verification_response
1703
 
1704
  try:
1705
  add_or_update_contact(contact_data)