c 10:00 до 18:00
Автоаксессуары
=
Каталог
Оригинальные автомобильные аксессуары
0
0
Москва, ул. Горбунова, 12, к2, с1
Оплатить
Оплатить
По этой части таблицы есть уроки в Легком старте и на основном курсе.
А вот эту часть таблицы я не до конца понимаю.
Вот эта часть таблицы мне понятна, это то что разбирали в курсе Легкий старт
отменить
from pptx import Presentation from pptx.util import Inches, Pt from pptx.dml.color import RGBColor # Создаем презентацию prs = Presentation() # Функция для добавления слайда с заголовком и текстом def add_text_slide(title, content): slide = prs.slides.add_slide(prs.slide_layouts[1]) slide.shapes.title.text = title tf = slide.shapes.placeholders[1].text_frame tf.text = content for paragraph in tf.paragraphs: paragraph.font.size = Pt(14) paragraph.font.name = "Arial" paragraph.font.color.rgb = RGBColor(50, 50, 50) # Функция для добавления слайда с таблицей def add_table_slide(title, headers, rows): slide = prs.slides.add_slide(prs.slide_layouts[5]) slide.shapes.title.text = title rows_count = len(rows) + 1 cols_count = len(headers) table = slide.shapes.add_table(rows_count, cols_count, Inches(0.5), Inches(1.5), Inches(9), Inches(4)).table # Заголовки for col, header in enumerate(headers): cell = table.cell(0, col) cell.text = header cell.text_frame.paragraphs[0].font.bold = True cell.text_frame.paragraphs[0].font.size = Pt(12) cell.text_frame.paragraphs[0].font.color.rgb = RGBColor(255, 255, 255) cell.fill.solid() cell.fill.fore_color.rgb = RGBColor(0, 102, 204) # Данные for row_idx, row_data in enumerate(rows, start=1): for col_idx, value in enumerate(row_data): cell = table.cell(row_idx, col_idx) cell.text = value cell.text_frame.paragraphs[0].font.size = Pt(11) cell.text_frame.paragraphs[0].font.color.rgb = RGBColor(50, 50, 50) # Титульный слайд slide = prs.slides.add_slide(prs.slide_layouts[0]) slide.shapes.title.text = "Использование и оплата сервисов\nличного кабинета интернет-магазина" slide.placeholders[1].text = "Деловой минимализм с цветовыми акцентами" # Слайд 1 - Общая информация add_text_slide("1. Общая информация", """Для сайта на платформе Tilda разработан функциональный личный кабинет (ЛК), который позволяет пользователю: - отслеживать историю заказов; - просматривать состав заказа; - видеть статус оплаты; - производить оплату заказа через CloudPayments. Особенность: так как Tilda не имеет встроенного полноценного функционала ЛК, система реализована с помощью внешних сервисов и интеграций. Процесс работы: 1. Все заказы проходят через менеджера (администратора). 2. Менеджер проверяет стоимость заказа и доставки, корректирует данные. 3. После проверки клиенту отображается итоговая сумма к оплате. 4. Проверка заказа осуществляется в течение 1 часа. 5. Оплата доступна только после подтверждения менеджером. """) # Слайд 2 - Архитектура решения add_text_slide("2. Архитектура решения", """1. Tilda — отображает каталог и принимает заказы через форму. 2. NocoDB — база данных заказчиков, заказов, их состава и оплат. 3. Адаптер — интегрирует формы Tilda с API, передавая данные в NocoDB. 4. Nodul — автоматизирует передачу данных между Tilda, NocoDB и CloudPayments. 5. Менеджер — через интерфейс NocoDB вносит проверенные данные. 6. Клиент — оплачивает заказ через CloudPayments. 7. Информация об оплате — обновляется в ЛК (Tilda) через Nodul → NocoDB → Tilda. """) # Слайд 3 - Таблица технологий add_table_slide("3. Используемые технологии и сервисы", ["Сервис / инструмент", "Назначение", "Примечания"], [ ["Tilda", "Витрина, формы заказа", "Сбор заявок"], ["NocoDB", "База данных заказов", "Self-host или облако Reg.ru"], ["Nodul", "API / автоматизация", "Интеграция Tilda и NocoDB"], ["Адаптер", "Обработка форм Tilda", "Преобразует в API-запрос"], ["CloudPayments", "Прием онлайн-платежей", "Поддержка банковских карт"], ["Менеджер", "Обработка заказов", "Проверка суммы и данных"] ]) # Слайд 4 - Таблица стоимости add_table_slide("4. Стоимость и даты оплаты сервисов", ["Сервис", "Стоимость", "Дата следующей оплаты / Примечания"], [ ["Tilda", "750 ₽/мес.", "Оплачено до 15.06.2026"], ["Nodul", "1700 ₽/мес.", "Следующая оплата 15.08.2025"], ["Адаптер", "600 ₽/мес.", "Оплачено до 06.09.2025 (автосписание)"], ["NocoDB (Reg.ru)", "630 ₽/мес.", "Последняя оплата 22.07.2025 (пополнить счёт заранее)"] ]) # Слайд 5 - Доступы add_text_slide("5. Доступы", """Tilda: https://tilda.ru/ Логин: a.makarenkov@ca-plastic.ru Пароль: Deflektor Reg.ru: https://www.reg.ru/ Логин: nis1807@yandex.ru Пароль: tXRvqA6_ Адаптер: Логин: deflectormsk@mail.ru Пароль: 7SS&#DwPwT*r4a CloudPayments: https://merchant.cloudpayments.ru/next/dashboard/ Логин: deflectormsk@mail.ru Пароль: Deflector2025$ SMTP.BZ: Логин: deflectormsk@mail.ru Пароль: S6u*iF@##YPr44 NocoDB: https://ncdb.caplastic-msk.ru Логин: deflectormsk@mail.ru Пароль: Deflector2025 Отдельные входы для менеджеров: - Иван: nis1807@yandex.ru / Пароль: Deflector1807 - Андрей: a.makarenkov@ca-plastic.ru / Пароль: 4u*n^nYjjtDoo5 """) # Сохраняем файл pptx_path = "/mnt/data/Использование_и_оплата_сервисов_ЛК.pptx" prs.save(pptx_path) pptx_path