Как переопределить некоторую логику выбора на основе ajax?

Alfresco Community v5.2 (также и другие версии) включает некоторые предварительно настроенные рабочие процессы, доступные на странице /share/page/start-workflow

Меня интересует "Проверить и утвердить (один или несколько рецензентов) — назначить задачу проверки нескольким рецензентам".

Собственно, если быть точнее - в логике присваивания.

Например, я хочу выполнить некоторую настройку — Настройка экрана задач пользователя

Я хочу отображать участников в таблице, а не в списке. Для этого мне нужно понять, как они появляются в списке.

В файле share-config-custom.xml я могу найти путь к шаблонам.

Например, для bpm:workflowDueDate это будет:

...
<field id="bpm:workflowDueDate" set="info" label-id="workflow.field.due">
  <control template="/org/alfresco/components/form/controls/info.ftl" />
</field>
...

Но для bpm:assignees шаблон не указан:

...
<field id="bpm:assignee" label-id="workflow.field.reviewer" set="assignee" />
...

Я предполагаю, что есть некоторые внутренние компоненты, которые выполняют большую часть логики.

Как я могу переопределить некоторую логику выбора на основе ajax?


person Community    schedule 02.03.2017    source источник
comment
Какую логику ajax вы хотите изменить? или вы хотите переопределить поиск людей?   -  person Muralidharan Deenathayalan    schedule 02.03.2017


Ответы (1)


Если в конфигурации формы общего доступа не указан элемент управления формой, Alfresco Share возвращается к некоторым значениям по умолчанию в зависимости от типа поля.

ударов в минуту: assignee является ассоциацией с узлом человека, поэтому я ожидаю, что по умолчанию он будет указывать на association.ftl !

Я предлагаю скопировать этот файл в новый, скажем, src/main/amp/alfresco/site-webscripts/${project.groupId}/form/controls/custom-association.ftl

а затем в вашем share-config-custom.xml скопируйте конфигурацию формы для задачи с одним небольшим обновлением:

...
<field id="bpm:assignee" label-id="workflow.field.reviewer" set="assignee" >
  <control template="/${project.groupId}/form/controls/custom-association.ftl" />
</field>
...

и тогда вы можете безопасно возиться с custom-association.ftl, потому что почти никогда не бывает хорошей идеей переопределять значения по умолчанию alfresco!


ОБНОВЛЕНИЕ: значение этого элемента управления представляет собой список nodeRefs, ссылающихся на узлы выбранных пользователей. Это объект сценария Java ObjectFinder, который управляет вещами за сценой, вызывая специальную конечную точку для получения всех видов данных, которые должны быть показаны, а затем соответствующим образом манипулирует DOM! Вы можете посмотреть object-finder.js и picker.inc.ftl

person Younes Regaieg    schedule 02.03.2017
comment
Значение этого элемента управления представляет собой список nodeRefs, ссылающихся на узлы выбранных пользователей. это объект сценария Java ObjectFinder, который вызывает специальную конечную точку для получения всех видов данных, которые должны быть показаны, а затем соответствующим образом манипулирует домом! Вы можете посмотреть github.com/Alfresco/share/blob/master/web-framework-commons/src/ и github.com /Alfresco/share/blob/master/web-framework-commons/src/ - person Younes Regaieg; 02.03.2017