Перейти к содержанию

Деталка Плательщика/Получателя#

Интерфейс#

макет

Ссылка возврата в субагенто#

  • Текст ссылки: {название_субагента} из subsidiary.subagent
  • поведение по нажатию
    • аналогично ссылке возврата в деталке клиента
    • показывает деталку субагента, с которым связан Плательщик/получатель

Мэппинг полей#

subsidiary.schema.json

Использовать в импорте
Атрибут объекта subsidiary.canUseInImport
  • значение по умолчанию - false
  • отображается в диалоговом окне создания
Использовать в экспорте
Атрибут объекта subsidiary.canUseInExport
  • значение по умолчанию - false
  • отображается в диалоговом окне создания
Приоритет
Атрибут объекта subsidiary.priority
  • Обязательное
  • Уникальное а разрезе субагента
  • числовое, только целые, нельзя ввести ничего роме цифр
  • мин.значение: 1
  • макс.значение: 999999999
Название
Атрибут объекта subsidiary.fullNameEnglish
  • Обязательно к заполнению.
  • Максимальная длина 500 символов
  • Можно вводить любые символы, кроме кириллицы.
  • текст хинта: Заполните на английском языке
Адрес
Атрибут объекта: subsidiary.addressRegistrationEnglish.
  • Необязательно к заполнению.
  • Максимальная длина 250 символов.
  • Можно вводить любые символы, кроме кириллицы
  • текст хинта: Заполните на английском языке

Представитель

Фамилия
Атрибут объекта: subsidiary.representative.fioEnglish.lastName
  • Обязательно к заполнению, если заполнено Имя
  • Максимальная длина: 50 символов
  • Можно вводить любые символы, кроме кириллицы
  • текст хинта: Заполните на английском языке
Имя
Атрибут объекта: subsidiary.representative.fioEnglish.firstName
  • Обязательно к заполнению, если заполнено Фамилия
  • Максимальная длина: 50 символов
  • Можно вводить любые символы, кроме кириллицы
  • текст хинта: Заполните на английском языке
Отчество
Атрибут объекта: subsidiary.representative.fioEnglish.patronymic
  • Не обязательно к заполнению.
  • Максимальная длина: 50 символов.
  • Можно вводить любые символы, кроме кириллицы
  • текст хинта: Заполните на английском языке
Статус
Атрибут объекта subsidiary.status
  • Недоступно дял редактирования.

Файлы штампа и подписи#

  • Если оба файла не загружены, и у пользователя нет прав CREATE_SUBAGENT, оба блока не отображаются
  • Если загружен только один файл, и у пользователя нет прав CREATE_SUBAGENT, отображаются оба блока, но кнопка "Загрузить" в пустом неактивна
Файл подписи
Атрибут объекта: subsidiary.representative.signPath
  • блок для добавления файла
  • не обязательное
  • ограничения: PNG, не более 10 MB.
  • может быть добавлен только один файл
  • кнопка добавления файла:
    • активна для пользователя с правом CREATE_SUBAGENT и если файл не загружен
    • при добавлении файла:
      • загружается и сохраняется сразу после добавления пользователем
      • отображаемое название файла: sign.png
  • кнопка удаления файла:
    • отображается пользователю с правом CREATE_SUBAGENT и если файл загружен
    • при нажатии:
      • отображается диалоговое окно подтверждения.
      • Если пользователь отказался, файл не удаляется.
      • Если пользователь подтвердил, файл удаляется. Удаляется физически, без "пометки на удаление".
Файл штампа
Атрибут объекта: subsidiary.stampPath
  • Аналогично файлу подписи
  • отображаемое название файла: stamp.png

Расчётные счета#

Поле таблицы Атрибут объекта
Валюта subsidiary.bankAccounts[].currency
Приоритетный subsidiary.bankAccounts[].isPriority (отображается индикатором около номера счета)
Номер счета subsidiary.bankAccounts[].number
Банк subsidiary.bankAccounts[].foreignBank
Статус subsidiary.bankAccounts[].status, ACTIVE - Активен, INACTIVE - Заблокирован
  • Сортировка по валюте, потом по статусу (активные сверху, заблокированные снизку)
  • Если нет строк таблицы Получатели/плательщики и у пользователя нет права на добавление,
  • вся группа Получатели/плательщики вместе с заголовком скрывается

Добавление счета#

  • Кнопка + Добавить
  • При нажатии на кнопку + Добавить, открывается модальное окно с полями для ввода:
  • модалка не закрывается по клику на фон (только крестиком или кнопками Отменить, Добавить)
Банк
Атрибут объекта: subsidiary.bankAccounts[].bank
  • обязательное
  • выбор из локального справочника SWIFT
  • аналогично полю Банк получателя order.payment.bank импортной заявки
Валюта
Атрибут объекта: subsidiary.bankAccounts[].currency
  • обязательное
  • выбор из локального справчника валют
  • аналогично полю Валюта получателя order.payment.currencyCounterparty импортной заявки
Номер счета
Атрибут объекта: subsidiary.bankAccounts[].number
Приоритетный
Атрибут объекта: subsidiary.bankAccounts[].isPriority
  • значение по умолчанию - false

Кнопка Отменить

  • Активна всегда
  • При нажатии пользователем на кнопку, система:
    • закрывает окно без дополнительных подтверждений
    • счет не сохраняется в БД

Кнопка Добавить

  • Активна если заполнены вся обязательные поля
  • При нажатии пользователем на кнопку, система:

Редактирование счета#

Пользователь с правом CREATE_SUBAGENT нажимает на строку в таблице счетов (и в режиме редактирования, и в режиме просмотра), Система показывает модалку редактирования строки:

  • поля аналогичны полям при добавлении счета,
  • заполнены ранее сохраненными значениями,
  • все доступны для редактирования
  • модалка не закрывается по клику на фон (только крестиком или кнопками Отменить, Сохранить)

Кнопка Отменить

  • аналогична кнопке Отменить при добавлении счета
  • отображается, если статус счета subsidiary.bankAccounts[].status = ACTIVE

Кнопка Сохранить

  • аналогична кнопке Добавить при добавлении счета
  • отображается, если статус счета subsidiary.bankAccounts[].status = ACTIVE

Сохранение приоритетного счета#

Если для банковского счета установлен признак Приоритетный, система

  • Проверяет, существует ли для Получателя/Плательщика счет в такой же валюте с признаком isPriority == true
  • если приоритетный счет не найден, сохраняет банковский счет.
  • если приоритетный счет найден:
    • система показывает диалоговое окно с запросом установки нового приоритетного счета.
    • если пользователь нажимает Сделать приоритетным этот счёт, система:
      • обновляет существующий (найденный) счет: isPriority == false
      • сохраняет новый приоритетный счет с признаком isPriority == true
    • если пользователь нажимает Не делать приоритетным, система:
      • оставляет без изменений существующий (найденный) счет
      • сохраняет обновляемый/создаваемый счет с признаком isPriority == false
    • если закрыл диалоговое окно (крестиком), система отображает пользователю окно создания/редактирования счета (возвращает пользователя на предыдущий шаг)

Блокировка и разблокировка счета#

Кнопка Заблокировать в модалке редактирования счета отображается:

  • пользователям с правом CREATE_SUBAGENT
  • если статус счета subsidiary.bankAccounts[].status = ACTIVE

При нажатии на кнопку:

  • в процессе обработки отображается лоадер на кнопке, все поля и кнопки на форме недоступны
  • обновляется статус на subsidiary.bankAccounts[].status = INACTIVE
  • снимается признак приоритета subsidiary.bankAccounts[].isPriority = false
  • скрывается кнопка Заблокировать

Кнопка Разблокировать отображается:

  • пользователям с правом CREATE_SUBAGENT
  • если статус Получателя/Плательщика subsidiary.bankAccounts[].status = INACTIVE

При нажатии на кнопку:

  • в процессе обработки отображается лоадер на кнопке, все поля и кнопки на форме недоступны
  • обновляется статус на subsidiary.bankAccounts[].status = ACTIVE,
  • скрывается кнопка Разблокировать

Просмотр и редактирование Плательщика/Получателя#

Режим просмотра#

Просмотр деталки Получателя/Плательщика доступен пользователю с правом VIEW_SUBAGENT_ALL

Режим редактирования#

Кнопка Редактировать в деталке Получателя/Плательщика

  • Отображается:
    • пользователям с правом CREATE_SUBAGENT
    • если статус Получателя/Плательщика subsidiary.status = ACTIVE
    • если форма в режиме просмотра
  • При нажатии на кнопку:
    • становятся доступны для изменения все поля
    • отображаются кнопки Отменить и Сохранить:

Кнопка Отменить

  • Активна всегда
  • При нажатии:
    • сбрасывает внесенные изменения в поля Получателя/Плательщика
    • переводит форму в режим просмотра

Кнопка Сохранить

  • Активна если изменено хотя бы одно поле
  • При нажатии пользователем на кнопку, система:
    • в процессе сохранения на кнопке отображает лоадер, все поля и кнопки формы заблокированы
    • проверяет обязательные поля, в случае ошибки подсвечивает незаполненные поля
    • сохраняет Получателя/Плательщика в БД
    • переводит форму в режим просмотра

Блокировка и разблокировка Получателя/Плательщика#

Кнопка Заблокировать в деталке отображается:

При нажатии на кнопку:

  • в процессе обработки отображается лоадер на кнопке, все поля и кнопки на форме недоступны
  • обновляется статус на subsidiary.status = INACTIVE
  • отображается новый статус на форме
  • скрывается кнопка Заблокировать

Кнопка Разблокировать отображается:

При нажатии на кнопку:

  • в процессе обработки отображается лоадер на кнопке, все поля и кнопки на форме недоступны
  • обновляется статус на subsidiary.status = ACTIVE,
  • отображается новый статус на форме
  • скрывается кнопка Разблокировать
  • показывается оповещение