Update TZ request to order flow

This commit is contained in:
Ruslan Bakiev
2026-05-15 19:53:12 +07:00
parent d3f56efac1
commit 0ce037df6e

View File

@@ -87,7 +87,7 @@
Продукт должен объединять клиентский, менеджерский, административный и интеграционный контуры в единой веб-системе. Подробный состав функций, ролей, данных, интерфейсов и интеграций установлен в последующих разделах настоящего технического задания.
Объектом автоматизации являются процессы предоставления B2B-клиентам доступа к актуальным учетным данным по заказам, статусам, составу заказов, условиям, балансу и задолженности.
Объектом автоматизации являются процессы клиентского взаимодействия по заявкам и заказам: ознакомление клиента с продуктовой онтологией, формирование заявки в личном кабинете, обработка заявки менеджером, привязка заявки к заказу 1С и дальнейшее отображение актуальных учетных данных по заказам, статусам, составу, условиям, балансу и задолженности.
== Границы продукта
@@ -111,7 +111,8 @@
- выполнения функций публичного B2C-магазина
- прямого редактирования клиентом внутренних бизнес-правил компании
- замены учетной системы 1С как первичного источника учетных данных
- предоставления клиенту каталога продукции, складских остатков, корзины или самостоятельного оформления заказа через личный кабинет
- синхронизации и отображения складских остатков в личном кабинете
- самостоятельного оформления клиентом учетного заказа без участия менеджера и без создания заказа в 1С
== Пользовательские контуры
@@ -122,19 +123,22 @@
- менеджерский контур
- административный контур суперменеджера
Клиентский контур предназначен для просмотра клиентом своих заказов, состава заказов, статусов, условий, баланса, задолженности, уведомлений и бонусного кабинета.
Клиентский контур предназначен для просмотра продуктовой онтологии, формирования заявки, просмотра своих заявок и связанных с ними заказов, состава заказов, статусов, условий, баланса, задолженности, уведомлений и бонусного кабинета.
Менеджерский контур предназначен для создания и подтверждения клиентских кабинетов, отправки приглашений, сопровождения клиентов, просмотра данных клиента и работы с бонусными операциями.
Менеджерский контур предназначен для создания и подтверждения клиентских кабинетов, отправки приглашений, обработки заявок, привязки заявок к заказам 1С, сопровождения клиентов, просмотра данных клиента и работы с бонусными операциями.
Административный контур предназначен для управления пользователями, уведомлениями, интеграционными параметрами и отдельными сервисными настройками системы.
Административный контур предназначен для управления пользователями, продуктовой онтологией, уведомлениями, интеграционными параметрами и отдельными сервисными настройками системы.
== Основные принципы работы
- доступ к функциям и данным определяется ролью пользователя
- клиент работает только в пределах собственных данных и данных своего контрагента
- клиентский кабинет создается менеджером на основании ИНН и ОГРН/ОГРНИП
- клиент может сформировать заявку на основании продуктовой онтологии личного кабинета
- заявка, созданная в личном кабинете, хранится и отображается клиенту до момента привязки к учетному заказу 1С
- после появления и привязки заказа 1С заявка отображается как связанная с реальным заказом, а учетные сведения обновляются из 1С
- данные из 1С загружаются только для клиентов, уже созданных и подтвержденных в личном кабинете
- история изменений по заказам и бонусным операциям фиксируется в системе
- история изменений по заявкам, заказам и бонусным операциям фиксируется в системе
- сведения о заказах, составе заказов, статусах, условиях, балансе и задолженности обновляются из 1С
= Функциональные требования
@@ -163,22 +167,64 @@
== Требования к главной странице клиента
После входа клиент должен видеть сводку по своей компании без каталога продукции и без сценария оформления заказа.
После входа клиент должен видеть сводку по своей компании, последние заявки, связанные заказы, баланс или задолженность и переход к продуктовому конструктору заявки.
Функциональные требования:
+ Система должна отображать краткую информацию о клиентской организации.
+ Система должна отображать текущий баланс или задолженность, если такие сведения получены из 1С.
+ Система должна отображать дату актуальности баланса или задолженности.
+ Система должна отображать последние заявки клиента и их текущие состояния.
+ Система должна отображать последние заказы клиента и их текущие статусы.
+ Система должна предоставлять переход к созданию новой заявки через продуктовый конструктор.
+ Система должна предоставлять переход к полному списку заказов и карточке конкретного заказа.
+ Система должна отображать уведомления, связанные с заказами, балансом, задолженностью и бонусными операциями.
+ Система не должна отображать клиенту каталог продукции, складские остатки, корзину или форму создания заказа.
+ Система не должна отображать клиенту складские остатки или форму самостоятельного создания учетного заказа.
== Требования к продуктовой онтологии и конструктору заявки
Система должна предоставлять клиенту справочник продуктовых направлений и конструктор заявки. Конструктор предназначен для описания потребности клиента и не является складским каталогом, корзиной интернет-магазина или механизмом самостоятельного оформления заказа.
Функциональные требования:
+ Система должна отображать список продуктовых направлений, доступных для ознакомления и формирования заявки.
+ Для каждого продуктового направления система должна отображать описание, применимые параметры и допустимые варианты выбора.
+ Система должна позволять клиенту выбрать параметры и сформировать заявку.
+ Система должна позволять клиенту указать количество, комментарий и иную информацию, необходимую менеджеру для обработки заявки.
+ Система не должна отображать клиенту складские остатки и не должна обещать наличие продукции на складе.
+ Система не должна рассчитывать финальную стоимость автоматически, если стоимость должна определяться менеджером или учетной системой.
+ Продуктовая онтология должна администрироваться в системе и не должна зависеть от синхронизации складских остатков из 1С.
== Требования к заявкам клиента
Заявка является сущностью личного кабинета и фиксирует потребность клиента до создания или привязки учетного заказа в 1С.
Функциональные требования:
+ Клиент должен иметь возможность создать заявку на основании продуктового конструктора.
+ Система должна сохранять состав заявки, выбранные параметры, количество, комментарий клиента и дату создания.
+ Заявка должна отображаться клиенту до момента привязки к заказу 1С.
+ Менеджер должен видеть список заявок клиентов и карточку каждой заявки.
+ Менеджер должен иметь возможность обработать заявку и связать ее с заказом 1С по номеру или внешнему идентификатору заказа.
+ До привязки к заказу 1С заявка должна отображаться как заявка личного кабинета, а не как учетный заказ.
+ После привязки к заказу 1С карточка заявки должна отображать связь с заказом и актуальные учетные сведения, полученные из 1С.
+ Если при очередной синхронизации из 1С пришел заказ, связанный с заявкой, система должна аккуратно заменить или расширить отображение заявки данными реального заказа.
Для заявки должны поддерживаться следующие базовые состояния:
- создана
- направлена менеджеру
- в обработке
- связана с заказом 1С
- закрыта
- отменена
== Требования к заказам и их сопровождению
Система должна предоставлять клиенту и менеджеру доступ к списку заказов, карточке каждого заказа и актуальным учетным сведениям, полученным из 1С.
Система должна предоставлять клиенту и менеджеру доступ к списку заказов, карточке каждого заказа и актуальным учетным сведениям, полученным из 1С. Заказ и заявка являются разными сущностями: заявка создается в личном кабинете, заказ является учетной сущностью 1С.
Функциональные требования:
@@ -191,6 +237,8 @@
+ Система должна отображать текущую задолженность клиента, если такие сведения получены из 1С.
+ Для задолженности должна отображаться дата актуальности данных.
+ Система должна показывать только заказы, сопоставленные с подтвержденной клиентской карточкой по ИНН и ОГРН/ОГРНИП.
+ Система должна поддерживать связь заказа 1С с заявкой личного кабинета, если такая связь установлена менеджером или определена по согласованному идентификатору.
+ После привязки заказа к заявке клиент должен видеть единый пользовательский сценарий: исходную заявку, номер заказа 1С, состав, статус, стоимость, условия и историю обновлений.
== Требования к уведомлениям
@@ -206,6 +254,9 @@
Система должна поддерживать уведомления по следующим событиям:
- приглашение к подключению
- создание заявки клиентом
- изменение состояния заявки
- привязка заявки к заказу 1С
- изменение статуса заказа
- обновление сведений по заказу
- изменение баланса или задолженности
@@ -234,6 +285,7 @@
Система должна содержать административные разделы для управления следующими объектами:
- продуктовой онтологией и параметрами конструктора заявки
- шаблонами уведомлений
- параметрами синхронизации
- отдельными настройками бонусного контура
@@ -261,6 +313,9 @@
- просмотр и изменение разрешенных профильных данных
- подключение доступных каналов уведомлений
- просмотр сводки по компании
- просмотр продуктовой онтологии и конструктора заявки
- создание заявки
- просмотр списка и карточки заявок
- просмотр баланса или задолженности
- просмотр списка заказов
- просмотр карточки заказа, состава заказа, статуса и истории изменений
@@ -278,6 +333,8 @@
- создание и подтверждение клиентской карточки по ИНН и ОГРН/ОГРНИП
- назначение ответственного сопровождения
- отправка персонального приглашения клиенту
- просмотр и обработка заявок клиентов
- привязка заявки к заказу 1С по номеру или внешнему идентификатору
- просмотр карточек клиентов и заказов
- просмотр баланса, задолженности и истории заказов клиента
- контроль сопоставления данных из 1С с подтвержденными клиентскими карточками
@@ -291,6 +348,7 @@
Суперменеджеру должны быть доступны следующие действия:
- доступ ко всем клиентам и заказам
- управление продуктовой онтологией и параметрами конструктора заявки
- управление настройками уведомлений
- управление параметрами интеграции и синхронизации
- расширенное управление бонусным и реферальным контуром
@@ -324,6 +382,22 @@
[Да],
[Да],
[Да],
[Просмотр продуктовой онтологии],
[Да],
[Да],
[Да],
[Создание заявки],
[Да],
[Нет],
[Нет],
[Обработка заявки],
[Нет],
[Да],
[Да],
[Привязка заявки к заказу 1С],
[Нет],
[Да],
[Да],
[Создание клиентской карточки],
[Нет],
[Да],
@@ -361,7 +435,7 @@
- доступ клиента только к данным собственного контрагента
- ограничение административных функций в соответствии с ролью
- журналирование значимых пользовательских действий
- хранение истории изменения статусов заказов и бонусных операций
- хранение истории изменения состояний заявок, статусов заказов и бонусных операций
= Требования к данным и сущностям
@@ -376,6 +450,8 @@
- пользователей и ролей
- компаний и профилей контрагентов
- адресов доставки
- продуктовой онтологии и параметров конструктора заявки
- заявок клиента и состава заявок
- заказов, полученных из 1С
- состава заказов
- событий изменения статусов
@@ -414,9 +490,18 @@
[MessengerConnection],
[Подключение мессенджера],
[Связка пользователя с Telegram или MAX],
[ProductType],
[Продуктовое направление],
[Онтология продукции для конструктора заявки],
[Request],
[Заявка],
[Заявка клиента, созданная в личном кабинете],
[RequestItem],
[Позиция заявки],
[Состав и параметры заявки],
[Order],
[Заказ],
[Заказ клиента, полученный из 1С],
[Заказ клиента, полученный из 1С и связанный с заявкой при наличии связи],
[OrderItem],
[Позиция заказа],
[Состав заказа],
@@ -444,6 +529,7 @@
- UserRole: CLIENT, MANAGER, SUPER_MANAGER
- RegistrationStatus: PENDING, APPROVED, REJECTED
- MessengerType: TELEGRAM, MAX
- RequestStatus: CREATED, SENT_TO_MANAGER, PROCESSING, LINKED_TO_1C_ORDER, CLOSED, CANCELED
- OrderStatus: NEW, MANAGER_PROCESSING, WAITING_DOUBLE_CONFIRM, CLIENT_REJECTED, MANAGER_REJECTED, MANAGER_BLOCKED, CONFIRMED, IN_PROGRESS, COMPLETED
- WithdrawalStatus: PENDING, APPROVED, REJECTED
@@ -480,7 +566,7 @@
Назначение:
- хранение клиентской, менеджерской или административной учетной записи
- связывание пользователя с компанией, заказами, бонусами и адресами
- связывание пользователя с компанией, заявками, заказами, бонусами и адресами
Основные поля:
@@ -498,6 +584,7 @@
- пользователь может быть связан с компанией
- пользователь может иметь профиль контрагента
- пользователь может иметь адреса доставки
- пользователь может создавать заявки
- пользователь может выступать клиентом или менеджером в заказах
- пользователь может иметь бонусные операции и заявки на вывод
@@ -566,6 +653,8 @@
- token
- email
- companyName
- inn
- ogrn
- managerId
- acceptedById
- expiresAt
@@ -594,7 +683,86 @@
- isActive
- createdAt
== Заказы и данные из 1С
== Продуктовая онтология, заявки и данные из 1С
=== ProductType
Русское наименование: Продуктовое направление
Назначение:
- хранение продуктовой онтологии для ознакомления клиента
- хранение набора параметров, доступных в конструкторе заявки
- описание того, что клиент может запросить у менеджера
Основные поля:
- id
- code
- name
- description
- parameterSchema
- isActive
- sortOrder
- createdAt
- updatedAt
Комментарий к модели:
- продуктовое направление не является складским остатком и не подтверждает наличие продукции
- остатки по складам в личном кабинете не отображаются
=== Request
Русское наименование: Заявка
Назначение:
- хранение потребности клиента, созданной через продуктовый конструктор
- хранение состояния обработки заявки
- хранение связи с заказом 1С после обработки менеджером
Основные поля:
- id
- code
- customerId
- managerId
- status
- comment
- linkedOrderId
- linkedOrderExternalId
- createdAt
- updatedAt
Комментарий к модели:
- заявка создается в личном кабинете клиентом
- заявка не является учетным заказом до привязки к заказу 1С
- после привязки клиент видит связь заявки с заказом и актуальные сведения из 1С
=== RequestItem
Русское наименование: Позиция заявки
Назначение:
- хранение выбранного продуктового направления
- хранение параметров, количества и комментариев по позиции заявки
Основные поля:
- id
- requestId
- productTypeId
- productName
- quantity
- parameters
- comment
- createdAt
=== Order
@@ -605,6 +773,7 @@
- хранение заказа клиента, полученного из 1С
- хранение текущего статуса, стоимости, условий, состава и служебных данных синхронизации
- хранение связи с заявкой личного кабинета, если заказ создан на основании заявки
Основные поля:
@@ -614,6 +783,7 @@
- deliveryAddressId
- deliveryAddress
- managerId
- requestId
- status
- deliveryTerms
- deliveryFee
@@ -627,7 +797,8 @@
Комментарий к модели:
- заказ создается или обновляется на основании данных, полученных из 1С
- клиент не создает заказ через личный кабинет
- клиент не создает учетный заказ через личный кабинет
- учетный заказ может быть связан с заявкой клиента после обработки менеджером
=== OrderItem
@@ -642,10 +813,11 @@
- id
- orderId
- productId
- productName
- quantity
- unit
- unitPrice
- amount
- createdAt
=== OrderStatusEvent
@@ -732,7 +904,9 @@
Укрупненная структура связей определяется следующими правилами:
- Company объединяет пользователей одной клиентской организации
- User связан с CounterpartyProfile, DeliveryAddress, MessengerConnection, Order, BonusTransaction и RewardWithdrawalRequest
- User связан с CounterpartyProfile, DeliveryAddress, MessengerConnection, Request, Order, BonusTransaction и RewardWithdrawalRequest
- ProductType используется в RequestItem как справочник продуктовой онтологии
- Request содержит набор RequestItem и может быть связан с Order
- Order содержит набор OrderItem и историю OrderStatusEvent
- реферальные связи реализуются через ReferralLink, связывающий одного пользователя с другим пользователем
@@ -757,7 +931,23 @@
[Главная страница],
[/],
[клиент],
[сводка по заказам, балансу и задолженности],
[сводка по заявкам, заказам, балансу и задолженности],
[Продуктовый конструктор],
[/products],
[клиент],
[ознакомление с продуктовой онтологией и создание заявки],
[Карточка продуктового направления],
[/products/\[slug\]],
[клиент],
[выбор параметров заявки],
[Список заявок клиента],
[/client-requests],
[клиент],
[просмотр созданных заявок],
[Карточка заявки клиента],
[/client-requests/\[id\]],
[клиент],
[просмотр заявки и связанного заказа 1С],
[Список заказов клиента],
[/client-orders],
[клиент],
@@ -798,6 +988,14 @@
[/clients/invite],
[менеджер],
[выдача приглашения на подключение],
[Список заявок],
[/requests],
[менеджер],
[обработка заявок клиентов],
[Карточка заявки],
[/requests/\[id\]],
[менеджер],
[обработка заявки и привязка к заказу 1С],
[Список заказов],
[/orders],
[менеджер],
@@ -810,6 +1008,10 @@
[/settings-sync],
[суперменеджер],
[мониторинг и управление обменом],
[Настройки конструктора],
[/catalog-settings],
[суперменеджер],
[продуктовая онтология и параметры заявок],
[Бонусная система],
[/bonus-system/\\\*],
[менеджер/суперменеджер],
@@ -841,6 +1043,18 @@
[/login],
[Вход],
[Вход и первичный сценарий доступа],
[/products],
[Продуктовый конструктор],
[Справочник продуктовых направлений и создание заявки],
[/products/\[slug\]],
[Карточка продуктового направления],
[Выбор параметров заявки],
[/client-requests],
[Список заявок клиента],
[История заявок клиента],
[/client-requests/\[id\]],
[Карточка заявки клиента],
[Детали заявки и связанного заказа 1С],
[/client-orders],
[Список заказов клиента],
[История заказов клиента],
@@ -918,6 +1132,12 @@
[/orders/\[id\]],
[Карточка заказа],
[Состав, статус, баланс и служебные данные синхронизации],
[/requests],
[Заявки],
[Заявки клиентов, созданные в личном кабинете],
[/requests/\[id\]],
[Карточка заявки],
[Обработка заявки и привязка к заказу 1С],
[/settings-sync],
[1С / синхронизация],
[Управление и мониторинг синхронизации],
@@ -968,13 +1188,15 @@
- явное отображение статуса объекта
- соответствие доступных действий роли пользователя
- единый визуальный подход для клиентского и менеджерского контуров
- понятное отображение состава заказа, условий, баланса, задолженности и бонусных операций
- понятное отображение продуктовых параметров, заявки, связи заявки с заказом, состава заказа, условий, баланса, задолженности и бонусных операций
Для экранов, связанных с заказами и задолженностью, должны выполняться дополнительные требования:
Для экранов, связанных с заявками, заказами и задолженностью, должны выполняться дополнительные требования:
- клиент видит только данные своей подтвержденной компании
- заявка и учетный заказ 1С визуально различаются до момента связки
- сумма, условия и статусы отображаются по данным, полученным из 1С
- дата актуальности данных должна быть видна в ключевых местах интерфейса
- складские остатки в интерфейсе не отображаются
Ниже приведены низкодетализированные wireframe-прототипы. Они используются как визуальная фиксация состава страниц, ключевых блоков и пользовательских действий.
@@ -997,7 +1219,9 @@
- отображение сводки по клиентской компании
- просмотр текущего баланса или задолженности
- просмотр последних заявок
- просмотр последних заказов и статусов
- переход к созданию заявки
Состав страницы:
@@ -1005,7 +1229,9 @@
- карточка компании
- блок баланса или задолженности
- дата актуальности данных
- список последних заявок
- список последних заказов
- переход к продуктовому конструктору
- переход к полному списку заказов
- блок последних уведомлений
@@ -1017,6 +1243,82 @@ Wireframe-прототип:
)
=== Продуктовый конструктор
Назначение страницы:
- ознакомление клиента с продуктовыми направлениями
- выбор направления для формирования заявки
Состав страницы:
- список продуктовых направлений
- краткое описание направления
- доступные параметры для будущей заявки
- переход к карточке продуктового направления
Wireframe-прототип:
#figure(
image("public/prototypes/catalog-grid.svg", width: 100%),
caption: [Прототип продуктового конструктора],
)
=== Карточка продуктового направления
Назначение страницы:
- просмотр описания продуктового направления
- выбор параметров заявки
- отправка заявки менеджеру
Состав страницы:
- заголовок направления
- описание направления
- блок выбора параметров
- количество
- комментарий клиента
- действие отправки заявки
Wireframe-прототип:
#figure(
image("public/prototypes/product-card.svg", width: 100%),
caption: [Прототип карточки продуктового направления],
)
=== Карточка заявки
Назначение страницы:
- просмотр созданной заявки
- просмотр состояния обработки
- просмотр связанного заказа 1С после привязки
Состав страницы:
- номер заявки
- состояние заявки
- состав и параметры заявки
- комментарий клиента
- сведения о менеджере
- номер связанного заказа 1С при наличии
- ссылка на карточку заказа после привязки
Wireframe-прототип:
#figure(
image("public/prototypes/cart.svg", width: 100%),
caption: [Прототип карточки заявки],
)
=== Карточка заказа
@@ -1149,6 +1451,7 @@ Wireframe-прототип:
Назначение страницы:
- просмотр сведений о компании
- просмотр заявок клиента
- просмотр истории заказов
- просмотр баланса и задолженности
@@ -1159,6 +1462,7 @@ Wireframe-прототип:
- ИНН и ОГРН/ОГРНИП
- статус подтверждения клиента
- баланс или задолженность
- список заявок клиента
- список заказов клиента
Wireframe-прототип:
@@ -1169,6 +1473,33 @@ Wireframe-прототип:
)
=== Карточка заявки менеджера
Назначение страницы:
- просмотр заявки клиента
- обработка заявки менеджером
- привязка заявки к заказу 1С
Состав страницы:
- клиент и контрагент
- ИНН и ОГРН/ОГРНИП
- состав и параметры заявки
- комментарий клиента
- состояние обработки заявки
- поле номера или внешнего идентификатора заказа 1С
- история действий по заявке
Wireframe-прототип:
#figure(
image("public/prototypes/manager-order.svg", width: 100%),
caption: [Прототип карточки заявки менеджера],
)
=== Карточка заказа менеджера
@@ -1177,7 +1508,7 @@ Wireframe-прототип:
- просмотр состава заказа
- просмотр статуса, стоимости и условий
- просмотр служебных данных синхронизации
- проверка связи заказа с клиентской карточкой
- проверка связи заказа с клиентской карточкой и заявкой
Wireframe-прототип:
@@ -1191,6 +1522,7 @@ Wireframe-прототип:
- клиент и контрагент
- ИНН и ОГРН/ОГРНИП
- связанная заявка при наличии
- состав заказа
- стоимость
- доставка
@@ -1215,6 +1547,30 @@ Wireframe-прототип:
)
=== Настройки конструктора
Назначение страницы:
- управление продуктовой онтологией
- управление параметрами, доступными клиенту при создании заявки
Состав страницы:
- список продуктовых направлений
- карточка настроек направления
- набор параметров заявки
- порядок отображения направлений
- действие сохранения настроек
Wireframe-прототип:
#figure(
image("public/prototypes/catalog-settings.svg", width: 100%),
caption: [Прототип настроек конструктора],
)
=== Настройки синхронизации
@@ -1281,7 +1637,7 @@ Wireframe-прототип:
Интеграционный контур должен обеспечивать:
- получение файлов обмена из 1С
- передачу в 1С файлов обмена, сформированных личным кабинетом
- передачу в 1С сведений о заявках, если такой контур отдельно согласован сторонами
- передачу во внешние системы данных, необходимых для сопровождения заказов и клиентов, если такой обмен согласован сторонами
- сопоставление внутренних идентификаторов и идентификаторов внешних систем
- регистрацию входящих и исходящих операций обмена
@@ -1291,7 +1647,7 @@ Wireframe-прототип:
== Интеграция с 1С
Интеграция с 1С должна обеспечивать обмен данными, необходимыми для сопровождения подтвержденных клиентов, заказов, состава заказов, статусов, условий и сведений о задолженности клиента.
Интеграция с 1С должна обеспечивать обмен данными, необходимыми для сопровождения подтвержденных клиентов, связи заявок с заказами, состава заказов, статусов, условий и сведений о задолженности клиента.
Система должна обеспечивать получение из 1С следующих данных:
@@ -1299,11 +1655,12 @@ Wireframe-прототип:
- сведения о заказах
- состав заказов
- статусы заказов
- номер или внешний идентификатор заказа 1С, используемый для связи с заявкой личного кабинета
- изменения состава, стоимости, доставки и иных существенных параметров заказа
- текущая задолженность клиента
- дата актуальности сведений, полученных из 1С
1С рассматривается как первичный источник учетных данных по заказам, статусам, стоимости, доставке и задолженности. Личный кабинет отображает эти сведения только для клиентских карточек, заранее созданных и подтвержденных менеджером по ИНН и ОГРН/ОГРНИП, и фиксирует дату актуальности данных.
1С рассматривается как первичный источник учетных данных по заказам, статусам, стоимости, доставке и задолженности. Личный кабинет отображает эти сведения только для клиентских карточек, заранее созданных и подтвержденных менеджером по ИНН и ОГРН/ОГРНИП, и фиксирует дату актуальности данных. Заявки, созданные в личном кабинете, остаются внутренними сущностями ЛК до момента связи с заказом 1С.
== Основной способ обмена с 1С
@@ -1328,6 +1685,8 @@ Wireframe-прототип:
+ Если в выгрузке присутствуют данные по контрагенту, который не создан и не подтвержден в личном кабинете, такие данные не загружаются в клиентский контур и не создают новый кабинет автоматически.
+ Балансы и задолженность передаются как состояние по подтвержденным клиентам на дату формирования выгрузки.
+ Заказы и статусы передаются по контрагентам за согласованный период, по умолчанию за последние 60 календарных дней, а также по активным заказам вне этого периода при необходимости отображения клиенту.
+ Если заказ 1С связан с заявкой личного кабинета по номеру, внешнему идентификатору или иному согласованному ключу, система обновляет карточку заявки данными реального заказа.
+ Если заказ 1С не связан с заявкой, но относится к подтвержденному клиенту, он отображается как самостоятельный заказ клиента.
== Состав файлов обмена
@@ -1338,7 +1697,7 @@ Wireframe-прототип:
- `balance_snapshot` — баланс, задолженность и дата актуальности по контрагентам
- `orders_snapshot` — заказы, статусы, состав, стоимость, доставка и существенные изменения по заказам за согласованный период
Файлы `counterparties_snapshot`, `balance_snapshot` и `orders_snapshot` передаются из 1С в личный кабинет. Обратная передача файлов из личного кабинета в 1С не входит в базовый объем, если такой контур отдельно не согласован сторонами.
Файлы `counterparties_snapshot`, `balance_snapshot` и `orders_snapshot` передаются из 1С в личный кабинет. Передача заявок из личного кабинета в 1С не входит в базовый объем, если такой контур отдельно не согласован сторонами; в базовой схеме менеджер создает заказ в 1С и связывает его с заявкой в личном кабинете.
Состав файлов может быть расширен по согласованию сторон, если в ходе интеграции появится отдельный тип данных, который нецелесообразно включать в существующие файлы обмена.
@@ -1423,6 +1782,7 @@ Wireframe-прототип:
{
"order_external_id": "1c-order-10025",
"cabinet_order_id": "FRG-2030",
"linked_request_code": "REQ-2026-015",
"counterparty_external_id": "1c-counterparty-77",
"inn": "7700000000",
"ogrn": "1027700000000",
@@ -1451,6 +1811,7 @@ Wireframe-прототип:
Для сущностей, участвующих в обмене, должны поддерживаться:
- внешний идентификатор учетной системы
- номер или идентификатор связанной заявки личного кабинета, если связь установлена
- дата последней синхронизации
- источник последнего обновления
- признак успешной или неуспешной обработки
@@ -1494,6 +1855,7 @@ Wireframe-прототип:
- данные из 1С сопоставляются только с клиентами, заранее созданными и подтвержденными менеджером
- сопоставление выполняется по ИНН и ОГРН/ОГРНИП
- данные по отсутствующим в личном кабинете клиентам не создают новый кабинет автоматически
- заявка личного кабинета может быть связана с заказом 1С по номеру или внешнему идентификатору
- заказы клиента получаются и отображаются с актуальными статусами
- состав заказов отображается в карточке заказа
- изменения заказа из 1С отображаются в карточке заказа
@@ -1571,10 +1933,14 @@ Wireframe-прототип:
Ключевые экранные маршруты текущей реализации:
- `/` — клиентская сводка по заказам, балансу и задолженности
- `/` клиентская сводка по заявкам, заказам, балансу и задолженности
- `/products` и `/products/[slug]` продуктовый конструктор и карточка направления
- `/client-requests` и `/client-requests/[id]` клиентские заявки
- `/client-orders` и `/client-orders/[id]` клиентские заказы
- `/clients` и `/clients/[id]` менеджерский контур клиентов
- `/requests` и `/requests/[id]` менеджерский контур заявок
- `/orders` и `/orders/[id]` менеджерский контур заказов
- `/catalog-settings` настройки продуктовой онтологии и конструктора заявки
- `/settings-sync` настройки и мониторинг синхронизации
- `/bonus-program`, `/bonus-system/*` бонусный контур
@@ -1993,7 +2359,7 @@ Wireframe-прототип:
- приемлемое время открытия основных экранов
- приемлемое время выполнения пользовательских действий
- отображение клиентской сводки, карточек заказов и истории заказов без заметных задержек при типовом объеме данных
- отображение клиентской сводки, конструктора заявки, карточек заявок, карточек заказов и истории заказов без заметных задержек при типовом объеме данных
Точные количественные показатели производительности подлежат фиксации в рабочей документации по инфраструктуре и тестированию.
@@ -2014,7 +2380,7 @@ Wireframe-прототип:
Система должна обеспечивать:
- сохранность пользовательских данных
- сохранность истории изменений по заказам и бонусным операциям
- сохранность истории изменений по заявкам, заказам и бонусным операциям
- фиксацию ошибок интеграционного обмена
- фиксацию значимых системных и пользовательских событий
@@ -2025,6 +2391,7 @@ Wireframe-прототип:
- сопровождения и развития клиентского контура
- сопровождения и развития менеджерского контура
- изменения продуктовой онтологии и параметров конструктора без переработки базовой структуры системы
- изменения параметров уведомлений без переработки базовой структуры системы
- расширения интеграционного обмена с 1С и иными внешними системами
@@ -2036,6 +2403,7 @@ Wireframe-прототип:
- хранение актуального состояния пользовательских данных
- отображение даты актуальности сведений, полученных из внешних систем, когда это применимо
- защиту от потери данных при обновлении заказов и балансов из файлов обмена
- защиту заявок личного кабинета от потери при привязке и обновлении связанных заказов 1С
== Требования к документации
@@ -2082,10 +2450,12 @@ Wireframe-прототип:
- вход в личный кабинет и завершение подключения по приглашению
- работу с профилем и каналами уведомлений
- просмотр клиентской сводки
- работу с продуктовым конструктором
- создание и просмотр заявок
- просмотр баланса и задолженности
- просмотр заказов, статусов, условий и истории изменений
- работу с бонусным кабинетом, бонусным балансом и заявками на вывод
- действия менеджера по созданию клиентов, приглашению клиентов, контролю заказов и бонусным операциям
- действия менеджера по созданию клиентов, приглашению клиентов, обработке заявок, привязке заявок к заказам 1С, контролю заказов и бонусным операциям
- действия суперменеджера в административных разделах, если они отличаются от действий менеджера
Документация должна быть написана прикладным языком и ориентирована на выполнение пользовательских сценариев, а не на описание внутренней реализации.
@@ -2168,7 +2538,10 @@ Wireframe-прототип:
- подключение клиентов по приглашению менеджера
- создание и подтверждение клиентских карточек по ИНН и ОГРН/ОГРНИП
- роли и разграничение доступа
- клиентская сводка по заказам, балансу и задолженности
- продуктовая онтология и конструктор заявки без складских остатков
- создание и просмотр заявок клиентом
- обработка заявок менеджером
- клиентская сводка по заявкам, заказам, балансу и задолженности
- просмотр списка и карточек заказов
- статусы и история изменений
- уведомления в согласованном объеме
@@ -2193,6 +2566,8 @@ Wireframe-прототип:
- сопоставление клиентских карточек с данными 1С по ИНН и ОГРН/ОГРНИП
- настройка приема файлов обмена от 1С через согласованный FTP/SFTP-ресурс или иной согласованный канал
- проверка получения заказов, состава заказов, статусов, баланса и задолженности
- проверка связи заявки личного кабинета с заказом 1С по номеру или внешнему идентификатору
- проверка обновления карточки заявки после поступления связанного заказа из 1С
- проверка игнорирования данных по клиентам, не созданным и не подтвержденным в личном кабинете
- проверка обработки дублей и ошибок обмена
- проверка отображения даты актуальности данных
@@ -2226,6 +2601,9 @@ Wireframe-прототип:
- клиентский контур
- менеджерский контур
- создание и приглашение клиентов менеджером
- продуктовый конструктор и создание заявки
- обработка заявки менеджером
- привязка заявки к заказу 1С
- сопоставление клиентов по ИНН и ОГРН/ОГРНИП
- сопровождение заказов
- отображение баланса и задолженности
@@ -2254,8 +2632,11 @@ Wireframe-прототип:
- обязательные пользовательские сценарии выполняются корректно
- разграничение ролей и прав доступа реализовано корректно
- заказам и бонусным операциям присваиваются и отображаются корректные статусы
- заявкам, заказам и бонусным операциям присваиваются и отображаются корректные статусы
- клиент видит только данные своей подтвержденной компании
- клиент может создать заявку через продуктовый конструктор без отображения складских остатков
- заявка сохраняется и отображается до привязки к заказу 1С
- после привязки заявки к заказу 1С клиент видит номер заказа, состав, статус, стоимость, условия и историю обновлений
- данные по неподтвержденным клиентам из 1С не создают кабинеты и не отображаются клиентам
- история изменений сохраняется и доступна в предусмотренных сценариях
- сведения из 1С отображаются в согласованном объеме