Try this:
import com.atlassian.jira.component.ComponentAccessor import com.atlassian.jira.issue.MutableIssue List<String> groups = ComponentAccessor.getGroupManager().getGroupNamesForUser(issue.getAssignee()) //Repeat this block for each case if(groups.contains("group1")){ issue.setAssigneeId("user1"); return; }
Hey Vasiliy,
Here the scenario is if ( Customfield = X)
set Assignee "Previously assigned IT MANAGER"
set Assigned Team 'IT SOFTWARE' If( Customfield = Y)
Can you please help me out script for this scenario.
Thanks,
Rishit
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I hope it is what you want:
import com.atlassian.jira.component.ComponentAccessor import com.atlassian.jira.issue.Issue import com.atlassian.jira.issue.MutableIssue import com.atlassian.jira.issue.changehistory.ChangeHistory import com.atlassian.jira.issue.changehistory.ChangeHistoryManager import com.atlassian.jira.issue.fields.CustomField import com.atlassian.jira.issue.history.ChangeItemBean import com.atlassian.jira.security.groups.GroupManager CustomField customField = ComponentAccessor.getCustomFieldManager().getCustomFieldObjectByName("fieldName") GroupManager groupManager = ComponentAccessor.getGroupManager(); switch ((String) issue.getCustomFieldValue(customField)){ case "X": //lool for assignee from group IT MANAGER List<ChangeItemBean> managersAssignee = new ArrayList<>() ChangeHistoryManager changeHistoryManager = ComponentAccessor.getChangeHistoryManager(); for(ChangeHistory changeHistory: changeHistoryManager.getChangeHistories(issue)){ for(ChangeItemBean bean: changeHistory.getChangeItemBeans()){ if(bean.getField().equals("assignee")){ if(groupManager.isUserInGroup(bean.getTo(), "IT MANAGER")) managersAssignee.add(bean) } } } managersAssignee.sort(new Comparator<ChangeItemBean>() { @Override int compare(ChangeItemBean o1, ChangeItemBean o2) { return o1.getCreated().after(o2.getCreated()) ? 1: 0; } }) if(managersAssignee.size() > 0) issue.setAssigneeId(managersAssignee.get(0)) break; case "Y": CustomField assignedTeam = ComponentAccessor.getCustomFieldManager().getCustomFieldObjectByName("Assigned Team") issue.setCustomFieldValue(assignedTeam, groupManager.getGroupObject("IT SOFTWARE")) break; }
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.