ПРАКТИЧЕСКИЙ РАЗБОР
Бизнес-логика: правила, статусы и права
Как описать проверки и переходы процесса, чтобы AI, сотрудники и фоновые задачи работали по согласованным правилам.
Зафиксировать допустимые действия
Бизнес-логика описывает, что система разрешает делать с данными. Какие поля обязательны для заказа? Кто может его подтвердить? Из какого статуса разрешён переход в работу? Эти вопросы нужно согласовать с владельцем процесса до реализации, иначе разные экраны и интеграции начнут принимать разные решения.
Для определённых входных данных и одинакового состояния правила должны давать предсказуемый результат. Например, заказ без обязательного документа можно сохранить как черновик, но не передавать исполнителю. Это пример проектного решения: конкретные ограничения зависят от вашего процесса.
Проверять на стороне сервера
Подсказка в форме помогает сотруднику, однако проверка должна применяться и к запросам из CRM, мобильного приложения и автоматизации. Сервер становится местом, где проверяются права, актуальное состояние записи и допустимость изменения.
Практически полезно разделить проверку формата, проверку бизнес-условий и право выполнить действие. Корректно записанная дата ещё не означает, что этот срок согласован. Наличие кнопки на экране не означает, что пользователь имеет право подтвердить заказ.
Разобрать переход на примере
Возможный процесс: сотрудник создаёт черновик, AI предлагает данные из документа, человек исправляет спорные поля. Затем правила проверяют полноту и разрешают подтверждение. Воркер отправляет подтверждённые данные в следующую систему.
Отдельно опишите исключения: документ изменился после проверки, два сотрудника редактируют запись, внешняя система отклоняет отправку. Для каждого случая нужен видимый статус и понятное действие. Сохраняйте причину отказа в форме, пригодной для работы сотрудника; одной технической ошибки недостаточно.
Перенести правила в рабочую систему
Начните с таблицы состояний, ответственных и допустимых переходов. Посмотрите внутренние системы, CRM-интеграции и проект Dent-Picks. Опишите процесс и его исключения, чтобы обсудить реализацию.