groovy - JIRA 统计从链接问题和子任务到单个问题的所有记录工作
问题描述
我已经尝试了几种不同的 groovy 脚本方法形成各种示例,因为我不是编码员,但已经接近但没有真正的成功。我举起双手,想知道是否有聪明人知道如何做到这一点。
解决方案
更正发布的答案:
另一个社区成员在这里为我回答了这个问题:https ://community.atlassian.com/t5/Jira-Questions/JIRA-tally-all-logged-work-from-linked-issues-and-sub-tasks-to /qaq-p/1434260#U1435384
提供的对我有用的脚本如下:
// Template: Duration (either of the 2)
import com.atlassian.jira.component.ComponentAccessor
def issueLinkmanager = ComponentAccessor.getIssueLinkManager()
def subtaskManager = ComponentAccessor.getSubTaskManager()
def workLogManager = ComponentAccessor.getWorklogManager()
def linkName = "Work"
def linkCollection = issueLinkmanager.getLinkCollectionOverrideSecurity(issue)
def linkedIssues = linkCollection?.getInwardIssues(linkName) //Inward or Outward? Verify and change if needed.
if (!linkedIssues) {
// no linked issues
return null
}
def totalTimeSpentFromWorkLinkedIssuesAndTheirSubtasks = []
for (def linkedIssue:linkedIssues) {
def worklogList = workLogManager.getByIssue(linkedIssue)
for (def worklog:worklogList) {
def timeSpent = worklog.getTimeSpent()
totalTimeSpentFromWorkLinkedIssuesAndTheirSubtasks.add(timeSpent)
}
def subTasks = subtaskManager.getSubTaskObjects(linkedIssue)
for (def subTask:subTasks) {
def worklogListSubTask = workLogManager.getByIssue(subTask)
for (def worklogSubTask:worklogListSubTask) {
def timeSpent = worklogSubTask.getTimeSpent()
totalTimeSpentFromWorkLinkedIssuesAndTheirSubtasks.add(timeSpent)
}
}
}
return totalTimeSpentFromWorkLinkedIssuesAndTheirSubtasks?.sum()
推荐阅读
- linux - 为什么clock_gettime(CLOCK_REALTIME, ..) 上的调用延迟变化如此之大?
- asp.net - 使用 jQueryAjax 更改大小写调用 WebMethod
- python - 使用 BeatifulSoup 选择其他两个标签之间的所有标签(并提取文本)
- node.js - module.exports 没有返回 nodejs 中的函数
- python - 如何在 Python 中删除与列值相关的行?
- typescript - 输入默认值
- scipy - 使用 stats.expon.fit() 获得的参数是什么?
- openvpn - 为什么 OpenVPN 撤销后重新颁发 EasyRSA 3 证书失败?
- git - 如何使用 VSTS 任务名称将代码签入存储库
- adobe-analytics - Adobe DTM 中未触发自定义事件规则