7.1 KiB
Журнал выдачи СИЗ
Тип решения
Учёт и трекеры — приложение на Node без внешних зависимостей, данные в файле data.json на сервере. Для прототипа, который показывают в Telegram-группе, в качестве предпочтения выбран постоянный вариант со статикой и демо-данными в коде, но по типу задачи это всё равно решение класса учёта; если платформа не примет статический вариант для хранения журнала, нужен серверный вариант с временной ссылкой.
Задача
Сделать журнал выдачи спецодежды и СИЗ на складе: фиксировать, что выдали, кому, сколько, когда вернуть, кто выдал.
Кто пользуется
Складской сотрудник / кладовщик, который ведёт журнал выдачи СИЗ и спецодежды.
Что делает прототип (по экранам и кнопкам)
Экран 1. Журнал выдачи
На экране видна таблица всех записей журнала с колонками:
- дата выдачи;
- что выдали;
- кому выдали;
- количество;
- когда вернуть;
- кто выдал;
- статус.
Сверху размещены:
- строка поиска по всем полям;
- счётчики: всего, выдано, возвращено, просрочено;
- фильтр кнопками-чипсами по статусу: Все, Выдано, Возвращено, Просрочено;
- кнопка Добавить запись;
- кнопка Выгрузить в Excel (CSV).
Действия на экране:
- поиск фильтрует таблицу по введённому тексту;
- нажатие на чип статуса показывает только записи выбранного статуса;
- нажатие Добавить запись открывает форму добавления;
- нажатие на строку записи открывает ту же форму в режиме редактирования;
- нажатие Удалить в строке открывает подтверждение удаления;
- при удалении запись исчезает из таблицы и добавляется в журнал изменений с полями «когда, что, кто».
Экран 2. Форма добавления / редактирования записи
Открывается в модальном окне или отдельной панели. Поля формы:
- дата выдачи;
- что выдали;
- кому выдали;
- количество;
- когда вернуть;
- кто выдал;
- статус.
Кнопки:
- Сохранить;
- Отмена.
Поведение:
- форма одинаковая для добавления и редактирования;
- обязательные поля проверяются перед сохранением;
- даты отображаются в формате ДД.ММ.ГГГГ;
- после сохранения таблица и счётчики обновляются сразу.
Экран 3. Подтверждение удаления
Появляется диалог с текстом подтверждения удаления записи. Кнопки:
- Удалить;
- Отмена.
После подтверждения:
- запись удаляется;
- событие попадает в журнал изменений: когда удалено, что удалено, кто удалил.
Экран 4. Журнал изменений
Отдельный блок или вкладка внутри прототипа. Показывает историю действий по записям:
- когда;
- что;
- кто;
- действие (добавление, изменение, удаление).
Экран 5. Выгрузка
Кнопка Выгрузить в Excel (CSV) формирует файл со всеми текущими записями таблицы с учётом активного поиска и фильтра.
Демо-данные
Заложить 12 записей журнала. Реалистичный казахстанский контекст:
- сотрудники: Айдос Нурланов, Гульмира Сейсембаева, Данияр Ермеков, Алина Касенова, Ерлан Тлеубаев;
- места/подразделения можно указывать кратко: склад Алматы, участок Астана, сервисная бригада Шымкент.
Статусы в демо:
- 6 записей — Выдано;
- 4 записи — Возвращено;
- 2 записи — Просрочено.
Даты выдачи и возврата:
- в диапазоне последних 2–3 месяцев;
- формат на экране строго ДД.ММ.ГГГГ.
Примеры наименований:
- куртка зимняя;
- костюм летний;
- ботинки защитные;
- перчатки диэлектрические;
- каска защитная;
- жилет сигнальный.
Допущения
- Считаем, что журнал ведётся одним складским пользователем без авторизации и личного кабинета.
- Считаем, что статус записи определяется вручную или по дате возврата в прототипе.
- Считаем, что CSV-выгрузка достаточна как форма «Excel» для прототипа.
- Считаем, что журнал изменений хранится внутри прототипа и виден в отдельном блоке.
- Если платформа потребует серверный режим для сохранения данных, можно перевести прототип на Node-реализацию с временной ссылкой, но это уже будет не постоянная ссылка.
Чего пока нет
- Авторизации и разграничения прав.
- Интеграции с 1С, CRM, корпоративными складами и внешними базами.
- Печати накладных, сканов, штрихкодов и QR-кодов.
- Автоматического расчёта норм выдачи и складских остатков.
- Уведомлений о приближении даты возврата.
- Мобильного приложения и офлайн-синхронизации.