Condition: Current User in Role X and custom field == Y

codecentric AG September 28, 2016

Hi,

I try to add a simple script to a workflow transition.

I want only let the current user transition the issue if he is in a specific role and at the same time the value of a multi select field has the value "y".

Is this possible?

 

1 answer

0 votes
Thanos Batagiannis _Adaptavist_
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
September 28, 2016

Hi there,

So the condition for the specific role (and assume you mean a project role)

Issue issue = issue
def user = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()
def roleManager = ComponentAccessor.getComponent(ProjectRoleManager)
def projectRole = roleManager.getProjectRole("Administrators")
 
//if project role Administrators does not exist return false
if (!projectRole)
    return false

//will return true or false if the user is in Administrators role
def isInRole = roleManager.getProjectRoleActors(projectRole, issue.getProjectObject())?.getApplicationUsers()?.contains(user)
 
//the value of a multi select field has the value 'My value'
def hasValue = 'My value' in cfValues['My Multi List']*.value
 
//or any other combination
return isInRole && hasValue

regards, Thanos

Suggest an answer

Log in or Sign up to answer