mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-14 17:58:59 +00:00
ALF-393: Added "detailed" parameter to task-instances webscript and made Share use "initiator" to decide if an "edit" button/icon shall be displayed
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@21537 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
Lists all Workflow Task Instances associated with an authority and of a given State.
|
||||
The list of returned tasks also includes pooled tasks which the specified authority is eligible to claim.
|
||||
</description>
|
||||
<url>/api/task-instances?authority={authority?}&state={state?}&properties={properties?}</url>
|
||||
<url>/api/task-instances?authority={authority?}&state={state?}&properties={properties?}&detailed={detailed?}</url>
|
||||
<format default="json"/>
|
||||
<authentication>user</authentication>
|
||||
<transaction allow="readonly">required</transaction>
|
||||
|
@@ -1,11 +1,11 @@
|
||||
<#-- List Workflow Task Instances -->
|
||||
|
||||
<#assign detailed=((args.detailed!"false")=="true")>
|
||||
<#import "task.lib.ftl" as taskLib />
|
||||
{
|
||||
"data":
|
||||
[
|
||||
<#list taskInstances as task>
|
||||
<@taskLib.taskJSON task=task />
|
||||
<@taskLib.taskJSON task=task detailed=detailed/>
|
||||
<#if task_has_next>,</#if>
|
||||
</#list>
|
||||
]
|
||||
|
@@ -43,6 +43,7 @@ public class TaskInstancesGet extends AbstractWorkflowWebscript
|
||||
public static final String PARAM_AUTHORITY = "authority";
|
||||
public static final String PARAM_STATUS= "status";
|
||||
public static final String PARAM_PROPERTIES= "properties";
|
||||
public static final String PARAM_DETAILED= "detailed";
|
||||
|
||||
@Override
|
||||
protected Map<String, Object> buildModel(WorkflowModelBuilder modelBuilder, WebScriptRequest req, Status status,
|
||||
@@ -51,6 +52,7 @@ public class TaskInstancesGet extends AbstractWorkflowWebscript
|
||||
String authority = getAuthority(req);
|
||||
WorkflowTaskState state = getState(req);
|
||||
List<String> properties = getProperties(req);
|
||||
boolean detailed = "true".equals(req.getParameter(PARAM_DETAILED));
|
||||
|
||||
//TODO Handle possible thrown exceptions here?
|
||||
List<WorkflowTask> tasks = workflowService.getAssignedTasks(authority, state);
|
||||
@@ -62,10 +64,15 @@ public class TaskInstancesGet extends AbstractWorkflowWebscript
|
||||
ArrayList<Map<String, Object>> results = new ArrayList<Map<String, Object>>();
|
||||
for (WorkflowTask task : allTasks)
|
||||
{
|
||||
results.add(modelBuilder.buildSimple(task, properties));
|
||||
if (detailed)
|
||||
{
|
||||
results.add(modelBuilder.buildDetailed(task));
|
||||
}
|
||||
else {
|
||||
results.add(modelBuilder.buildSimple(task, properties));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Map<String, Object> model = new HashMap<String, Object>();
|
||||
model.put("taskInstances", results);
|
||||
return model;
|
||||
|
Reference in New Issue
Block a user