Сорок пять разделов вместо разрозненных таблиц и переписки. Ядро системы это сборка персонального плана, которую специалист делал руками.
Заказы, подписки, склад, закупки и деньги жили в разных местах. Сходились они только в голове у нескольких человек, а каждый отчёт собирали руками.
Одна система с разделением прав: у каждой роли свой раздел и свои доступы. Отчёты собираются сами, история изменений сохраняется целиком.
Остальные разделы закрываются привычными средствами. Отдельно пришлось строить один участок: сборку персонального плана. Ниже три развилки и то, во что обошлась бы каждая, если выбрать не ту сторону.
цена ошибкинарушенный запрет это ущерб человеку на той стороне, а не испорченное впечатление
Промах в предпочтении неприятен, и его переживают. Нарушенный жёсткий запрет это событие другого веса, и разбираться с ним будет уже не служба поддержки.
Поэтому запреты вынесены наружу, в справочник. Они проверяются кодом и до сборки, и после неё, а вариант, нарушивший хотя бы один, наружу не выходит вообще.
цена ошибкичеловек правит выдачу руками, и автоматизация не экономит ничего
Свободная сборка даёт дубли внутри одного дня, перекос по одному компоненту на всю неделю и пустые места там, где их быть не должно.
Формулировку запроса мы улучшать не стали. После сборки идёт проверка по правилам, написанным кодом: если что-то не сошлось, запрос уходит обратно с указанием, что именно. До пяти кругов, дальше вариант считается несобравшимся и передаётся человеку.
цена ошибкиповтор замечает человек на той стороне, и замечает раньше нас
Человек видит, что одно и то же повторяется неделя за неделей. Система сама этого не увидит: прошлого раза она не помнит.
Историю храним мы. Недавнее исключается, более раннее понижается в приоритете, а на частоту одного компонента стоит потолок, записанный правилом.
Посмотрим, что из этого переносится на ваш процесс, и покажем рабочий прототип до оплаты.
Обсудить задачу