使用除equals之外的其他条件的自定义属性查询工作流任务

时间:2014-05-12 11:22:46

标签: alfresco activiti

我需要构建一个WorkflowTaskQuery,并将自定义工作流模型日期作为条件。标准必须为"currentDate >= myCustomDate"

我注意到可以向WorkflowTaskQuery添加自定义属性,但是在查看实现时,似乎这些属性都被添加为equals-criterias。 (参考(4.2.x):org.alfresco.repo.workflow.activiti.ActivitiWorkflowEngine.addTaskPropertiesToQuery)

要获取所有活动任务并对返回的结果进行过滤将不是一个好方法,因为在此实现中将有数千个正在运行的工作流任务。

我能想到的唯一另一种方法是将WorkflowTaskQueryActivitiWorkflowEngine子类化,并重写一些私有方法(如createRuntimeTaskQuery)并在我自己处理我的特殊情况。 (当根据变量搜索任务时,Activiti有像greaterThan这样的方法等等。)

如果有人有任何更好的建议,请随时与我分享:)

1 个答案:

答案 0 :(得分:1)

我们正在实施一个使用Rest界面驱动Activiti并使用POST / rest / service / query / task成功实现任务查询的解决方案

请求的主体包含条件,在查询中使用的运算符可以具有以下值:" equals"," notEquals"," equalsIgnoreCase" ," notEqualsIgnoreCase"," lessThan"," greaterThan"," lessThanOrEquals"," greaterThanOrEquals"和"喜欢"。

现在,据说.....我不确定我理解你的查询。 currentData> = customDate,显然currentDate是自解释的,但customDate是一个流程实例变量还是一个任务局部变量?它可能会影响查询的格式。