zhurnal-ucheta-zayavok-2/brief.md

4.6 KiB
Raw Blame History

Журнал учёта заявок

Тип решения

Статический сайт (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/ закоммить вместе с проектом — иначе опубликованная страница останется без стилей.