/src/test/resources/examples/CreateSubTaskForUsers.groovy
Groovy | 42 lines | 32 code | 9 blank | 1 comment | 1 complexity | 4efa7cb725896b5f71df0dbb89ebb8c3 MD5 | raw file
- package examples
-
- import com.atlassian.jira.ComponentManager
- import com.atlassian.jira.issue.CustomFieldManager
- import com.atlassian.jira.issue.Issue
- import com.opensymphony.user.Group
- import com.atlassian.jira.issue.MutableIssue
- import com.atlassian.jira.config.SubTaskManager
- import org.ofbiz.core.entity.GenericValue
-
- ComponentManager componentManager = ComponentManager.getInstance()
- CustomFieldManager customFieldManager = componentManager.getCustomFieldManager()
- def issueFactory = componentManager.getIssueFactory()
- def issueManager = componentManager.getIssueManager()
- def indexManager = componentManager.getIndexManager()
-
- def groupCf = customFieldManager.getCustomFieldObjectByName("GroupPicker") // name of group CF
-
- def issue = issueManager.getIssueObject("JRA-1256")
- // Issue issue = issue
-
- Group group = issue.getCustomFieldValue(groupCf) as Group
-
- if (group) {
- group.getUsers().each {String user ->
-
- MutableIssue newIssue = issueFactory.getIssue()
- newIssue.summary = "Sub-task for $user"
- newIssue.issueTypeId = '5'
- newIssue.project = issue.project
- newIssue.affectedVersions = issue.affectedVersions
- newIssue.fixVersions = issue.fixVersions
-
- Map<String,Object> newIssueParams = ["issue":newIssue] as Map<String,Object>
- def currentUser = componentManager.getJiraAuthenticationContext().getUser()
- GenericValue newIssueGv = issueManager.createIssue(currentUser, newIssueParams)
- indexManager.reIndex(newIssueGv);
-
- SubTaskManager subTaskManager = componentManager.getSubTaskManager()
- subTaskManager.createSubTaskIssueLink(issue, newIssue, componentManager.getJiraAuthenticationContext().getUser())
- }
- }