Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Can you help me set approvers basis two custom fields in jira?

Muddassir Quazi June 11, 2021

Hi,

At the time of issue creation if a category (single select custom field) has a value selected 'xxx' then the issue must go to ND approval. ND approvers are different for different countries. Let say country (multi select custom field) is selected as 'yyy' then approver is the user 'abc' and if the country selected is 'zzz' then the approver is the user 'efg' etc. There is a list for this.

I want write a custom script for this and set it as Post function on that respective transition. 

Please help me fix this.

1 answer

1 accepted

Suggest an answer

Log in or Sign up to answer
1 vote
Answer accepted
Peter-Dave Sheehan
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
June 11, 2021

That's possible, but you'll have to keep your country/user association right in the script.

 

Something like this:

import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.customfields.option.LazyLoadedOption


def countryUserMap = [
countryName1:user1,
countryName2:user2,
//etc
]
def categoryCf =ComponentAccessor.customFieldManager.getCustomFieldObjectsByName('Category').first()
def countryCf = ComponentAccessor.customFieldManager.getCustomFieldObjectsByName('Country').first()
def category =(issue.getCustomFieldValue(categoryCf) as LasyLoadedOption).value
def country = (issue.getCustomFieldValue(countryCf) as LasyLoadedOption).value
if(category == 'xxx){
def assignee = ComponentAccessor.userManager.getUserByName(countryUserMap[country])
issue.assignee = assignee
}

Muddassir Quazi June 12, 2021

Hey Peter,

Will try this , thanks.

Muddassir Quazi June 12, 2021

Hi Peter,

Thanks for solution, that really worked for me.

Thank you.

TAGS
AUG Leaders

Atlassian Community Events