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

Копирование заявки#

Пользователи процесса#

Предусловия#

  • У пользователя роли CUSTOMER есть права
    • SUBMIT_ORDER - для копирования заявки на отправку денег
    • EXPORT_SUBMIT_ORDER - для копирования заявки на получение денег
  • У пользователя роли CONTRACTOR есть права
    • EXPORT_PROCESS_ORDER - для копирования заявки на получение денег

Точки входа#

Варианты завершения#

  • В системе создана заявка в статусе DRAFT

Процесс#

Общий вид#

# Шаг
1 Пользователь открывает заявку на просмотр, нажимает кнопку копирования
2 Система показывает диалоговое окно с запросом подтверждения
2.1 Если пользователь отказывается, система закрывает диалоговое окно. Конец сценария.
3 Система копирует открытую заявку
4 Система закрывает диалоговое окно, над открытой заявкой показывает сообщение об успешном копировании

Интерфейс#

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

На кнопке копирования хинт, текст: Скопировать заявку

img_57.png

Диалоговое окно подтверждения копирования:

img_59.png

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

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

img_60.png

Сохранение новой заявки#

  • Очищаются значения:
    • order.document.files[]
    • order.paymentOrder[]
    • order.document.submittedAt
    • order.document.verifiedAt
    • order.document.contract
    • order.document.reportDate
    • order.payment.exchangeRate - очищаем, если валюты не равны. Если валюты равны - остается = 1
    • order.payment.amountCustomer
    • order.commission.percent
    • order.commission.amountCommissionCounterpartyCurrency
    • order.commission.amountCommissionCustomerCurrency
    • order.commission.amountOperatingCostCounterpartyCurrency
    • order.commission.amountOperatingCostCustomerCurrency
    • order.commission.exchangeRateNotValidAfter
    • order.document.date
    • order.document.notApprovalComment
    • order.document.userEmployee
    • order.document.notValidAfter
    • order.payment.paymentTerm
    • order.subagent
    • order.subsidiary
    • order.subsidiaryBankAccount
    • order.commission.percentCost
    • order.isBelowCost
    • order.cancelledBy
  • Заменяются значения
    • order.status
      • если копирует пользователь с ролью CUSTOMER, то статус новой заявки = DRAFT
      • если копирует пользователь с ролью CONTRACTOR, то статус новой заявки = DRAFT_CONTRACTOR
    • order.document.userCustomer - заменяем на пользователя, создавшего заявку
    • order.document.createdAt - заменяем на текущие дата, время
    • order.document.changedAt - заменяем на текущие дата, время
  • Пересчитываются блок итоговой информации.md
  • Для экспортной заявки дополнительно:
    • копируются строки Товаров и услуг
    • очищается значение order.commission.paymentMethod

Макеты Figma: Копирование заявки