Files
site_aegisone/py_service/CHANGELOG.md
T

121 lines
10 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Changelog — AegisOne Service Portal
## 1.4.0 (20.05.2026)
## 1.3.0 (20.05.2026)
### Новые функции
- П.49: Подключены favicon (ico, png, webmanifest, apple-touch-icon) + лого на странице логина
- П.44: Сохранение scroll сайдбара при навигации (sessionStorage)
- П.47: Липкий тулбар редактора документов (верх/низ)
- П.33: Кастомный модал подтверждения выхода из опросника (вместо системного confirm)
- П.33: Добавлен POST /service/questionnaire/save/{step} — сохранение черновика
### Исправления и улучшения
- П.35: Версия ПО отображается на всех страницах, не только дашборде
- П.40: Звёзды избранного выровнены в одну строку с пунктами меню
- П.42: discover_docs() вызывается при каждом открытии документа — новые .md сразу видны
- П.43: POST /admin/permissions использует discover_docs вместо load_permissions
- П.45: Футер сайдбара: имя → выход → версия
- П.46: Иконки EasyMDE видны на тёмной теме ([data-theme="dark"] overrides)
- П.48: Создание "Пример из практики" — добавлен action="/service/cases/create"
- П.29: SLA — action="/service/sla/create" у формы + safe type conversions в edit
- П.31: Идеи — защита от None description ((idea.description or '')[:100])
- П.49: Назначения — a.object_name → a.object.name, a.user_name → a.user.full_name
- П.26: Заголовок "Назначения" → "Назначение сотрудников"
- П.24: Объекты — список клиентов в select (c.id/c.name вместо c[0]/c[1])
- П.24: Объекты — editObject защита от None customer_id + safe int() в backend
- П.23: Валидация клиентов: * у обязательных полей, KPP (9 цифр), маска телефона "8 (___) ___-__-__"
- П.36: Portainer URL https://81.177.141.34:9443
## 1.2.1 (20.05.2026)
### Новые функции
- П.38: Стилизация логина — "One" цветом #00ADEF
- П.45: Футер сайдбара: имя → выход → версия
- П.44: Сохранение scroll сайдбара при навигации (sessionStorage)
- П.47: Липкий тулбар редактора документов
- П.49: Подключены favicon (ico, png, webmanifest, apple-touch-icon)
### Исправления и улучшения
- П.35: Версия ПО отображается на всех страницах, не только дашборде
- П.40: Звёзды избранного выровнены в одну строку с пунктами меню
- П.42: discover_docs() вызывается при каждом открытии документа — новые .md сразу видны
- П.43: Управление документами — POST использует discover_docs вместо load_permissions
- П.46: Иконки EasyMDE видны на тёмной теме
- П.48: Создание "Пример из практики" — добавлен action="/service/cases/create"
- П.29: SLA — добавлен action="/service/sla/create" у формы, safe type conversions
- П.31: Идеи — защита от None description (|default(''))
- П.49: Назначения — a.object_name → a.object.name, a.user_name → a.user.full_name
- П.26: Заголовок "Назначения" → "Назначение сотрудников"
- П.24: Объекты — список клиентов в select (c.id/c.name вместо c[0]/c[1])
- П.36: Portainer URL через https://81.177.141.34:9443
- П.33: Опросник — добавлен POST /service/questionnaire/save/{step}, кастомный модал
## 1.2.0 (20.05.2026)
### Доработки
- П.21: Кнопка "Настроить" на дашборде — выбор отображаемых показателей (localStorage)
- П.22: Исправлена ошибка Internal Server Error при редактировании пользователя (добавлен action у формы)
- П.23: Исправлена ошибка Method Not Allowed при создании клиента; ИНН обязателен (10/12 цифр)
- П.24: Тип объекта переведён на русский (select вместо input)
- П.25: Исправлена ошибка Method Not Allowed при создании/редактировании объекта
- П.26: "Назначения" → "Назначение сотрудников"
- П.27: Статус SLA по умолчанию — "Переговоры" (negotiation)
- П.28: Уровни SLA отображаются на русском: Базовый/Оптимальный/Максимальный
- П.29: Проверена работа создания и редактирования SLA контрактов
- П.30: Расширены графики: группировка (день/неделя/месяц), название, сохранение/экспорт PNG
- П.31: Исправлена ошибка Internal Server Error при смене статуса идеи
- П.32: Быстрое меню заменено на звёздочки (★) — избранное в localStorage
- П.33: Кнопка "Выйти" в опроснике с подтверждением сохранения черновика
- П.34: Убрана надпись "Главная" под каждым меню
- П.35: Версия показывается полностью только на дашборде, в остальных — "v"
- П.36: Ссылка Portainer изменена на IP:порт (через PORTAINER_URL)
- П.37: Документация: левое меню (page.html), авто-загрузка .md из /py_service/docs
## 1.1.0 (18.05.2026)
### Баги
- discover_docs: миграция существующих permissions без technician — добавляется technician: {view: false} + engineer: {edit: false, cancel: false}
- favicon: исправлен тип (image/x-icon → image/svg+xml) и расширение (favicon.ico → favicon.svg)
### Доработки
- П.15: Визуальная система формул — коэффициенты сгруппированы по formula_ref в аккордеоны
- П.15: Информация о формуле (📐) — модалка с текстом формулы и описанием результата
- П.15: Песочница формул (/service/coefficients/test) — подстановка параметров и расчёт для 7 формул:
risk_score, complexity, object_index, engineer, ecs, shs, ceo_shs
- П.15: Иконка 🧪 у каждой группы ведёт в песочницу с предвыбором группы
- П.15: В сайдбар добавлена ссылка "Тест формул" (owner)
- CSS: добавлены стили аккордеона и панели теста формул
## 1.0.3 (18.05.2026)
### Баги
- П.18: Ченджлог не открывался — CHANGELOG.md исключался .dockerignore (*.md убран)
- П.20: Ошибка при сохранении пользователя — исправлена логика is_active (без дефолта), phone/email не сбрасываются
### Доработки
- П.12: Авто-добавление документов из /py_service/docs через discover_docs() в lifespan
- П.13: Владелец редактирует .md файлы через /service/documents/{slug}/edit (EasyMDE)
- П.14: Система прав документов:
- Владелец видит/создаёт/редактирует/удаляет все документы
- Владелец назначает engineer'у просмотр/редактирование через /service/documents/admin/permissions
- Engineer видит только назначенные документы
- Engineer даёт technician'у просмотр своих документов через /service/documents/tech-access
- Technician видит только те документы, что открыл engineer
- П.15: Удаление коэффициентов (кнопка ✕); предложен редизайн с группировкой по formula_ref
- П.16: Гибкие графики для владельца (/service/charts) — Chart.js: задачи/SHS/KPI/MRR/объекты, типы: bar/line/pie/doughnut
- П.17: "Service Portal" увеличен с 10px до 12px
- П.19: Роль убрана из футера сайдбара, "Выйти" под ФИО
- Удалены дублирующие ручки /service/docs* (старая система), везде /service/documents/
## 1.0.2 (18.05.2026)
### Доработки
- П.3: Логотип AegisOne в sidebare (sidebar-logo-text, 2rem)
- П.5: Версия кликабельна — модалка с историей изменений (changelog)
- П.6: Текст логотипа увеличен (sidebar-logo-text, 2rem)
- П.7: Верхнее меню упрощено — только логотип и кнопка темы
- П.8: Быстрое меню — настройка своих и техниковских ссылок (owner/engineer)
- П.9: Система идей — CRUD + статусы (normal/in_progress/completed)
- П.11: Ссылки на Portainer и Gitea в левом меню (owner)
## 1.0.1 (18.05.2026)
## 1.0.0
### Новые функции
- Первый запуск сервисного портала на FastAPI
- Базовые страницы: логин, дашборд, документация
- Авторизация (owner/engineer/technician)
- Дашборд с основной статистикой (объекты, задачи, инциденты, SLA, SHS)