Modifying Insight's custom field validator to check more than one value

Steve Letch July 11, 2019

Hi all

 

First off I'm pretty useless at Groovy but I'd like to modify this validator Riada provide for validating their custom field.

If I leave the script mostly intact and just change the field ID and option it works fine, but I'd like it to check a few more options without me having to stick 5 separate validators on the transition.

 

Any help would be appreciated.

 

The working example:

import com.atlassian.jira.component.ComponentAccessor;
import com.atlassian.jira.issue.fields.CustomField;

def value = issue.getCustomFieldValue(ComponentAccessor.getCustomFieldManager().getCustomFieldObject(10000)); // Change ID to the correct one

/* If an insight custom field has an object called "Microsoft" it will fail */
if (value != null && "Microsoft".equals(value[0].getName())) {
return "This is not a valid vendor!";
}
return true

 

 

My modified one that I know wont work but needs some kind of array of else if arguments

 

import com.atlassian.jira.component.ComponentAccessor;
import com.atlassian.jira.issue.fields.CustomField;

def value = issue.getCustomFieldValue(ComponentAccessor.getCustomFieldManager().getCustomFieldObject(12200)); // Change ID to the correct one

/* If an insight custom field has an object called "Category." it will fail */
if
(value != null && "Stock Provisioning".equals(value[0].getName()));
(value != null && "Leaver - Extension".equals(value[0].getName()));
(value != null && "Leaver - Remove Access".equals(value[0].getName()));
(value != null && "New Starter".equals(value[0].getName()));
(value != null && "Transfer to another department".equals(value[0].getName()))
{
return "This Category requires Service Request issue type";

}
return true

 

0 comments

Comment

Log in or Sign up to comment
TAGS
AUG Leaders

Atlassian Community Events