Browse Source

повторная отправка звонка

master
Ilya_Chis 3 weeks ago
parent
commit
a85d48028d
  1. BIN
      webApp/interfaces/__pycache__/pagesController.cpython-38.pyc
  2. 17
      webApp/interfaces/pagesController.py
  3. 5
      webApp/templates/2.0/main_page.pug
  4. 43
      webApp/templates/static/js/2.0.dashboard.js

BIN
webApp/interfaces/__pycache__/pagesController.cpython-38.pyc

Binary file not shown.

17
webApp/interfaces/pagesController.py

@ -26,9 +26,11 @@ def find_patients(data):
"""
sheet = authorize_google().open("Пациенты клиники").sheet1
records = sheet.get_all_records() # Получаем все строки таблицы
print(data)
for i, record in enumerate(records, start=2): # Нумерация строк Google Таблицы начинается с 2
try:
print(str(record.get("Telegram ID", "")).strip(), str(record.get("ФИО", "")).strip().lower(), str(record.get("Дата рождения", "")).strip(), str(record.get("Номер телефона", "")).strip())
print(str(data.get("user_id", "")).strip(), str(data.get("fio", "")).strip().lower(), str(data.get("dob", "")).strip(), str(data.get("tel", "")).strip())
if (
str(record.get("Telegram ID", "")).strip() == str(data.get("user_id", "")).strip() and
str(record.get("ФИО", "")).strip().lower() == str(data.get("fio", "")).strip().lower() and
@ -165,6 +167,19 @@ def send_registration_request():
if json_data and json_data["status"] == "OK":
verification_code = json_data.get("code")
# Поиск пациента
row_number, patient_row = find_patients(raw_data)
print(row_number, patient_row)
if patient_row:
# Обновление записи в таблице
sheet = authorize_google().open("Пациенты клиники").sheet1
# Определяем динамический столбец по заголовкам
headers = sheet.row_values(1)
verification_col = headers.index("Верификация") + 1 # Столбцы нумеруются с 1
sheet.update_cell(row_number, verification_col, verification_code)
else:
# Записываем данные и код верификации в таблицу
sheet.append_row([
fio,

5
webApp/templates/2.0/main_page.pug

@ -51,6 +51,11 @@ script(type="text/javascript", src="/js/2.0.dashboard.js?q="~randomString())
span="Подтвердить"
.my-3.mx-4.primary-field.verification(style="display: none;")
p.mx-auto.text-center#repeat_call(href="#", style="cursor: pointer; text-decoration: underline dotted;")="Заказать повторный звонок"
button.btn.btn-success.float-end.mb-3#code_submit
span.spinner-border.spinner-border-sm.me-1.d-none(role="status" aria-hidden="true")
span="Отправить код"
.my-3.mx-4.primary-field.success_window(style="display: none;")
h3="Успех"
p="Ура! Ваша регистрация прошла успешно! 🥳 Пожалуйста вернитесь обратно в телеграм"

43
webApp/templates/static/js/2.0.dashboard.js

@ -99,10 +99,9 @@ $(document).ready(function(){
}
});
$("#form_submit").click(function(){
$(this).children(".spinner-border").removeClass('d-none');
$(this).attr("disabled", true);
function verification(){
$("#form_submit").children(".spinner-border").removeClass('d-none');
$("#form_submit").attr("disabled", true);
message = {}
@ -110,30 +109,30 @@ $(document).ready(function(){
if(!(validate_length($('#fio').val(), 3)))
{
show_error('Введите ФИО', false);
$(this).children(".spinner-border").addClass('d-none');
$(this).removeAttr("disabled");
$("#form_submit").children(".spinner-border").addClass('d-none');
$("#form_submit").removeAttr("disabled");
return;
}
if(!(validate_length($('#tel').val(), 16)))
{
show_error('Введите Телефон', false);
$(this).children(".spinner-border").addClass('d-none');
$(this).removeAttr("disabled");
$("#form_submit").children(".spinner-border").addClass('d-none');
$("#form_submit").removeAttr("disabled");
return;
}
if ($('#dob').val().length !== 10 || new Date().getFullYear() - new Date($('#dob').val()).getFullYear() > 100) {
show_error('Дата рождения должна быть корректной и возраст не более 80 лет', false);
$(this).children(".spinner-border").addClass('d-none');
$(this).removeAttr("disabled");
$("#form_submit").children(".spinner-border").addClass('d-none');
$("#form_submit").removeAttr("disabled");
return;
}
if ($('#dob').val().length !== 10 || new Date().getFullYear() < new Date($('#dob').val()).getFullYear()) {
show_error('Проверьте дату ввода, вы указали дату больше чем сегодняшняя дата', false);
$(this).children(".spinner-border").addClass('d-none');
$(this).removeAttr("disabled");
$("#form_submit").children(".spinner-border").addClass('d-none');
$("#form_submit").removeAttr("disabled");
return;
}
@ -155,16 +154,21 @@ $(document).ready(function(){
}
else{
show_error(data.error);
$(this).children(".spinner-border").addClass('d-none');
$(this).removeAttr("disabled");
$("#form_submit").children(".spinner-border").addClass('d-none');
$("#form_submit").removeAttr("disabled");
}
},
error:function (jqXHR, exception) {
$(this).children(".spinner-border").addClass('d-none');
$(this).removeAttr("disabled");
$("#form_submit").children(".spinner-border").addClass('d-none');
$("#form_submit").removeAttr("disabled");
show_error('Что-то пошло не так', false)
}
});
}
$("#form_submit").click(function(){
verification();
});
$("#code_submit").click(function(){
@ -221,7 +225,8 @@ $(document).ready(function(){
success: (data) => {
if(data.success==true){
$('.primary-field').hide();
$('.verification').show();
$('.verification').hide();
$('.success_window').show();
}
else{
show_error(data.error);
@ -237,6 +242,10 @@ $(document).ready(function(){
});
});
$("#repeat_call").click(function(){
verification();
});
$('#clear_tel').click(function(){
phoneStr = '';
phoneInput.value = formatPhoneString();

Loading…
Cancel
Save