4.6 KiB
Журнал учёта заявок
Тип решения
Статический сайт (index.html + style.css + script.js) на ванильном JS с хранением состояния в LocalStorage браузера.
Задача
Создать единый экран для ведения журнала заявок: регистрация подачи, отслеживание сроков и статусов, выгрузка отчётности.
Кто пользуется
Сотрудники, подающие заявки, и ответственные за их обработку (демонстрация в Telegram-группе).
Что делает прототип
- Отображает таблицу всех записей с полями: Кто подал, Что нужно, Срок, Статус.
- Показывает строку поиска по тексту заявки.
- Реализует фильтрацию по статусам через кнопки-чипсы (Все, Новая, В работе, Готово).
- Выводит счётчики сверху: всего записей и количество по каждому статусу.
- Предоставляет форму (модальное окно или разворачиваемый блок) для добавления и редактирования записей.
- Кнопка «Выгрузить в Excel» скачивает текущий список в формате CSV.
- Кнопка удаления записи вызывает подтверждение («Вы уверены?»), после чего удаляет запись и фиксирует действие в журнале изменений (время, действие, пользователь).
- Статусы и сущности названы строго по заявке: «заявка», без англицизмов.
- Даты отображаются и вводятся в формате ДД.ММ.ГГГГ.
- Критично: Данные сохраняются в LocalStorage браузера (не пропадают после обновления страницы F5).
- Критично: Удаление происходит только после явного подтверждения с записью лога.
Демо-данные
5 записей. Имена: А. Иванов, Б. Серикбаев, В. Ли. Запросы: «Настройка ПК», «Доступ в серверную», «Закупка СИЗ». Статусы: «Новая», «В работе», «Закрыта». Даты: текущая неделя.
Допущения
- Так как владелец не указал конкретных статусов, приняты стандартные: «Новая», «В работе», «Закрыта».
- Поле «Кто подал» заполняется вручную пользователем (авторизации нет).
Чего пока нет
- Общего сервера (данные видны только в браузере конкретного пользователя).
- Интеграции с почтой Лотус и CRM.
- Личного кабинета.
Дизайн — дизайн-система KT AI
Весь интерфейс собирай на дизайн-системе KT AI, которая уже лежит в папке проекта design-system/.
Перед первой строкой вёрстки прочитай design.md и design-system/AGENTS.md и следуй им.
Подключай файлы ДС относительными путями и в этом порядке: ./design-system/kt-ai-fonts.css,
./design-system/kt-ai-tokens.css, ./design-system/kt-ai-components.css, ./design-system/kt-ai-page.css.
Цвета, отступы и размеры — только токенами var(--kt-ai-…), иконки — из design-system/icons/kt-ai-lucide-sprite.svg.
Для таблиц, списков, журналов, дашбордов и очередей бери шаблон design-system/templates/kt-ai-app-shell.html
с конфигом по design-system/docs/PRODUCT_CONTRACT.md; архетип экрана выбирай по design-system/docs/ARCHETYPES.md.
Свой стиль не выдумывай, Bootstrap/Tailwind/Material/Google Fonts не подключай, сырые hex-цвета не пиши.
Папку design-system/ закоммить вместе с проектом — иначе опубликованная страница останется без стилей.