Задача [0428]: Сохранять значения ФИО и должности на момент подписи

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

Используются:

Связанные задачи:

Решение: общим решением данной задачи является сохранение как текущих ФИО и должности пользователя (по его идентификатору), так и их текстового значения для каждой подписи документа. Настройками будет определяться, какой из этих вариантов использовать в листе подписей.

Ввиду наличия в платформе нескольких вариантов использования листов подписей, необходимы доработки в каждой из них:

Лист подписей в карточке документа, включая его печатную версию

В «Настройки документооборота» после опции «Отображать ход выполнения дочерних документов внутри основного» необходимо добавить новую настройку:

Отображать ФИО и должность пользователя на момент подписи в листе подписей

Внешний вид настройки - флажок, который по умолчанию выключен.

Рисунок 146. Новая настройка документооборота

Новая настройка документооборота

Для отключенного флажка поведение системы на момент реализации данной задачи не меняется, т.е. в листе подписей (включая печатную версию листа подписей и полной карточки документа) отображаются самые актуальные ФИО и должность пользователя.

Для включенного флажка таблица листа подписей, печатная версия листа подписей и полной карточки документа отображают ФИО и должность пользователя, которые были сохранены в момент его подписи. См. пример использования.

Переключение данной настройки будет применено после повторного открытия документа (без обновления страницы).

Пример использования.

Условия: наличие Методолога, Сотрудника отдела кадров (далее - СОК), а также Пользователя1 со следующими данными личной карточки:

  • фамилия - Иванова

  • имя - Анастасия

  • отчество - Александровна

  • должность - Специалист 1 категории, И.О. руководителя подразделения «ARTA»

Настройка "Отображать ФИО и должность пользователя на момент подписи в листе подписей" выключена. У Пользователя1 имеется одна неподписанная работа на исполнении.

  1. Пользователь1 переходит в модуль «Потоки работ» и открывает документ работы из условия.

  2. Пользователь1 подписывает документ с помощью кнопки «Подписать».

  3. Пользователь1 открывает «Карточку» документа, переходит в «Лист подписей»:

Фамилия И.О. Должность Дата Подпись

1

Иванова А.А.

И.О. руководителя подразделения «ARTA», Специалист 1 категории

09:00:00 31.12.16

Обычная

  1. СОК снимает Пользователя1 с должности И.О. руководителя подразделения «ARTA» и меняет данные личной карточки Пользователя1:

    • фамилия - Попова

    • имя - Анастасия

    • отчество - Александровна

  2. Пользователь1 переходит в модуль «Потоки работ» и открывает документ работы из условия.

  3. Пользователь1 открывает «Карточку» документа, переходит в «Лист подписей»:

Фамилия И.О. Должность Дата Подпись

1

Попова А.А.

Специалист 1 категории

09:00:00 31.12.16

Обычная

  1. Методолог включает настройку "Отображать ФИО и должность пользователя на момент подписи в листе подписей".

  2. Пользователь1 переходит в модуль «Потоки работ» и открывает документ работы из условия.

  3. Пользователь1 открывает «Карточку» документа, переходит в «Лист подписей»:

Фамилия И.О. Должность Дата Подпись

1

Иванова А.А.

И.О. руководителя подразделения «ARTA», Специалист 1 категории

09:00:00 31.12.16

Обычная

Экспорт документов, а также прочие XML и API сервисы

Экспорт документов.

При экспортировании документа в файле с его информацией (metadata.xml) в секции с данными подписей (<signs>) должны возвращаться ФИО (<fullname>) и должность (<positions>) пользователя согласно настройке "Отображать ФИО и должность пользователя на момент подписи в листе подписей".

XML-сервис для предоставления данных о подписях документа.

Аналогично экспорту, в DataSource.xml в секции с данными подписей (<signatures>) должны возвращаться ФИО (<userName>) и должность (<position>) пользователя согласно настройке "Отображать ФИО и должность пользователя на момент подписи в листе подписей".

API получения списка подписей документа.

В методе API rest/api/docflow/doc/sign_list возвращаемый массив должен содержать ФИО (<userName>) и должность (<userPosition>) пользователя согласно настройке "Отображать ФИО и должность пользователя на момент подписи в листе подписей".

Компонент формы "Лист подписей", включая печатное представление

В настройках компонента формы "Лист подписей" только с типом данных "Лист подписей" необходимо расширить варианты отображения столбца с ФИО и должностью пользователя:

  • full_name - значение ФИО в компонент подставляется согласно настройке документооборота "Отображать ФИО и должность пользователя на момент подписи в листе подписей";

  • full_name_current - в компонент подставляется всегда текущее ФИО пользователя, независимо от новой настройки документооборота;

  • full_name_saved - в компонент подставляется всегда сохраненное на момент подписи ФИО пользователя, независимо от новой настройки документооборота;

  • position - значение должности в компонент подставляется согласно настройке документооборота "Отображать ФИО и должность пользователя на момент подписи в листе подписей";

  • position_current - в компонент подставляется всегда текущая должность пользователя, независимо от новой настройки документооборота;

  • position_saved - в компонент подставляется всегда сохраненная на момент подписи должность пользователя, независимо от новой настройки документооборота.

Расположение, нумерацию и отображение по умолчанию для новых столбцов см. в следующей таблице. Названия на всех языках совпадают с текущими столбцами full_name и position соответственно.

Столбец ... Отображать

1

number

...

нет

2

full_name

...

да

2

full_name_current

...

нет

2

full_name_saved

...

нет

3

position

...

да

3

position_current

...

нет

3

position_saved

...

нет

4

date

...

да

5

signature_type

...

да

6

comment

...

да

7

signature

...

да

При обновлении системы новые столбцы full_name_current и full_name_saved должны вставиться сразу после full_name с той же нумерацией, "Отображать" = нет.

Аналогично, новые столбцы position_current и position_saved должны вставиться сразу после position с той же нумерацией, "Отображать" = нет.

Примечание.

Благодаря новым настройкам компонента формы "Лист подписей", можно настроить отображение одновременно двух или трех столбцов с ФИО и должностью пользователя. Это не будет являться ошибкой Synergy.

Печатное представление формы.

Поддержку всех новых столбцов листа подписей необходимо реализовать и в печатном представлении формы. Логика их использования аналогична столбцам full_name и position.

Пример использования.

Условия: наличие Методолога, Сотрудника отдела кадров (далее - СОК), а также Пользователя1 со следующими данными личной карточки:

  • фамилия - Иванова

  • имя - Анастасия

  • отчество - Александровна

  • должность - Специалист 1 категории, И.О. руководителя подразделения «ARTA»

Наличие Формы1 с компонентом «Лист подписей», а также Реестра1 на основе Формы1.

  1. Методолог открывает Форму1 на редактирование и настраивает компонент «Лист подписей» следующим образом:

Столбец Название на русском Отображать

1

number

№ п/п

нет

2

full_name

Фамилия И.О.

нет

2

full_name_current

Фамилия И.О. (текущая)

да

2

full_name_saved

Фамилия И.О. (на момент подписи)

да

3

position

Должность

нет

3

position_current

Должность (текущая)

да

3

position_saved

Должность (на момент подписи)

да

4

date

Дата

да

5

signature_type

Тип подписи

нет

6

comment

Комментарий

нет

7

signature

Подпись

да

  1. Методолог открывает Реестр1 на редактирование и добавляет маршрут активации, состоящий из согласования с Пользователем1.

  2. Произвольный пользователь с правами на Реестр1 создает в нем запись и запускает маршрут активации.

  3. Пользователь1 переходит в модуль «Потоки работ» и согласовывает работу из п.3 с подписью.

  4. Пользователь1 открывает запись реестра из п.3, на форме в компоненте «Лист подписей» отображается:

Фамилия И.О. (текущая) Фамилия И.О. (на момент подписи) Должность (текущая) Должность (на момент подписи) Дата Подпись

Иванова А.А.

Иванова А.А.

И.О. руководителя подразделения «ARTA», Специалист 1 категории

И.О. руководителя подразделения «ARTA», Специалист 1 категории

09:00:00 31.12.16

Обычная

  1. СОК снимает Пользователя1 с должности И.О. руководителя подразделения «ARTA» и меняет данные личной карточки Пользователя1:

    • фамилия - Попова

    • имя - Анастасия

    • отчество - Александровна

  2. Пользователь1 открывает запись реестра из п.3, на форме в компоненте «Лист подписей» отображается:

Фамилия И.О. (текущая) Фамилия И.О. (на момент подписи) Должность (текущая) Должность (на момент подписи) Дата Подпись

Попова А.А.

Иванова А.А.

Специалист 1 категории

И.О. руководителя подразделения «ARTA», Специалист 1 категории

09:00:00 31.12.16

Обычная