Краткий ответ
Кабинет должен показывать согласованные с источником данные и объяснять клиенту их смысл: состояние заказа, время актуальности, доступные действия и документы. Внутренние коды преобразуют в понятные статусы, сохраняя различие между отсутствием данных, ожиданием и технической ошибкой.
Определите, какие вопросы решает экран
Клиент открывает кабинет, чтобы узнать, принят ли заказ, что требуется от него и где получить документ. Внутренняя учётная карточка может содержать десятки полей, не отвечающих на эти вопросы. Начните с задач пользователя и составьте минимальный набор сведений для каждого состояния. Не переносите служебные коды в интерфейс без объяснения.
Разделите заказ, оплату, отгрузку и документ. Они связаны, но могут иметь независимые состояния. Оплаченный заказ ещё не обязательно отгружен, а сформированный счёт не подтверждает оплату. Если объединить всё в единственную надпись «готово», клиент сделает неверный вывод. Модель должна сохранять нужные различия и показывать следующий шаг.
Сопоставьте внутренние и клиентские статусы
| Событие или состояние | Что сообщить клиенту | Возможное действие |
|---|---|---|
| Обращение сохранено | Запрос принят | Посмотреть содержание |
| Требуется уточнение | Какие данные отсутствуют | Дополнить ответ |
| Подготовлен документ | Название и версия доступны | Открыть или скачать |
| Данные обновляются | Сведения временно отстают | Повторить позже или связаться |
| Операция отклонена | Понятная причина в допустимом объёме | Исправить условие |
Это пример словаря, а не готовые статусы любой учётной системы. Для каждого значения укажите источник, условие отображения и приоритет. Если несколько событий приходят одновременно, определите итоговый текст. Неизвестный код должен попадать в диагностику, а не автоматически превращаться в успешное завершение.
Покажите актуальность честно
Кабинет может читать данные напрямую или получать копию через обмен. Во втором случае определите допустимую задержку и способ сообщить о существенном отставании. Время последнего просмотра не равно времени последнего обновления источника. Подпись должна отражать именно тот факт, который она обещает пользователю.
При ошибке загрузки не заменяйте заказ пустым состоянием «у вас пока ничего нет». Отсутствие записей и недоступность системы требуют разных сообщений. Если показываются ранее полученные данные, обозначьте ограничение и запретите опасные действия по устаревшему состоянию. Правила обмена фиксируются в карте полей и статусов.
Организуйте документы по назначению
Для файла нужны понятное название, связь с заказом, версия и доступность. Если документ заменён, объясните, какая версия действующая и что происходит со старой. Не оставляйте клиенту несколько одинаково названных файлов без контекста. Для больших списков нужны сортировка и поиск по признакам, которыми человек действительно пользуется.
Проверяйте доступ к файлу независимо от страницы заказа. Правила организации и роли распространяются на скачивание и массовую выгрузку. Публичная постоянная ссылка может обходить ограничение интерфейса. Сценарии чужой записи и отзыва подробно описаны в материале о правах B2B-кабинета.
Свяжите действия с состояниями
Кнопка изменения заказа доступна только там, где процесс допускает изменение. Сервер повторно проверяет условие в момент действия: состояние могло поменяться после открытия страницы. Если операция уже невозможна, покажите новый статус и допустимый следующий шаг. Не сообщайте об успехе на основании одного нажатия.
История помогает объяснить последовательность, но не должна раскрывать внутренние заметки сотрудников без необходимости. Отберите события, полезные клиенту: приём, запрос уточнения, изменение согласованного условия, готовность документа. Для каждого укажите время и понятный текст. Технические повторные попытки интеграции остаются в служебном журнале.
Учебный пример задержанного обмена
Учётная система подтверждает готовность документа, но файл поступает позже статуса. Кабинет показывает, что документ подготавливается, а не выдаёт сломанную ссылку. После успешной загрузки появляется доступное скачивание с нужной версией. Если задержка превышает согласованный предел, оператор получает сигнал.
Проверка включает позднее старое событие, неизвестный статус, пустую историю и отзыв доступа сотрудника клиента. Сверьте интерфейс с источником на каждом шаге. Один успешный просмотр заказа не доказывает корректность всех состояний. Для связанных товарных данных полезен порядок синхронизации цен и остатков.
Как оценивать готовность кабинета
Клиент без звонка понимает состояние и своё действие, а сотрудник способен объяснить происхождение данных. Ошибки не маскируются отсутствием записей, документы имеют версии и проверенный доступ. Такой кабинет действительно поддерживает самообслуживание, если его сведения остаются актуальными и согласованными с рабочим процессом.
Как показывать документ, который заменён новой версией
Привяжите документ к заказу, типу и версии. Если счёт пересоздан, старый файл не должен выглядеть действующим только потому, что ссылка всё ещё открывается. Покажите актуальную версию и при необходимости доступную историю с понятными статусами.
Проверьте сохранённую прямую ссылку, повторное скачивание и отзыв прав клиента. Имя файла само по себе не обеспечивает ни актуальность, ни защиту. Для задержки формирования сообщите ожидаемый следующий шаг без выдуманного точного срока. В поддержке должны находиться тот же ID и состояние документа, которые видит клиент: иначе один и тот же вопрос будет разбираться заново при каждом обращении.
Термины из материала
Применить к вашему проекту
Спроектируем кабинет с понятной историей заказов и согласованными данными из ваших систем.
Обсудить задачу