Создание нового договора исполнителем из заявки#
Пользователи процесса#
- Исполнитель
Предусловия#
- Импортная заявка в статусе
- Экспортная заявка в статусе:
- У пользователя есть право CREATE_CONTRACT_STANDARD
Точки входа#
- Кнопка создания нового договора из заявки
- Выбрал договор из списка договоров
Варианты завершения#
- Договор создан и отправлен клиенту на подписание (статус договора CUSTOMER_SIGNING)
- Договор сохранен в статусе DRAFT
- Договор удален, в заявках удалены ссылки на договор
Процесс#
Общий вид#
| # | Шаг |
|---|---|
| 1. | Исполнитель вызывает функцию создания нового договора из заявки или открывает её из списка договоров |
| 1.1 | Если открыл из заявки, система: - создает в БД новый договор в статусе DRAFT заполняет атрибуты из заявки - сохраняет заявку, из которой пришел в создание договора пользователь, в БД и записывает в неё Id созданного договора |
| 2. | Система показывает пользователю форму договора |
| 3. | Исполнитель заполняет атрибуты договора |
| 3.1 | Если пользователь сохраняет договор, система сохраняет его в БД без проверок присваивает номер (если ещё пустой или сменился Агент) |
| 3.2 | Если пользователь удаляет договор, система удаляет договор из БД и очищает id договора во всех заявках |
| 4 | Пользователь формирует ПФ Договора (для типового) или Прикладывает файл с договором (для индивидуального) |
| 5 | Пользователь отправляет договор на подписание клиенту |
| 6 | Система проверяет обязательные поля и наличие файла договора |
| 6.1. | Если есть ошибки, система подсвечивает их пользователю |
| 7. | Система обновляет статус договора, отправляет сообщение на почту клиенту, закрывает деталку договора |
| 7.1 | Если договор был открыт для создания из заявки, показывает заявку |
| 7.2 | Если договор был открыт для редактирования из списка договоров, показывает список договоров |
| 8. | Система показывает сообщение об успешной отправке |
Заполнение атрибутов системой при создании нового договора#
При создании (первом сохранении) договора система заполняет:
contract.document.direction- соответствует значению заявкиorder.document.directioncontract.document.customer- соответствует значению заявкиоrder.document.customercontract.form-STANDARDcontract.status-DRAFTcontract.document.type-CONTRACTcontract.document.userEmployee- пользователь создавший договорcontract.document.createdAt- текущие дата и времяcontract.document.changedAt- текущие дата и время
Интерфейс#
Сохранение изменений#
Система сохраняет изменения в договоре при:
- формировании ПФ договора
- сохранении договора пользователем кнопкой
Сохранитьна форме - отправке договора на подписание клиенту