Назначение и границы
Оператору нужно быстро находить запись в расписании, видеть её статус и менять поля без потери контекста таблицы.
Интерфейс расписания с фильтрами, таблицами и редактированием записей. Для публичного показа подготовлен полный синтетический набор данных и мобильные состояния.
- Демонстрационный вход test / test не является системой аутентификации.
- 180 синтетических лабораторных записей и четыре BCP-примера не являются рабочими данными.
- Нереализованные разделы не включены в маршрут демонстрации. Число добавляемых строк ограничено 500.
Архитектура и схемы
- Синтетические записи покрывают демонстрируемые поля, а не заменяют таблицу пустым макетом.
- Форма редактирует черновик; отмена не должна менять исходную запись.
- Изменения остаются внутри браузерной сессии; серверный API расписаний в публичное демо не подключён.
Code-map: от функции к коду
Карта привязана к версии 45a75c0a457d. Она помогает проследить изменение через интерфейс, API, модуль, данные и проверку.
| Функция | Экран / API | Модуль | Данные / проверка |
|---|---|---|---|
| Вход | Login / guard | authentication.service; auth.guard | sessionStorage; изолированный вход |
| Расписание | Schedule page | schedule.page; schedule-table.service | синтетические записи; фильтры |
| Форма | Модальные окна | pages/schedule и pages/samples | черновик; обязательные поля / cancel |
| BCP | BCP page | pages/bcp | четыре учебные точки; UI QA |
| Сброс | Демо-контролы | сервисы состояния | seed; 180 исходных записей |
Как работать с картой
- Перед изменением найти функцию и пройти связи до API, состояния и хранилища.
- Проверить входы, ошибки, повторные события и зависимые сценарии.
- После изменения обновить карту и затронутые схемы вместе с кодом.
- Выполнить связанные проверки и привязать новые материалы к версии исходников.
Сценарии и API
- Войдите test / test и откройте расписание.
- Отфильтруйте записи, переключите статусы и сравните представления.
- Добавьте запись, проверьте обязательные поля, откройте редактирование и отмените изменение.
- Проверьте мобильный вид и сброс исходного набора.
Проверка опубликованной версии
- Login → schedule
- Filtering and empty state
- Edit cancellation leaves original record unchanged
- Required validation and successful creation
- Independent browser session has original dataset
- Delete selected record
- Reset clears tab session
- Подтверждённого GitHub CI для этого SHA нет; перечислены выполненные локальные проверки и сценарии опубликованной версии. Исторические CI-ссылки, если есть, отмечены отдельно.
Результаты описывают проверенные сценарии и конкретную версию. Они не являются оценкой коммерческого успеха или качества моделей на независимой выборке.
Измерения
- Сохранено 13 содержательных кадров фактического интерфейса.
- Дата, сценарий и версия указаны у каждого кадра.
- Отдельного backend-процесса на VPS нет: Nginx раздаёт статику. Ресурсы общего Nginx нельзя честно приписать одному сайту.
- Измерено 6 повторений сценария; медиана 2390.0 мс, максимум 3282 мс. Время включает браузер и HTTPS; методика и ограничения приложены.
Запуск и эксплуатация
Рабочий контур прикладной системы предполагает серверный источник расписаний. В публичном контуре используются локальные синтетические данные; это явно обозначено на экране.
Production-сборка Angular выполняется вне VPS. На сервер передаётся каталог готовых файлов, Nginx отдаёт его по HTTPS. Постоянного Node.js-процесса для этого демо нет.
Проверять /healthz, прямые маршруты после обновления страницы, вход, сохранение и отмену формы. Для отката переключить current на сохранённый каталог релиза. Данные восстанавливаются из встроенного набора.
Общие правила эксплуатации: готовые файлы и закреплённые образы собираются вне VPS; секреты не входят в артефакты. Общесерверный docker prune не применяется. Логи backend ограничены ротацией, изменения log options требуют пересоздания контейнера.
Перед изменением пройти code-map от функции к экрану/API, модулю и данным. После изменения обновить карту и схемы, выполнить связанные сценарии, включая ошибку, повтор и сброс. Источник истины — конкретная версия кода, а не старая диаграмма.
Откат проверен 2026-09-07T00:59:39.939043+00:00: 20260907-verified → 20260907 → 20260907-verified. После каждого переключения подтверждены HTTPS, readiness и SHA. Это проверка конфигурации и артефактов на одном проверенном SHA; обратная миграция БД не выполнялась.
Стек
| Angular 17 | Компоненты страниц, формы, маршрутизация и состояние. |
|---|---|
| Ionic 7 | Навигация, элементы управления, модальные формы и адаптивный интерфейс. |
| SlickGrid | Табличное представление и операции со строками. |
Материалы и исходники
В репозитории есть исходный снимок от 1 мая 2024; начало разработки этим не установлено. Демо: 7 сентября 2026.