Hello
My appeal is very simple, that is to query all users in the project role under the project in the script, and then set the corresponding value to the custom field, can you help me?
Below is the code I tried
import com.atlassian.jira.security.roles.ProjectRoleActor
import com.atlassian.jira.user.ApplicationUser
import com.atlassian.jira.issue.CustomFieldManager
import com.atlassian.jira.security.roles.ProjectRoleActors
import com.atlassian.jira.project.ProjectManager
import com.atlassian.jira.security.roles.ProjectRoleManager
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.security.roles.ProjectRole
import com.onresolve.scriptrunner.parameters.annotation.ProjectRolePicker
import com.atlassian.jira.issue.fields.CustomField
import com.onresolve.scriptrunner.parameters.annotation.CustomFieldPicker
import com.atlassian.jira.project.Project
import com.onresolve.scriptrunner.parameters.annotation.ProjectPicker
@ProjectPicker(
label = 'Project', description = 'Pick a project', placeholder = 'Pick a project', includeArchived = false
)
Project project
@CustomFieldPicker(label = 'Custom Field', description = 'Pick a custom field', placeholder='Select custom field')
CustomField customField
@ProjectRolePicker(label = 'Project role', description = 'Project role picker')
ProjectRole projectRole
ProjectRoleManager projectRoleManager = ComponentAccessor.getComponent(ProjectRoleManager.class)
ProjectManager projectManager = ComponentAccessor.getProjectManager()
ProjectRoleActors projectRoleActors = projectRoleManager.getProjectRoleActors(projectRole, project)
CustomFieldManager customFieldManager = ComponentAccessor.getCustomFieldManager()
/*
Get all users in the project role under the project,
and then fill these users into the custom field
*/
// but I don't know how to write the next code
projectRoleActors.each { roleActor ->
//...
}
def userList = []
issue.setCustomFieldValue(customField, userList)