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.