
📍Skutr Docs — День 12. Мультиорганизации
Вчера — юридическая точность промптов и мобильная адаптация. Сегодня — фрилансер перестал быть привязан к одному ИП.
—
🏢 Организации — отдельная сущность
Раньше реквизиты хранились в профиле пользователя. Одно ИНН, одно название, один расчётный счёт. Но фрилансер может быть самозанятым Ивановым И.И. для мелких заказов и ИП Иванов для крупных. Или закрыть ИП и перейти на самозанятость — а старые документы должны остаться с прежними реквизитами.
Вынес организации в отдельную таблицу. 12 полей, связь 1:N с пользователем, флаг «по умолчанию». Миграция перенесла существующие данные из профиля в первую организацию автоматически — ни один пользователь ничего не потерял.
CRUD API, страница управления в кабинете, выбор организации во всех четырёх формах документов. Бот: «Мои реквизиты» стали «Мои организации» — список с ⭐️ у основной, добавление новых, переключение между ними.
—
🔀 Выбор организации при создании документа
Если организация одна — всё работает как раньше, пользователь ничего не замечает. Если две и больше — перед созданием счёта, акта, КП или договора появляется шаг «Выберите организацию-исполнителя» с inline-кнопками.
Выбранная организация прокидывается в генератор и записывается в документ.
Архитектурно: _maybe_choose_org() — единый хелпер для всех четырёх FSM. Один паттерн, четыре точки вызова, ноль дублирования.
—
✏️ Редактирование всех документов в кабинете
Счета и акты можно было редактировать после создания. КП и договоры — только при создании в модалке превью. После сохранения — read-only. Почему? Потому что canEdit проверял только invoice и act.
Перенёс полную логику редактирования из модалки в страницу документа. КП: заголовок, введение, секции с пунктами, стоимость по позициям с автоподсчётом, срок действия, следующие шаги. Договор: преамбула, секции с параграфами (добавление/удаление), сумма. Теперь документ, созданный голосом в боте в 2 часа ночи, можно спокойно отредактировать утром в кабинете.
—
🧹 Три мелочи, которые раздражали
Бейджи без подписи. Документы из бота через «быстрые документы» создавались с source="quick". Фронтенд знал только "bot" и "web". 27 документов висели без метки. Поменял на "bot", обновил существующие одним UPDATE.
Навигация назад. Заходишь в раздел «Счета», открываешь конкретный счёт, нажимаешь «К документам» — попадаешь в «Все». Теперь кнопка говорит «К счетам» и возвращает в раздел счетов. Query-параметр ?tab=invoice — просто и надёжно.
Поиск в боте. Кнопка «🔍 Поиск документа» в «Мои документы». При этом документы уже разбиты по разделам, а в кабинете — полноценный поиск с фильтрами. Убрал. Меньше кнопок — меньше когнитивной нагрузки.
—
💡 Инсайт дня
Мультиорганизации — это не фича для корпораций. Это реальность фриланса. Самозанятый открывает ИП — и ему нужны оба набора реквизитов. Дизайнер работает как физлицо для российских клиентов и как ИП для зарубежных. Если продукт привязывает человека к одному юрлицу — он не понимает свою аудиторию.
—
🎯 Итого за день: модель Organization с CRUD API и миграцией, выбор организации в боте при 2+ орг, полное редактирование КП и договоров в кабинете, фикс бейджей source, навигация по табам, чистка UI.
—
#buildinpublic #skutrdocs #AI #фриланс #самозанятые #стартап #SaaS #продукт #UX
Комментарии
0Комментариев пока нет.
Войдите, чтобы участвовать в обсуждении.