下面是简单的Jira JQL搜索语句:
JqlQueryBuilder builder = JqlQueryBuilder.newBuilder();
builder.where().assignee().in("Dylan").and().unresolved();
Query query = builder.buildQuery();
然后我们有搜索结果:
SearchResults results = searchService.search(authenticationContext.getUser(),
query, PagerFilter.getUnlimitedFilter());
List<Issue> issues = results.getIssues();
问题:我需要找到问题,使用多个条件对其进行过滤,并使用标准的Jira Issue Navigator窗口向用户显示结果(我不想为它创建自己的速度模板) 。我知道,可以将JQL查询字符串安全地链接到指向Issue Navigator的现有URL。主要问题是我必须比较问题的两个日期字段(截止日期和解决方案),并且无法使用JQL进行此类比较。所以,我不能完全用JQL编写查询。我必须将JQL与标准Java混合使用(用于日期比较,这根本不是问题)。
所以,我的主要问题是:我有一个问题列表List issues = results.getIssues()
,是否可以使用Issue Navigator显示它们?怎么样?
答案 0 :(得分:0)
获得List issues
后,您可以创建大小相同的字符串数组,并将所有问题键保存到此查询结果中。比,你可以创建一个类别的过滤器:
issueKey in (ABC-1,ABC-2,ABC-3,...)
或通过网址:
https://your.jira.com/secure/IssueNavigator!executeAdvanced.jspa?jqlQuery=issuekey+in+%28%22ABC-1%22%2C%22ABC-2%22%29&runQuery=true&clear=true
话虽如此,我不太确定您无法使用JQL查询找到更简单的解决方案,您试图实现的是什么?基本的JQL提供了一些日期搜索功能:
resolutionDate < "2013/01/01" and duedate < now()
有关详细信息,请查看JIRA's Advanced Searching。
如果标准JQL不够,请查看现有插件,例如JQL Tricks Plugin。另一种选择可能是创建自己的JQL搜索,请查看Adding a JQL Function to JIRA以获取有关此解决方案的更多信息。
如果您需要帮助并祝您好运,请告诉我们!