guidance.enterprise · 0.1.3 · Python 3.12+
Переиспользуемый модуль для ERP, корпоративных порталов и рабочих кабинетов. Руководства, бизнес-гайды и добровольные пошаговые мастера с прогрессом по пользователю и рабочему пространству.
Посмотреть в ERP ↗ · Скачать wheel ↗ · Полный контракт подключения ↗
Знакомство, профиль, организация, роли и допуски, MS AD / FreeIPA / OpenLDAP, счета и периоды, первая операция, сторно, закрытие периода, контроль руководителя, бизнес-процессы, масштаб внедрения, аудит, модули и устранение ошибок.
Мастер запускается пользователем. Остановка сохраняет шаг. Продолжение возвращает к нему. Отмена и перезапуск доступны в управлении мастером. Рассылок, таймеров и напоминаний нет.
python -m pip install --index-url https://engine.yeti3.ru/sdk/simple/ yeti3-guidance==0.1.3
Ядро пакета использует только YETI³ Core. Необязательный Django-адаптер требует Django 5.2–6.0 и базу проекта. В ERP используется PostgreSQL; пакет не создаёт SQLite и не выбирает БД за приложение.
from yeti3_guidance.module import Package
engine.register(Package())
engine.boot()
guidance = engine.capabilities.get('guidance.enterprise')
pack = guidance.load_pack()
# guidance.available(guide, role)
# guidance.transition(progress, action, steps=4, version='1')SDK предоставляет каталог, правила переходов, страницы и модель прогресса. Приложение передаёт проверенную роль, серверный scope рабочего пространства, доступные локальные маршруты и базовый шаблон. Бизнес-команды и проверка доступа к ним остаются в приложении.
INSTALLED_APPS += ['yeti3_guidance']
YETI3_GUIDANCE_CONTEXT = 'your_app.guidance.context'
# URL: path('help/', include('yeti3_guidance.urls'))
# Context processor: yeti3_guidance.context_processors.guidance
# Layout: include 'yeti3_guidance/inline.html'
# Styles: yeti3_guidance/guidance.cssПосле подключения выполните миграцию владельцем БД, выдайте ограниченные runtime-права на таблицу прогресса и её sequence, проверьте доступность ранней помощи и collectstatic. Полный пример контекста и разрешённые routes находятся в README SDK.
| Действие | Результат |
|---|---|
| Начать / продолжить | Активный шаг; другой мастер в том же пространстве ставится на паузу |
| Назад / дальше | Подтверждённый пользователем переход, без выполнения бизнес-команд |
| Остановить | Пауза с сохранением текущего шага |
| Отменить | Сброс шагов этого мастера с сохранением рабочих данных |
| Начать заново | Первый шаг; требуется явное действие пользователя |
Каждый POST проверяет CSRF, роль и revision. Устаревшая вкладка получает HTTP 409. После обновления версии руководства продолжение требует явного перезапуска. GET не меняет прогресс.
Завершение означает прохождение инструкции, а не успешную конфигурацию или юридическое соответствие. Мастер не проводит операции, не откатывает записи и не подключает каталог автоматически. Для сторно, настроек каталога и страновых правил существуют отдельные проверяемые процессы.
python -m unittest discover -s tests -v # На отдельной PostgreSQL test database ERP: python manage.py test core.test_guidance core.test_sdk --noinput
Проверяйте роли, изоляцию пользователей и контуров, CSRF, конфликт вкладок, остановку и продолжение, отмену и перезапуск, сохранность бизнес-данных, поиск, реальные ссылки и мобильное оформление.
Один элемент, одно пояснение. Подсветка поля или кнопки, переход назад, пропуск, остановка и запуск заново. Мастер не открывается сам и не выполняет операции за пользователя.