Веб-приложение для мебельной мастерской поможет считать изделия, вести BOM, печатать спецификации и контролировать задачи с допусками и округлениями.

Мебельная мастерская часто живет в таблицах, чатах и распечатках. Пока заказов мало, это терпимо. Потом начинаются мелкие потери: кто-то пересохранил файл, кто-то посчитал кромку по старому размеру, а на распиле выяснилось, что фасады уже в другой версии.
Почти всегда проблема одна: нет единого источника правды по заказу. Офис говорит одно, цех видит другое, монтажники получают третье. Поэтому веб-приложение для мебельной мастерской логичнее строить вокруг BOM и единой спецификации: списка деталей, материалов и работ, который меняется по понятным правилам и хранит историю.
На старте обычно достаточно, чтобы система умела считать стоимость и потребность в материалах по заказу, хранить детали с размерами, кромкой, сверловкой и примечаниями, вести этапы со статусами, печатать формы для цеха и закупки без ручной правки и фиксировать, кто и когда менял параметры.
Простой пример: шкаф-купе пересчитали после нового замера. Если спецификация одна, автоматически обновятся детали, площади ЛДСП, метраж кромки, список фурнитуры и задания на распил и кромление. Если же это разные файлы, обновится только часть, и ошибка всплывет на производстве.
Важно заранее договориться, какие данные всегда одинаковые для офиса и цеха: код заказа, версия, размеры по каждой детали, материал, кромка, фурнитура и статус готовности. Это можно собрать как структуру сущностей и форм, а дальше спокойно наращивать правила и печатные шаблоны без хаоса.
Чтобы веб-приложение для мебельной мастерской реально помогало, стоит с самого начала развести три понятия: BOM, спецификация и шаблоны работ. Они похожи, но отвечают на разные вопросы.
BOM (bill of materials) в мебели - это состав изделия: какие детали нужны, из чего они сделаны и какая фурнитура используется. Это не документ для печати, а «скелет» расчета. В BOM обычно живут позиции вроде: деталь «боковина», материал ЛДСП 16 мм, кромка ПВХ 2 мм, направляющие, петли, крепеж.
Спецификация - это результат, который удобно отдавать в цех и закупку. Она собирается из BOM, но уже с понятными группировками и количеством: сколько листов, сколько метров кромки, сколько штук фурнитуры, что в какой цвет и декор. Спецификация всегда привязана к версии заказа: поменяли размер или фурнитуру - появилась новая версия.
Шаблоны работ - это типовые операции, которые повторяются на каждом заказе: раскрой, кромление, присадка, сборка, упаковка. Шаблон помогает автоматически создавать задачи и считать трудоемкость.
Чтобы не запутаться, удобно хранить отдельно изделие и его модули (например, кухня -> тумба, пенал), деталь (геометрия, кромка, сверления), справочники материалов и фурнитуры (артикулы, нормы), а также операции (шаг работы, норма времени, исполнитель).
Пример: «тумба 600» состоит из 2 боковин, дна, крышки и фасада. BOM хранит детали и материалы, спецификация печатает «ЛДСП: 0,5 листа, кромка 2 мм: 9 м», а шаблон работ создает цепочку задач «раскрой -> кромка -> присадка -> сборка».
Если вы делаете веб-приложение для мебельной мастерской, базу лучше продумать сразу. Тогда расчеты, спецификация и задачи будут сходиться, а не жить в разных таблицах и чатах.
Начните с понятной карточки заказа. В ней важно хранить не только контакты, но и производственный контекст: адрес объекта, желаемые сроки, кто ведет заказ и текущий статус (например: замер, проект, в цеху, монтаж, закрыт). Это станет основой для контроля и отчетов.
Дальше нужна карточка изделия (или модуля): тумба, шкаф, кухня, секция. У изделия храните габариты, вариант исполнения (цвет, декор, тип фасадов), примечания и привязку к заказу. Полезно заложить понятие «вариант/опция», чтобы один и тот же модуль можно было считать по разным материалам или фурнитуре.
Отдельно заведите справочники: материалы (ЛДСП, МДФ, массив), кромка, фурнитура, услуги (раскрой, присадка, покраска, доставка, монтаж), единицы измерения (мм, м2, пог. м, шт), правила округления и минимальные партии (например, кромку считать кратно 1 м), а также пользователи и роли.
Версионирование заложите сразу. Простой вариант: у заказа и у каждого изделия есть номер версии и дата фиксации, а «актуальная версия» помечена флагом. Пример: менеджер поменял толщину ЛДСП и петли, система создала новую версию спецификации, а в цех ушла печать только с пометкой «Версия 3, от 12:40». Старые версии не удаляйте: они нужны, чтобы разбирать спорные моменты и не терять историю.
Смета и спецификация ломаются не из-за сложной математики, а из-за мелочей: где округлять, какой припуск считать нормой, и что делать с нулевыми значениями. Эти правила лучше зафиксировать один раз, а не держать в голове у каждого мастера.
Округления стоит привязывать к типу результата. Размеры деталей обычно округляют до 1 мм, иногда до 5 мм для чернового раскроя. Площадь фасадов или листовых материалов удобно округлять до 0,1 м², чтобы смета не «гуляла» из-за сотых долей.
Допуски лучше хранить отдельными параметрами, а не «вшивать» в формулы. Примеры: зазоры между фасадами, припуск на кромку, допуск на раскрой. При этом система должна ловить ошибки ввода сразу.
Минимальные проверки, которые стоит включить: размер не может быть отрицательным, толщина не может быть 0, материал обязателен для каждой детали, количество не может быть 0, кромка не считается, если ребро выключено.
Для мебели обычно хватает базового набора: площадь (для листов), периметр (для рамок), метраж кромки (по выбранным ребрам), количество крепежа (по шагу или по узлам). Например, для полки 600x400 из ЛДСП вы добавляете припуск 2 мм на раскрой, округляете до 1 мм, затем считаете кромку по двум длинным сторонам и округляете метраж до 0,1 м.
Где хранить правила: часть удобно держать в настройках проекта (общие допуски), часть в шаблоне изделия (например, кухня vs шкаф), часть в типе материала (толщина, стандартные листы).
Хорошее веб-приложение для мебельной мастерской не обязано быть «красивым». Оно должно быстро отвечать на два вопроса: что сейчас в работе и что именно нужно сделать по конкретному заказу.
Ядро интерфейса обычно строится вокруг заказа и его состава. Чаще всего хватает пяти разделов: заказы (карточка, статусы, сроки, клиент), изделия в заказе (кухня, шкаф, тумба), детали и материалы (раскрой, кромка, фурнитура), работы (операции, нормы, исполнители, дедлайны) и печать (спецификация, список на раскрой, ведомость фурнитуры).
На каждом экране нужен обычный CRUD простыми словами: создать, посмотреть, поправить, удалить. Важно, чтобы правка не превращалась в «поиск нужного поля». Лучше одна понятная форма, где видны только те поля, которые реально используют каждый день.
Роли лучше заложить сразу, даже если команда маленькая: владелец (настройки, права, справочники), менеджер (заказ, клиент, сроки, печать), технолог (правила, допуски, состав изделия), мастер (задачи, отметки выполнения), кладовщик (материалы, выдача, остатки).
Чтобы люди не терялись в данных, добавьте поиск и фильтры по статусу, сроку, клиенту и номеру заказа. А для скорости особенно помогают шаблоны изделий и работ, копирование похожего заказа и массовое редактирование (например, сразу поменять материал или кромку у группы деталей).
В мебельной мастерской печатные формы нужны не для красоты. Это способ, чтобы цех, закупка и монтаж видели один и тот же «источник правды», а не переписанные от руки размеры.
Обычно хватает трех типов документов: спецификация деталей (BOM) - что распилить и собрать, ведомость материалов - что купить и сколько, маршрутный лист - какие операции, в каком порядке, кто отвечает.
Чтобы потом не искать «какую именно распечатку согласовали», начните с правильной шапки. В ней должны быть: номер заказа и клиент, дата печати, версия документа (например, V3) и ответственный.
Таблицы держите простыми, но полными: деталь, размеры (Д x Ш x Т), материал, кромка, количество, примечание. Примечание часто спасает: «волокна вдоль», «кромить только лицевую», «зазор 2 мм под фасад». Лучше одна короткая фраза, чем звонок из цеха.
Для печати в цех сделайте отдельный режим: крупный шрифт, минимум полей, без лишних колонок. Полезно сортировать строки не «как ввели», а по операциям: сначала распил, потом кромление, потом присадка.
Заложите экспорт исходных данных (таблица деталей и материалов). Даже если сейчас форма простая, позже вы доработаете шаблон или добавите колонки без ручного переписывания.
Чтобы заказ не расползался по сообщениям и бумажкам, удобнее вести его как цепочку: заказ -> этапы -> задачи -> чек-листы. Заказ отвечает на вопрос «что делаем», этапы - «где мы в процессе», задачи и чек-листы - «что конкретно нужно сделать и проверить».
Практичная структура этапов для мебели часто такая: замер, проектирование, закупка, раскрой, кромка, присадка, сборка, покраска (если есть), доставка, монтаж. Внутри этапа задачи лучше держать маленькими: «снять замер кухни», «утвердить чертежи», «заказать ЛДСП», «раскроить 18 мм белый», «собрать тумбы».
Статусы не стоит усложнять. Обычно хватает четырех: запланировано, в работе, готово, стоп.
Связь задач с BOM экономит время. Например, задача «раскрой» показывает список деталей, их размеры и материал, а задача «закупка» - материалы и фурнитуру с количеством. Тогда мастер не ищет спецификацию отдельно и реже ошибается из-за устаревшей версии.
По срокам достаточно простых напоминаний внутри системы: «сегодня», «завтра», «просрочено». Хорошо работает правило: если задача просрочена, она поднимается выше в списке и требует комментарий.
Фиксация факта важна для разборов и качества. В каждой задаче храните: кто сделал, когда отметил «готово», короткий комментарий и, при необходимости, фото (например, результат замера или узел на монтаже).
Собрать рабочее веб-приложение для мебельной мастерской проще короткими итерациями. Цель первой версии - чтобы заказ считался одинаково у замерщика, конструктора и в цеху, и чтобы документы печатались без ручных правок.
Начните с процессов и документов, которые у вас реально используются: замер, согласование, запуск в производство, закупка, сборка, монтаж. Сразу решите, какие статусы заказа важны и кто их меняет.
Дальше подготовьте базовые справочники и правила: материалы и ЛДСП (толщина, формат листа, цена, остаток), фурнитура (артикул, поставщик, единица, упаковка), операции и нормы времени, правила округления и допуски, единицы измерения и пересчеты (шт, м, м2, лист).
Теперь набросайте структуру BOM и шаблоны работ под типовые изделия: шкаф, кухня, тумба. Важно, чтобы BOM хранил детали, материалы, кромку, сверловку и привязку к операциям.
Перед тестом добавьте базовые защиты от ошибок: обязательные поля, запрет отрицательных количеств, проверку единиц измерения, предупреждения по допускам.
Прогоните 1-2 реальных заказа (например, «шкаф-купе в нишу» и «кухня на 3 метра») и сравните результат с тем, как вы считали раньше. Если цифры расходятся, правьте не данные, а шаблоны и правила округлений. Тогда следующая сотня заказов поедет ровно.
Первая версия учета обычно ломается не из-за «плохой программы», а из-за мелких правил, которые никто не зафиксировал. В мебели эти мелочи быстро превращаются в лишние листы ЛДСП, неверные кромки и сорванные сроки.
Чаще всего встречается пять проблем.
Первая: единицы измерения живут «в голове». Где-то длина в мм, где-то в метрах, а погонные метры и штуки смешаны в одной колонке. Через неделю никто уже не помнит, почему у фасада «0,6».
Вторая: спецификация без версии. Менеджер поправил размеры, а в цех ушла старая распечатка. Потом вы спорите, кто виноват, хотя виновата система, которая не умеет фиксировать состояние.
Третья: карточка детали перегружена. Когда полей 25 «на всякий случай», перестают заполнять даже важное, и BOM превращается в набор пустых строк.
Четвертая: округления не совпадают. В расчете кромка округляется вверх до 0,1 м, а в печатной форме - до 1 см или «как получится». На складе и в закупке цифры начинают расходиться.
Пятая: правки идут в обход учета. Мастер пишет в мессенджере «замени петли», монтажник говорит «добавь добор», а в системе ничего не меняется. Потом отчеты и фактические затраты не сходятся.
Хорошая привычка - сделать правила видимыми: единицы по умолчанию, допустимые шаги, кто может менять спецификацию, и что считается «финальной» версией для производства. Например: есть версия «v3 (в производство)» - печать всегда берет именно ее, а изменения создают «v4 (черновик)».
Перед тем как запускать учет всерьез, полезно сделать короткую проверку на реальном заказе (лучше на том, где уже были ошибки или переделки).
Проверьте пять вещей.
Заказ и статусы понятны всем. У заказа один номер (без дублей в мессенджерах и тетрадях), а статусы не пересекаются. Если статус нельзя объяснить одним предложением, его лучше заменить.
Справочники не размножаются. Материалы, кромка, фурнитура и операции заведены единообразно. «Петля Blum 110°» не встречается в трех вариантах с разным написанием.
Три быстрых расчета дают ожидаемый результат: площадь (например, фасады), кромка (периметр и стороны оклейки), фурнитура (количество петель и крепежа по правилам). Сверьте цифры с тем, как считает мастер вручную.
Округления и допуски живут в одном месте и применяются одинаково в расчетах, спецификации и печати.
Печать и откат не подводят. Форма помещается на лист, читается без лупы и понятна мастеру: что резать, чем кромить, сколько штук. И важно, чтобы можно было вернуться к прошлой версии заказа при ошибке.
Если два пункта подряд не проходят, не добавляйте новые функции. Сначала договоритесь о названиях, правилах расчета и форме печати, и только потом расширяйте учет.
Возьмем простой, но жизненный заказ: кухня из двух модулей. Первый модуль 600 мм под мойку, второй 400 мм с двумя ящиками. Фасады разные: на мойку распашной, на ящики - два фасада. Кромка тоже разная: ПВХ 2 мм по видимым кромкам и 0,4 мм по скрытым.
В системе вы заводите заказ, выбираете шаблон изделия (модуль 600 и модуль 400) и заполняете параметры: ширина, высота, глубина, материал корпуса, тип фасада, вид кромки. Дальше BOM собирается автоматически: детали корпуса (боковины, дно, полка, царги), фасады, фурнитура (петли или направляющие, ручки), метраж кромки.
Дальше важны правила. На раскрой добавляется припуск, например +2 мм по длине и ширине на последующую кромку и подгонку. Для фасадов задается зазор, например 2 мм между фасадами и 2 мм от фасада до корпуса. А кромка часто округляется: метраж по каждой детали суммируется и округляется до 0,1 м или до целых метров по рулону.
Шаблон работ превращается в задачи без ручного разбрасывания: раскрой деталей корпуса и фасадов, кромление (2 мм и 0,4 мм как разные операции), присадка (петли, направляющие, стяжки), сборка модулей, контроль и упаковка.
Когда данные совпали, печать становится понятной. Обычно делают два документа: спецификацию для цеха (список деталей с размерами, кромкой, количеством, пометками по присадке) и список материалов для закупки (ЛДСП по листам, фасадный материал, кромка по типам, фурнитура по позициям).
Прототип начинает приносить пользу, когда им пользуются каждый день и доверяют цифрам. Для этого важнее не «доделать все», а зафиксировать правила и запустить одну рабочую цепочку без ручных обходов.
Соберите короткое ТЗ на 1-2 страницы. Не про экраны, а про смыслы: какие изделия типовые, какие документы реально печатают, кто и когда вводит данные, какие есть правила допусков и округлений. Примеры формулировок: «кромка считается с запасом 30 мм», «площадь ЛДСП округлять до 0,01», «фурнитуру считать по норме на секцию». Это снимает большую часть споров «в цеху другое получилось».
Дальше запустите одну связку: заказ -> спецификация -> печать. Обычно лучше всего работает такой порядок: возьмите 1 типовой заказ и проведите его целиком от расчета до печати, сравните спецификацию с «ручным» расчетом и поправьте формулы и допуски, зафиксируйте роли (кто может менять спецификацию, кто только печатает), добавьте статусы и ответственность только для шагов, которые уже есть в реальном процессе.
Если вы собираете приложение на TakProsto (takprosto.ai), удобно начать с сущностей, форм и ролей, а затем постепенно дополнять правила расчета и печатные шаблоны. Когда первая цепочка стала надежной, добавляйте задачи, склад и закупки по одной функции за итерацию - так вы не потеряете контроль и быстрее увидите эффект в производстве.
Начните с «единого источника правды» по заказу: одна карточка заказа и одна актуальная версия спецификации. Даже если функций мало, важно, чтобы офис, цех и монтаж видели одинаковые размеры деталей, материал, кромку, фурнитуру и статус готовности.
BOM — это «скелет» изделия: какие детали, материалы и фурнитура входят в состав, чтобы система могла считать. Спецификация — это удобный результат для цеха и закупки: сгруппированные количества, метраж, листы, позиции по типам и версиям заказа.
Минимум — геометрия (Д×Ш×Т), материал, количество, кромка по ребрам, примечание и, при необходимости, сверловка/присадка. Лучше добавить 8–12 реально используемых полей и заставить их заполнять, чем держать 25 «на будущее» и получить пустые строки.
Делайте версии на уровне заказа и изделия: при изменении размеров, материала или фурнитуры создавайте новую версию спецификации, а старую сохраняйте. В печать и в производство должна уходить только явно отмеченная «актуальная» версия с номером и временем фиксации.
Зафиксируйте правила округления и допусков в одном месте и применяйте их одинаково в расчете и печати. Обычно размеры округляют до 1 мм, площади — до удобного шага для сметы, а кромку — до выбранного шага учета (например, до 0,1 м) и только по включенным ребрам.
Начните с простых валидаторов: размер и толщина не могут быть нулевыми или отрицательными, материал обязателен, количество больше нуля, единицы измерения строго заданы. Это отсекает большинство «тихих» ошибок, которые всплывают уже на распиле или закупке.
Хватает пяти разделов: заказы, изделия/модули, детали и материалы, работы/задачи, печать. Внутри держите обычный CRUD и быстрые фильтры по статусу и срокам, чтобы в два клика понять, что сейчас горит и что конкретно делать по заказу.
Достаточно трех документов: спецификация деталей для цеха, ведомость материалов для закупки, маршрутный лист по операциям. В шапке всегда печатайте номер заказа, дату, версию и ответственного, чтобы любую распечатку можно было однозначно привязать к состоянию заказа.
Задачи лучше строить как цепочку этапов от замера до монтажа и привязывать их к BOM и спецификации. Тогда «раскрой» показывает детали и материал, а «закупка» — позиции и количества, и людям не приходится сверять разные файлы и переписки.
Возьмите один типовой заказ и проведите его целиком: заказ → BOM → спецификация → печать, сравните с ручным расчетом и поправьте именно правила, а не числа «в строках». В TakProsto удобно начать с сущностей, форм и ролей, а затем добавлять формулы, проверки, печатные шаблоны и откат версий по одной функции за итерацию.