Исходное описание
« Я держу мастерскую по ремонту садовой техники. Я веду склад запчастей: у каждого артикула есть референс, закупочная цена и порог оповещения, и он привязан к поставщику. Склад пополняется приходом, когда приходит заказ поставщику, и расходуется, когда деталь идёт на ремонт. Я хочу видеть общую стоимость склада, артикулы ниже порога оповещения и движения за месяц. »
План, утверждённый перед генерацией
Прежде чем написать хоть строку, Blueprint Maker переводит это описание в план, который утверждают. Для StockAtelier предложенный план умещается на одном экране: четыре сущности — Артикул, Поставщик, Складское движение, Заказ поставщику — и их связи: артикул принадлежит поставщику, движение касается артикула, заказ группирует строки артикулов.
Выведенные из текста статусы также появляются в плане: движение — это приход или расход; заказ поставщику проходит черновик, отправлен, получен. Три запрошенных показателя (стоимость склада, артикулы ниже порога, движения за месяц) прописаны чёрным по белому. Если чего-то не хватает или лишнее — правят здесь; что генерируется, то и было объявлено.
- Сущности: Артикул, Поставщик, Складское движение, Заказ поставщику
- Связи: артикул → поставщик; движение → артикул; строка заказа → артикул
- Статусы: приход / расход; черновик / отправлен / получен
- Показатели: стоимость склада, артикулы ниже порога, движения за 30 дней
Навигация: один раздел на сущность
Сгенерированное приложение открывается сдержанной боковой панелью: Панель, Артикулы, Поставщики, Движения, Заказы. Каждый раздел ведёт к списку — не к таблице, а к настоящему списку приложения: поле поиска сверху, сортируемые по клику столбцы, постраничная навигация.
Список артикулов показывает референс, название, поставщика, количество на складе, закупочную цену с выравниванием вправо в денежном формате и порог оповещения. Артикул, упавший ниже порога, сразу бросается в глаза. Со стороны движений фильтр по типу (приход / расход) и сортировка по дате возвращают историю в два клика.
Карточка артикула, с его историей
Клик по «Ремень GX-390» открывает его карточку: референс, поставщик (кликабелен, ведёт к карточке поставщика), закупочная цена, количество на складе, порог оповещения. Ниже идёт часть, которая меняет всё по сравнению с таблицей: история движений ЭТОГО артикула в датированной таблице — 12 марта, приход 20 единиц при получении заказа CF-2024-018; 27 марта, расход 2 единиц.
Эта привязка не косметическая: она исходит из сгенерированной реляционной базы. Переименование артикула переименовывает его везде, а отображаемое количество вытекает из движений — ничего не переписывается вручную.
Внесение складского движения
Форма «Новое движение» короткая, потому что работу делает структура: артикул выбирается из выпадающего списка (никакого референса, набранного вручную, значит и опечаток нет), тип — это выбор приход / расход, количество — числовое поле, дата предзаполнена сегодняшним днём, а поле комментария принимает контекст («ремонт газонокосилки г-на Bernard»).
При сохранении список движений, карточка артикула и панель отражают внесённое — это одна и та же база для всех экранов.
Панель: цифры из питча, рассчитанные по базе
Панель повторяет ровно те показатели, что запрошены в описании: общую стоимость склада в евро (сумма количеств × закупочных цен), число артикулов ниже их порога оповещения, объём движений за 30 дней и разбивку склада по поставщикам.
Эти цифры — запросы к базе, а не ручной ввод: каждый зафиксированный приход или расход их обновляет. Простой график сопровождает плитки — динамика движений за последние недели — без театральности: цель в том, чтобы каждое утро отвечать на вопросы, поставленные в питче.
Демоданные: судить по заполненным экранам
StockAtelier приходит заполненным: несколько месяцев смоделированной жизни, около тридцати артикулов с правдоподобными названиями (ремни, свечи, ножи, воздушные фильтры), четыре поставщика, заказы на всех стадиях и движения, распределённые во времени — в том числе, намеренно, несколько артикулов ниже их порога, чтобы увидеть работу оповещения.
Это осознанный выбор: инструмент управления не оценивают по пустым таблицам. Затем демоданные удаляются, освобождая место реальным. Приложение живёт по своему выделенному URL, а его полный исходный код экспортируется (ZIP или push в GitHub) — стандартный Next.js + Prisma.