Перейти к основному содержимому

⭐ Контрагент

Таблица на схеме

1.09.25

Схема основных связанных сущностей

07.07.25

📅 Задачи yougile

  • 🔵 поправить запрос получения табличных данных
  • 🟢 реализовать страницу просмотра
  • 🔵🟢 отделить списки (контакты, контактные лица, подписанты) от основного редактора - вынести на отдельные вкладки
  • 🟢 реализовать автозаполнение полей из dadata
  • 🟢 добавить маски для полей
  • 🟢 добавить недостающие валидации
  • ⁉️ Менеджер по продажам и помощник видят всех контрагентов в таблице, но может посмотреть информацию только если есть в группе доступа
  • 🟢 для снабженца убрать видимость поля Заказчик
  • 🔵🟢 Помощники могут менять группу доступа через согласование с начальником

🖊️ Общие особенности

  • Группа доступа обязательна, если установлен тип Покупатель
  • Если установлен тип Покупатель и Поставщик, то Менеджер по продажам, Помощник менеджера по продажам и Начальник менеджеров по продажам не могут удалить этого конрагента, а могут только убрать тип Покупатель. Аналогично если установлен тип Покупатель и Поставщик, то Снабженец может только снять тип Поставщик
  • Отрасль можно выбрать из имеющихся или прописать свою и она создасться
  • КПП обязателен для организаций
  • Дата регистрации обязательна для ИП
  • Тип Покупатель, Заказчик могут редактировать только Менеджер по продажам, Помощник менеджера по продажам и Начальник менеджеров по продажам
  • Связь с заказом покупателя через контактное лицо контрагента
  • Есть возможность подтянуть данные из открытого источника по ИНН

📋 Предзаполненные данные

  • наши организации:
    • ООО "ПК ОлМаг"
    • ИП Марченко Максим Борисович

🔐 Доступ

  • Менеджер по продажам

    • В таблице видит всех контратентов
    • Может редактировать и просматривать полную информацию только контрагентов, в которых находится в группе доступа
    • Не может редактировать тип Поставщик
  • Помощник менеджера по продажам

    • В таблице видит всех контратентов
    • Может редактировать и просматривать полную информацию только контрагентов, в которых находится в группе доступа
    • Не может редактировать тип Поставщик
  • Начальник менеджеров по продажам

    • Не может редактировать тип Поставщик
    • Единственный может редактировать информацию по нашим организациям и давать доступ к редактированию дочерних сущностей
  • Снабженец

    • Не видит поля: Группа доступа, Тэги, Дата следующего контакта, Дата последнего контакта
    • Не может редактировать тип Покупатель, Заказчик
  • Бухгалтер (получение)

  • Менеджер производства (редактирование подписантов и банковских реквизитов)

  • Никто не может удалить наши организации через интерфейс

Примечание:

  1. В таблице все видят всех контрагентов. Редактировать и просматривать полную информацию можно только у тех контрагентов к которым есть доступ
  2. Телефон и Почта показыватся первая у контактного лица, если нет, то первая у контрагента

Доступ по внутренним сущностям

Тип контр.\Роль
Сущность\Роль
М. по продажамПомощникНачальник м.Снабженец
(есть в гр. доступа)*(есть в гр. доступа)*
- Без типаОсновная информацияПросмотр + доб типа*Просмотр + доб типа*Пр. + доб типа*Пр. + доб типа*
Контактное лицоПросмотрПросмотрПросмотрПросмотр
ПодписантПросмотрПросмотрПросмотрПросмотр
Банковские реквизиты----
Договор*----
Заказы покупателя----
Взаимодействия----
- ПокупательОсновная информацияРедактированиеРедактированиеРедактированиеПр. + доб типа*
Контактное лицоРедактированиеРедактированиеРедактированиеПросмотр
ПодписантРедактированиеРедактированиеРедактированиеПросмотр
Банковские реквизитыРедактированиеРедактированиеРедактирование-
Договор*РедактированиеРедактированиеРедактирование-
Заказы покупателяРедактированиеРедактированиеРедактирование-
ВзаимодействияРедактированиеРедактированиеРедактирование-
- ЗаказчикОсновная информацияРедактированиеРедактированиеРедактированиеПр. + доб типа*
Контактное лицоРедактированиеРедактированиеРедактированиеПросмотр
ПодписантРедактированиеРедактированиеРедактированиеПросмотр
Банковские реквизитыРедактированиеРедактированиеРедактирование-
Договор*РедактированиеРедактированиеРедактирование-
Заказы покупателя----
ВзаимодействияРедактированиеРедактированиеРедактирование-
- ПоставщикОсновная информацияПросмотр + доб типа*Просмотр + доб типа*Пр. + доб типа*Редактирование
Контактное лицоПросмотрПросмотрПросмотрРедактирование
ПодписантПросмотрПросмотрПросмотрРедактирование
Банковские реквизиты---Редактирование
Договор*---Редактирование
Заказы покупателя----
Взаимодействия----
- Прочие отношенияОсновная информацияРедактированиеРедактированиеРедактированиеРедактирование
Контактное лицоРедактированиеРедактированиеРедактированиеРедактирование
ПодписантРедактированиеРедактированиеРедактированиеРедактирование
Банковские реквизитыРедактированиеРедактированиеРедактированиеРедактирование
Договор*РедактированиеРедактированиеРедактированиеРедактирование
Заказы покупателя----
ВзаимодействияРедактированиеРедактированиеРедактирование-
- Наша организацияОсновная информацияПросмотрПросмотрРедактирование*Просмотр
Контактное лицоПросмотрПросмотрРедактированиеПросмотр
ПодписантПросмотрПросмотрРедактированиеПросмотр
Банковские реквизитыПросмотрПросмотрРедактированиеПросмотр
Договор*РедактированиеРедактированиеРедактирование-
Заказы покупателя----
ВзаимодействияРедактированиеРедактированиеРедактирование-

Примечание:

  • Правило объединения типов - Наша организация И (Покупатель ИЛИ Заказчик ИЛИ Поставщик ИЛИ Прочие отношения). Например для контрагента с типами Наша организация и Покупатель для менеджера будут права на просмотр банковских реквизитов и редактирование взаимодействия; для контрагента с типами Поставщик и Покупатель для снабженца будут права на редактирование всего, кроме взаимодействий.
  • (есть в группе доступа)* - если у контрагента нет группы доступа или сотрудника нет в указанной группе, то он может видеть только общую информацию в таблице контрагентов
  • Просмотр + доб типа* - может контрагенту установить нужный тип контрагента
  • Договор* - Менеджер по продажам, Помощник менеджера по продажам, Начальник менеджеров по продажам могут видеть и редактировать только договора с покупателем, Снабженец - только договора с типом с поставщиком
  • Наша организация, редактирование - начальник менеджеров имеет права редактировать организацию, но прав удалить её у него тоже нет

💻 Веб интерфейс

https://orders.regina.fvds.ru/partners

Таблица

Таблица содержит кнопки просмотра информации о контрагенте. Над таблицей кнопка добавления контрагента Менеджер по продажам и Помощник менеджера по продажам могут просматривать информацию только тех контрагентов у которых установлен флаг IsEditable

Колонки

Поле\Роль
М. по продажамПомощникНачальник м.Снабженец
НаименованиеПросмотрПросмотрПросмотрПросмотр
ИННПросмотрПросмотрПросмотрПросмотр
КПППросмотрПросмотрПросмотрПросмотр
ТегиПросмотрПросмотрПросмотр-
Группа доступаСкрытьСкрытьСкрыть-
ПокупательПросмотрПросмотрПросмотрСкрыть
ЗаказчикПросмотрПросмотрПросмотрСкрыть
ПоставщикСкрытьСкрытьПросмотрПросмотр
ПрочееСкрытьСкрытьСкрытьСкрыть
МоиПросмотрПросмотр--
След. контактПросмотрПросмотрПросмотр-
Посл. контактПросмотрПросмотрПросмотр-

Технические поля: id, isAvailable, isEditable

Примечание: Для ролей менеджер по продажам и помощник менеджера по продажам по умолчанию работает фильтр Мои (AccessGroupEmployees) = Да

Просмотр

Включает кнопки "Редактировать" (для перехода в режим редактирования основной информации) и "Удалить". Также слева расположены вкладки со связанными сущностями, на которых обычно размещены таблицы, которые можно редактировать напрямую.

Редактирование

Режим редактирования основной информации. Кнопка "Сохранить" находится вверху и всегда остается видимой при прокрутке страницы. При раскрытии аккордеона происходит прокрутка страницы, чтобы полностью видеть содержимое аккордеона

Во время редактирования доступны левые вкладки, а при создании они скрыты.

23.10.25

Редактирование. Добавление типа

Позволяет назначить тип контрагента, который пользователь не имеет права редактировать. Например, если у контрагента есть тип "поставщик", менеджер по продажам может добавить ему тип "покупатель". Аналогично, если у контрагента есть тип "заказчик", снабженец может добавить ему тип "поставщик".

23.10.25

Редактирование. Изменение сполнителя

На форме просмотра заказа покупателя:

  • У начальника менеджеров по продажам есть возможность сменить ответственного менеджера. В дальнейшем подобная возможность предполагается реализовать и помощнику менеджера по продажам
  • У начальника производства есть возможность сменить сопровождающего. Если сопровождающий не выбран заранее, то перед тем как заказ дойдёт до главного конструктора сопровождающий назначается автоматически
Удаление

Модальное окно

Удаляет все доступные данному сотруднику типы у данного контрагента

Автозаполнение данными

Модальное окно

Добавить кнопку "Автозаполнение" слева от кнопок "Добавить контрагента" или "Сохранить" При нажатии открывать модальное окно и если ИНН и КПП заполнены, то автоматически заполнять ИНН и выбирать КПП (если такой есть) Заголовок Заполнение части реквизитов по ИНН Поля: ИНН или ОГРН* (текстовое), КПП (выпадающий список) После ввода ИНН происходит получение данных от dadata Если вернулось одно КПП, то выбираем его автоматически Если вернулось множество КПП, то заполняем выпадающий список, но не выбираем (если оно не прописано в основной форме) Если КПП не вернулось, то поле не доступно Внизу модалки кнопка "Заполнить данные". После выбора КПП (если оно есть, то оно обязательно) и нажатия на кнопку заполняем данные в форме (если есть данные - перетираем их)

В итоге могут быть заполнены поля: Наименование, Краткое наименование, Полное наименование, ИНН, КПП, ОГРН, ОКПО, Адрес юридический, Адрес почтовый, (Страна - если страна Россия?), Дата регистрации, Подписанты (Генеральный, data.fio - ФИО ИП?)

23.10.25

Синхронизация контрагентов

Синхронизация контрагентов

Начальник менеджеров по продажам может запускать синхронизацию с гугл таблицей контрагенты

Внутри требуются запросы к стороннему сервису (dadata), поэтому добавление происходит не быстрее 30 новых контрагентов в секунду и не больше 9800 в сутки

🔗 Связанные сущности

👨🏽‍💻 API

/Order/Partner/ - Swagger - Order API