def get_photo(message, new_ticket): try: photo_id = message.photo[-1].file_id photo = bot.get_file(photo_id) downloaded_photo = bot.download_file(photo.file_path) src = 'img/' + photo_id with open(src, 'wb') as new_file: new_file.write(downloaded_photo) new_ticket.photo_file = src update_reg_ticket(new_ticket) bot.send_message( message.from_user.id, f'Вы загрузили фотографию!\nВыберите категорию товара:', reply_markup=get_category_markups()) bot.register_next_step_handler(message, get_category, new_ticket) except TypeError: bot.register_next_step_handler(message, get_photo, new_ticket) bot.send_message( message.from_user.id, f'Фотография не была загружена\nПопробуйте ещё раз.\n')
def get_fio(message, new_ticket): new_ticket.fio = message.text update_reg_ticket(new_ticket) bot.register_next_step_handler(message, get_address, new_ticket) bot.send_message( message.from_user.id, f'Ваше ФИО: {new_ticket.fio}\nВведите адрес регистрации:')
def get_order_id(message, new_ticket): new_ticket.order_id = message.text update_reg_ticket(new_ticket) bot.register_next_step_handler(message, get_photo, new_ticket) bot.send_message( message.from_user.id, f'Номер заказа: {new_ticket.order_id}\nЗагрузите фото товара:')
def get_address(message, new_ticket): new_ticket.address = message.text update_reg_ticket(new_ticket) bot.register_next_step_handler(message, get_sale_date, new_ticket) bot.send_message( message.from_user.id, f'Ваш адрес: {new_ticket.address}\nВведите дату покупки(в формате дд.мм.гггг):' )
def get_category(message, new_ticket): new_ticket.category = message.text update_reg_ticket(new_ticket) bot.send_message(message.from_user.id, f'Выбрана категория товара: {new_ticket.category}') first_question = get_question(1) bot.register_next_step_handler(message, get_questions, new_ticket, question=first_question) bot.send_message(message.from_user.id, first_question.text, reply_markup=get_yes_no_markups())
def get_sale_date(message, new_ticket): sale_date = message.text valid_date = validate_date(sale_date) if valid_date: new_ticket.sale_date = valid_date update_reg_ticket(new_ticket) bot.register_next_step_handler(message, get_order_id, new_ticket) bot.send_message(message.from_user.id, f'Дата покупки: {sale_date}\nВведите номер заказа:') else: bot.register_next_step_handler(message, new_ticket) bot.send_message( message.from_user.id, f'Вы ввели: {sale_date}\nДата не соответствует формату дд.мм.гггг\n' f'Введите дату ещё раз:\n')