如何在链接的Jira问题之间复制评论?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在链接的Jira问题之间复制评论?相关的知识,希望对你有一定的参考价值。

我需要将Jira从父问题复制到关联的问题。要做到这一点,我正在尝试编写自定义监听器。但我无法弄清楚如何找到这些相关问题。我还将事件类型添加到“已发布评论”。

我的听众:

import com.atlassian.jira.component.ComponentAccessor;
import com.atlassian.jira.event.issue.AbstractIssueEventListener;
import com.atlassian.jira.event.issue.IssueEvent;

import com.atlassian.jira.issue.link.IssueLinkType;
import com.atlassian.jira.bc.issue.link.IssueLinkService;

public class CopyComments extends AbstractIssueEventListener {

        @Override
        void workflowEvent(IssueEvent event) {

            def commentManager = ComponentAccessor.getCommentManager();
            def issueManager = ComponentAccessor.getIssueManager();
            def comment = event.getComment();

            ArrayList<String> linkedIssues = getLinkedEvents(event); 

            for (def i = 0; i < linkedIssues.size(); i++) {
                def targetIssue = issueManager.getIssueObject(linkedIssues[i]);
                commentManager.create(targetIssue, comment.authorApplicationUser, comment.body, true);

            }
        }

        ArrayList<String> getLinkedEvents(IssueEvent event) {

        }
    }

那么问题是如何才能在项目中找到这些相关问题?

答案

其中一种方法是获取链接的名称,然后创建jql查询。

Collection<IssueLinkType> links = issueLinkService.getIssueLinkTypes();
List<String> linksNames= links.stream().map(IssueLinkType::getName).collect(Collectors.toList());

然后使用所有链接,选择其中一些或只是一个并将其放入jql(需要源代码密钥):

String jql = "issue in linkedIssues('" + <source_Issue_Key> + "'," + <link_name_from_linksNames> + ")";

最后得到链接“问题”的List

Query query = jqlQueryParser.parseQuery(jql);
List<Issue> linkedIssues = searchProvider.search(query, jiraAuthenticationContext.getLoggedInUser(), PagerFilter.newPageAlignedFilter(0, 1000)).getIssues();

1000是返回问题的最大数量(您可以更改它)。

如果你想从特定项目的issues添加到jql and project = <your_project_key>

以上是关于如何在链接的Jira问题之间复制评论?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 JIRA Cloud REST API 创建对 jira 问题的内部评论

如何将自定义复选框组件添加到 JIRA 评论?

如何在活动和浏览器片段之间传递值? [复制]

获取问题评论 JIRA python

JIRA如何个性化定制工作流?

如何使用 java rest api 在 jira 中创建问题