我正在使用liferay工作流。我想創建我自己的工作流定義。Liferay文檔和介質Portlet的自定義工作流定義
現在使用默認工作流程「單一審批者」,它只是直接通知管理員特定文檔由用戶上載到文檔和媒體portlet。我想要的是在這張圖片中描述。
每當下組織A的用戶會上傳任何文件,那麼它不會發出通知,批准用戶主ADMIN而是應該向組織一個管理員批准的用戶。
我希望我的問題是可以理解的......
每當下機構A用戶會上傳任何文件,那麼它不會發送通知批准用戶主ADMIN而是應該發送給一個組織管理員批准用戶..
我希望我已經明白我的問題......
我曾經做過這樣的在我的工作流程我已經單身批准的定義我已經給了該定義一個文件夾中的媒體文件和現在的portlet他們自動創建了四個角色
1)portal Legal Reviewer - Auto generated role from workflow definition
2)portal Content Reviewer - Autogenerated role from workflow definition
3)organization Legal Reviewer - Autogenerated role from workflow definition
4)organization Content Reviewer - Autogenerated role from workflow definition
現在,每當我上傳的東西到該文件夾的通知去我的網站的所有者
而在有兩個可選
1)assign to me
2)assign to -> users (who have role from above 4 they created automatically)
現在假設我分配到具有不同於上述角色的用戶四,當我打開用戶的帳戶,然後沒有控制面板或沒有工作流任務行動,我可以顯示。所以任何人都可以批准的內容?
還有一件事在那裏我可以編輯XML中的作用,它會通知在XML不是默認的方式,網站所有者
只有當我創建誰擁有角色,管理員與用戶所描述的特定角色組織審批者角色,僅可訪問控制面板和工作流任務,他們可以找到分配和分配我通知
我的工作流程的認定中去這裏
<?xml version="1.0"?>
<workflow-definition
xmlns="urn:liferay.com:liferay-workflow_6.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:liferay.com:liferay-workflow_6.1.0 http://www.liferay.com/dtd/liferay-workflow-definition_6_1_0.xsd"
>
<name>UPLOAD Approver</name>
<description>A single approver can approve a workflow content.</description>
<version>1</version>
<state>
<name>created</name>
<metadata>
<![CDATA[{"xy":[36,51]}]]>
</metadata>
<initial>true</initial>
<transitions>
<transition>
<name>review</name>
<target>review</target>
</transition>
</transitions>
</state>
<task>
<name>update</name>
<metadata>
<![CDATA[{"transitions":{"resubmit":{"bendpoints":[[303,140]]}},"xy":[328,199]}]]>
</metadata>
<actions>
<action>
<name>reject</name>
<script>
<![CDATA[
Packages.com.liferay.portal.kernel.workflow.WorkflowStatusManagerUtil.updateStatus(Packages.com.liferay.portal.kernel.workflow.WorkflowConstants.toStatus("denied"), workflowContext);
Packages.com.liferay.portal.kernel.workflow.WorkflowStatusManagerUtil.updateStatus(Packages.com.liferay.portal.kernel.workflow.WorkflowConstants.toStatus("pending"), workflowContext);
]]>
</script>
<script-language>javascript</script-language>
<execution-type>onAssignment</execution-type>
</action>
<notification>
<name>Creator Modification Notification</name>
<template>Your submission was rejected by a reviewer, please modify and resubmit.</template>
<template-language>text</template-language>
<notification-type>email</notification-type>
<execution-type>onAssignment</execution-type>
</notification>
</actions>
<assignments>
<user />
</assignments>
<transitions>
<transition>
<name>resubmit</name>
<target>review</target>
</transition>
</transitions>
</task>
<task>
<name>review</name>
<metadata>
<![CDATA[{"xy":[168,36]}]]>
</metadata>
<actions>
<notification>
<name>Review Notification</name>
<template>You have a new submission waiting for your review in the workflow.</template>
<template-language>text</template-language>
<notification-type>email</notification-type>
<execution-type>onAssignment</execution-type>
</notification>
<notification>
<name>Review Completion Notification</name>
<template>
Your submission has been reviewed and the reviewer has applied the following ${taskComments}.</template>
<template-language>freemarker</template-language>
<notification-type>email</notification-type>
<recipients>
<user />
</recipients>
<execution-type>onExit</execution-type>
</notification>
</actions>
<assignments>
<roles>
<role>
<role-type>organization</role-type>
<name>Organization APPROVER</name>
</role>
<role>
<role-type>organization</role-type>
<name>Organization Content Reviewer</name>
</role>
<role>
<role-type>organization</role-type>
<name>Organization Owner</name>
</role>
<role>
<role-type>regular</role-type>
<name>Portal Content Reviewer</name>
</role>
<role>
<role-type>site</role-type>
<name>Site Administrator</name>
</role>
<role>
<role-type>site</role-type>
<name>Site Content Reviewer</name>
</role>
</roles>
</assignments>
<transitions>
<transition>
<name>approve</name>
<target>approved</target>
</transition>
<transition>
<name>reject</name>
<target>update</target>
<default>false</default>
</transition>
</transitions>
</task>
<state>
<name>approved</name>
<metadata>
<![CDATA[
{"xy":[380,51]}
]]>
</metadata>
<actions>
<action>
<name>approve</name>
<script>
<![CDATA[
Packages.com.liferay.portal.kernel.workflow.WorkflowStatusManagerUtil.updateStatus(Packages.com.liferay.portal.kernel.workflow.WorkflowConstants.toStatus("approved"), workflowContext);
]]>
</script>
<script-language>javascript</script-language>
<execution-type>onEntry</execution-type>
</action>
</actions>
</state>
</workflow-definition>
我沒有將兩個角色如下這是在單批准定義來自默認..
<role>
<role-type>organization</role-type>
<name>Organization Administrator</name>
</role>
<role>
<role-type>regular</role-type>
<name>Administrator</name>
</role>
所以什麼正在發生,我需要給特定用戶以管理員的角色還有organizationapprover但如果我給管理員權限給該用戶,然後只有他可以訪問控制面板,可以去工作流任務選項,但它不是真正的想法給管理員權限的用戶,他們的工作只是批准的內容..所以我想,不知何故只是授權organizationapprover使用控制面板,但僅限於訪問工作流任務選項。用戶無法執行任何操作,而只是使用工作流任務選項。
當我在我的portlet中添加單個批准定義,然後有默認角色創建,當我給任何用戶批準或審查與分配給選項的控制面板不顯示,那麼我怎麼去該評論者的工作流任務用戶帳號 –
請查看我更新的答案。 –