added Renata files and developed beauty output

This commit is contained in:
ada-dmitry
2024-05-12 22:57:10 +03:00
parent 28d23a5cbd
commit 32a35ea419
24 changed files with 652 additions and 21 deletions
Binary file not shown.
Binary file not shown.
+31 -11
View File
@@ -1,5 +1,6 @@
import sys
import texts
# import time
sys.path.append('tables')
from project_config import *
@@ -13,7 +14,8 @@ TODO:
1) Реализовать ввод порядкового номера - done
2) Удалить проверки на "русскоязычный ввод" - done
3) Устранить SQLi с помощью санации атрибутов - done
4) UPDATE для отдельный таблиц/общий? - indev
4) UPDATE для отдельных таблиц - indev
5) Красивый вывод - done
FIXME:
'''
@@ -111,8 +113,18 @@ class Main:
else:
DishTable().delete(self.dish_arr[x-1][0])
next_step = "5"
elif next_step == "5":
next_step = self.show_dish_in_cath()
elif next_step == "8":
x = int(input(texts.text_choice_update))
if(x==1):
self.cath_update()
elif(x==2):
self.dish_update()
return "1"
elif next_step != "0" and next_step != "9" and next_step != "3":
print("Выбрано неверное число! Повторите ввод!")
return "1"
@@ -160,16 +172,28 @@ class Main:
print("Выбрана категория: " + self.cath_obj)
print("Блюда:")
print("№\tНазвание\tВремя приготовления\tКраткая инструкция\
\n-------------------------------------------------------------------------------------")
lst = DishTable().all_by_cath_id(self.cath_id)
self.max_len_name = 0
self.max_index = len(lst)
for i in lst:
self.dish_arr.append([i[2], str(i[1]), str(i[4])])
self.max_len_name = max(self.max_len_name, len(i[2]))
print("№" + " "*(self.max_index + 1)+ "Название" + " "*(self.max_len_name - 4)\
+"Время приготовления Краткая инструкция\
\n-------------------------------------------------------------------------------------------")
# print('Катя хорошая и Дима тоже')
for i in range(len(self.dish_arr)):
print(str(i+1) + "\t" + self.dish_arr[i][0] + "\t\t" + self.dish_arr[i][1] + "\t\t\t" + self.dish_arr[i][2])
txt = str(i+1) + " "*(2+self.max_index-len(str(i)))
txt += self.dish_arr[i][0] + " "*(4+self.max_len_name - len(self.dish_arr[i][0]))
txt += self.dish_arr[i][1] + " "*(5+19-len(self.dish_arr[i][1]))
txt += self.dish_arr[i][2]
# txt += self.dish_arr[i][0] +
# print(f"""{str(i+1):<8}{self.dish_arr[i][0]:<18}\
# {self.dish_arr[i][1]:<15}{self.dish_arr[i][2]}""")
# print(f"""{str(i+1)}{" "*(self.max_index+2)}\
# {self.dish_arr[i][0]}{" "*(self.max_len_name+2)}{self.dish_arr[i][1]}{" "*19}{self.dish_arr[i][2]}""")
print(txt)
menu = texts.show_dish_in_cath_txt
print(menu)
return self.read_next_step()
@@ -199,10 +223,6 @@ class Main:
self.add_cath()
current_menu = "1"
elif current_menu == "8":
self.update_cath()
current_menu = "1"
print("До свидания!")
return
+17 -3
View File
@@ -14,9 +14,6 @@ class CathTable(DbTable):
return ['CONSTRAINT "Name" UNIQUE (cath_name)']
def delete(self, val):
# sql = "DELETE FROM " + self.table_name()
# sql += " WHERE cath_name"
# sql += "=" + "'" + "".join(val) + "';"
param_sql = "DELETE FROM cath WHERE cath_name = %s;"
cur = self.dbconn.conn.cursor()
value = "".join(val)
@@ -42,4 +39,21 @@ class CathTable(DbTable):
self.insert_one(["Завтрак"])
self.insert_one(["Обед"])
self.insert_one(["Ужин"])
self.insert_one(["Перекус"])
self.insert_one(["Десерт"])
self.insert_one(["Напиток"])
self.insert_one(["Закуска"])
self.insert_one(["Салат"])
self.insert_one(["Гарнир"])
self.insert_one(["Выпечка"])
self.insert_one(["Супы"])
self.insert_one(["Соусы"])
self.insert_one(["Паста"])
self.insert_one(["Мясные блюда"])
self.insert_one(["Рыбные блюда"])
self.insert_one(["Веганские блюда"])
self.insert_one(["Блюда из птицы"])
self.insert_one(["Морепродукты"])
self.insert_one(["Национальная кухня"])
self.insert_one(["Быстрые блюда"])
return
+33 -1
View File
@@ -88,7 +88,8 @@ class DishTable(DbTable):
return "1"
insert = [cath_id, ins_time, ins_name, ins_manual]
DishTable().insert_one(insert)
self.insert_one(insert)
def example_insert(self):
@@ -96,4 +97,35 @@ class DishTable(DbTable):
self.insert_one([1, "20 minutes", "Блины", "Замесить тесто, да пожарить. ©️ Никита Сергеич"])
self.insert_one([2, "2 hours", "Хлэб", "Почти, как блины, но не совсем."])
self.insert_one([3, "40 minutes", "Паста", "Почувствуй себя итальянцем"])
self.insert_one([1, "1 hour", "Пицца", "Раскатать тесто, добавить начинку и запечь в духовке."])
self.insert_one([2, "30 minutes", "Салат Цезарь", "Нарезать салат, приготовить соус и обжарить куриную грудку."])
self.insert_one([3, "45 minutes", "Лазанья", "Слои теста с соусом и начинкой, запеченные в духовке."])
self.insert_one([4, "1 hour 15 minutes", "Жаркое", "Обжарить мясо и овощи, затем потушить в духовке."])
self.insert_one([5, "20 minutes", "Смузи", "Смешать фрукты, ягоды, йогурт и лед в блендере."])
self.insert_one([6, "2 hours 30 minutes", "Бефстроганов", "Обжарить говядину, приготовить соус и подать с гарниром."])
self.insert_one([7, "1 hour", "Чили кон карне", "Обжарить мясо, добавить фасоль, помидоры и специи."])
self.insert_one([8, "45 minutes", "Фахитас", "Обжарить мясо и овощи, подать с лепешками и соусом."])
self.insert_one([9, "2 hours", "Пельмени", "Приготовить тесто, начинку и слепить пельмени."])
self.insert_one([10, "1 hour 30 minutes", "Ризотто", "Обжарить рис, добавить бульон и готовить, постоянно помешивая."])
self.insert_one([11, "50 minutes", "Тако", "Обжарить начинку, подать с лепешками и соусами."])
self.insert_one([12, "3 hours", "Бараньи ребрышки", "Замариновать ребрышки и запечь в духовке."])
self.insert_one([13, "1 hour 15 minutes", "Карри", "Обжарить специи, добавить овощи и курицу, потушить."])
self.insert_one([14, "30 minutes", "Бургер", "Обжарить котлету, собрать бургер с соусами и овощами."])
self.insert_one([15, "2 hours 45 minutes", "Утка по-пекински", "Замариновать утку, запечь и подать с лепешками и соусом."])
self.insert_one([16, "1 hour 30 minutes", "Паэлья", "Обжарить рис с овощами, добавить бульон и морепродукты."])
self.insert_one([17, "45 minutes", "Рататуй", "Обжарить овощи и запечь в духовке."])
self.insert_one([18, "2 hours", "Борщ", "Обжарить овощи, добавить бульон и тушить."])
self.insert_one([19, "1 hour 15 minutes", "Куриные наггетсы", "Замариновать куриное филе, обвалять в панировке и обжарить."])
self.insert_one([20, "3 hours", "Индейка с начинкой", "Приготовить начинку, фаршировать индейку и запекать в духовке."])
self.insert_one([1, "50 minutes", "Фрикадельки", "Приготовить фарш, сформировать фрикадельки и обжарить."])
self.insert_one([2, "2 hours 15 minutes", "Лазанья с мясным соусом", "Приготовить мясной соус, слои теста и запечь в духовке."])
self.insert_one([3, "1 hour 30 minutes", "Чили", "Обжарить мясо, добавить фасоль, помидоры и специи, потушить."])
self.insert_one([4, "40 minutes", "Хумус", "Приготовить нутовую пасту, добавить специи и подать с питой."])
self.insert_one([5, "2 hours 30 minutes", "Утиная ножка по-французски", "Замариновать утиные ножки, обжарить и потушить."])
self.insert_one([6, "1 hour 45 minutes", "Лапша по-сингапурски", "Обжарить лапшу с овощами, добавить соус и морепродукты."])
self.insert_one([7, "55 minutes", "Фалафель", "Приготовить фалафельную смесь, сформировать шарики и обжарить."])
self.insert_one([8, "2 hours 45 minutes", "Жаркое из телятины", "Обжарить мясо, добавить овощи и потушить в духовке."])
self.insert_one([9, "1 hour 20 minutes", "Том ям", "Приготовить бульон, добавить морепродукты и специи."])
self.insert_one([10, "3 hours 15 minutes", "Баранина по-гречески", "Замариновать баранину, запечь и подать с рисом."])
self.insert_one([11, "50 minutes", "Картофельные оладьи", "Приготовить картофельное пюре, сформировать оладьи и обжарить."])
return
+1
View File
@@ -0,0 +1 @@
print(len("\t"))
+13 -6
View File
@@ -3,20 +3,27 @@ show_main_menu_txt = """Привутствуем в меню, выберите
2 - сброс и инициализация БД;
9 - выход;"""
show_cath_1txt = """Просмотр списка категорий!
№\tНазвание\n-------------------------------------------------------------------------------------"""
№\tНазвание\n-------------------------------------------------------------------------------------------"""
show_cath_2txt = """-------------------------------------------------------------------------------------\nДальнейшие операции:
show_cath_2txt = """-------------------------------------------------------------------------------------------\nДальнейшие операции:
0 - возврат в главное меню;
3 - добавление новой категории;
4 - удаление категории;
5 - просмотр блюд в категории;
8 - обновить название категории;
8 - обновить категорию/блюдо;
9 - выход."""
show_dish_in_cath_txt = """-------------------------------------------------------------------------------------\nДальнейшие операции:
show_dish_in_cath_txt = """-------------------------------------------------------------------------------------------\nДальнейшие операции:
0 - возврат в главное меню;
1 - возврат в просмотр категорий;
6 - добавление нового блюда;
7 - удаление блюда;
8 - обновить блюдо в выбранной категории;
9 - выход."""
8 - обновить категорию/блюдо;
9 - выход."""
text_choice_update = """-------------------------------------------------------------------------------------------\n
Что вы хотите обновить?
1 - Категорию
2 - Блюдо
Введите необходимую цифру для выбора:
"""