February 4, 2023

Часть 7. Меняем количество в заказе.

Теперь создаем еще один блок

и в настройках стрелки ставим такие настройки

задержка -1 секунда (чтобы мгновенно отправить сообщение)

и в переменной для сравнения пишем:

quantity!=0

по этой стрелке человек пойдет в том случае когда он количество товара не полностью очистил.

Представим ситуацию. Человек сперва выбрал 4 колы, потом захотел убрать 3 колы. В таком случае у него останется 1 кола и он пойдет по стрелке снизу (ту которую только что создали).

А если бы выбрал убрать все 4 колы, то он пошел бы по стрелке, где переменная для сравнения quantity==0 , потому что у него осталось 0 колы.

Теперь наша задача сделать пересчет корзины и внести новые данные в словарь

В этом блоке пишем такую строчку:

basket[#{position}]["quantity"]=int('#{quantity}')

basket - корзина

#{position} - выбранный товар

["quantity"] - ключ к значению количества выбранного товара (старое значение)

Здесь в корзине мы обращаемся к бывшему количеству товара и говорим, чтобы заменили это количество на новое int('#{quantity}') и с помощью int() мы даем понять, что туда сохраняется ЦИФРА

Дальше дополняем такой строчкой

cost_basket=#{cost_basket}-#{qua}*#{price}

мы тут в переменную cost_basket пере сохраняем стоимость общей корзины с вычетом убранного количества определенного товара

то есть

старая цена корзины(#{cost_basket}) минус(-) количество убранного товара(#{qua}) умноженную(*) на цену 1 штуки(#{price})

и это все сохраняем в переменную cost_basket

Дальше уже дописываем наш метод replace, чтобы корзина красиво отображалась пользователю

header=Корзина изменена: basket_text=massive_to_text(basket, header, 1)

basket_text=replace(basket_text, "{'product': '", " ")

basket_text=replace(basket_text, "', 'quantity': ", " Количество: ")

basket_text = replace(basket_text, ", 'price': ", " шт. Цена: ")

basket_text = replace(basket_text, "};", " руб.")

И вывод текста делаем такой:

#{basket_text}

Стоимость вашего заказа #{cost_basket} руб.

А дальше уже создаем две клавиатурные кнопки

Редактировать корзину

Вернуться в корзину

и направляем стрелки этих кнопок в блоки как показано на скриншоте

Корзина в проектах на конструкторе Salebot. Начало

Если вам понравилась наша статья, пишите комментарии. Задавайте вопросы по статье в комментариях.

И конечно же у вас есть возможность поддержать наш проект отправив донат.