如何在每个项目中显示所有项目和所有问题

时间:2017-06-11 22:42:28

标签: jira jira-plugin

首先,我是Jira开发的新手,据说我正在尝试构建一个简单的Jira插件来显示每个项目中的所有项目和所有问题。我可以直接从速度模板中成功显示所有项目,如下所示:

<div class="aui-group">
    #foreach ( $project in $projectManager.getProjectObjects() )
        <div class="aui-item">
            <h4>$project.getName() - $project.getId()            <span>$projectManager.getCurrentCounterForProject($project.getId())</span></h4>
        </div>
    #end
</div>

但是,我没有在文档中看到任何内容从ProjectManager界面获取给定项目中的所有问题。 ProjectManager Docs

我希望像

这样的东西
$project.getIsses()

我确实在IssueManager interface documentation getIssueIdsForProject()下看到了这是否意味着没有简单的方法可以从速度模板获取给定项目的所有问题,我必须创建一个端点来检索这通过传递每个项目ID作为I循环使用IssueManager接口?请帮忙。代码示例是受欢迎的,正如我所提到的,我是Jira开发的新手,我的Java真的很生锈。

2 个答案:

答案 0 :(得分:0)

您需要运行JQL查询才能获得与已知项目相关的问题。您可以获得JSON输出,这将允许您进行一些后处理,但似乎没有一种简单的方法来获取此信息而不使用API​​或JQL。

答案 1 :(得分:0)

我不知道我可以从javascript中利用Rest API:)

https://docs.atlassian.com/jira-software/REST/cloud/

所以我这样做了:

AJS.$.ajax({
    url: "/jira/rest/api/2/project",
    type: "GET",
    dataType: "json",
    success: function (projects) {
        AJS.$.each(projects, function (index, project) {
            getProjectIssues(project);
        });
    }
});

var getProjectIssues = function (project) {
    var pKey = project.key;
    AJS.$.ajax({
        url: "/jira/rest/api/2/search?jql=project=" + pKey,
        type: "GET",
        dataType: "json",
        success: function (results) {
            console.log('results ', results);
        }
    });
};