Hello,
I am using Script Runner (LOVE this add-on!) to create a post-function script to set Assignee based on a custom field drop-down selection. I am using the below script but can't seem to get it to work. Any ideas on what I am missing here? I am a bit of a novice when it comes to scripting. Thanks!
import com.atlassian.jira.ComponentManager import com.atlassian.jira.issue.CustomFieldManager import com.atlassian.jira.issue.Issue import com.atlassian.jira.issue.MutableIssue import com.atlassian.jira.issue.comments.CommentManager import com.atlassian.jira.issue.fields.CustomField import com.atlassian.jira.util.ImportUtils import com.atlassian.jira.user.util.UserManager import com.atlassian.crowd.embedded.api.User import com.atlassian.jira.component.ComponentAccessor MutableIssue issue = issue ComponentManager componentManager = ComponentManager.getInstance() CustomFieldManager customFieldManager = componentManager.getCustomFieldManager() CustomField customFieldX = customFieldManager.getCustomFieldObject("customfield_10022") def xFieldVal = issue.getCustomFieldValue(customFieldX) if(xFieldVal == "Client Operations" ){ User userA=ComponentManager.getInstance().getUserUtil().getUser('lbantug') issue.setAssignee(userA); } issue.store()
this works ...
import com.atlassian.jira.ComponentManager
import com.atlassian.jira.issue.CustomFieldManager
import com.atlassian.jira.issue.Issue
import com.atlassian.jira.issue.MutableIssue
import com.atlassian.jira.issue.comments.CommentManager
import com.atlassian.jira.issue.fields.CustomField
import com.atlassian.jira.util.ImportUtils
import com.atlassian.jira.user.util.UserManager
import com.atlassian.crowd.embedded.api.User
import com.atlassian.jira.component.ComponentAccessor
userManager = (UserManager) ComponentAccessor.getUserManager()
MutableIssue issue = issue
CustomFieldManager customFieldManager = ComponentManager.getInstance().getCustomFieldManager();
CustomField customField_name = customFieldManager.getCustomFieldObjectByName( "LeadComponent" );
def comp = issue.getCustomFieldValue(customField_name);
def str = comp.toString().toLowerCase();
def userToReassign = issue.getAssignee()
switch ( str ) {
case "XY" :
userToReassign = userManager.getUser('AB');
break
case "YX" :
userToReassign = userManager.getUser('BA');
[...]
break
default :
userToReassign = userManager.getUser('CD');
}
issue.setAssignee(userToReassign);
issue.store();
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.