Snippets

Adaptavist Auto assigning a user based on a combination of two different custom fields

Updated by Mark McCormack

File AutoAssign Modified

  • Ignore whitespace
  • Hide word diff
 def thirdPartyRelationship = issue.getCustomFieldValue(selectCf)
 
 if (purchaseAmount < 5000) {
-    issue.setAssigneeId('agrant')
+    issue.setAssigneeId('user1') // Change user1 to the appropriate user in JIRA
 } else {
     if ((purchaseAmount >= 5000) && (purchaseAmount <= 10000)) {
         if (thirdPartyRelationship == 'value A') {
Updated by Mark McCormack

File AutoAssign Modified

  • Ignore whitespace
  • Hide word diff
 // and the Third Party Relationship was chosen from a single select list
 // then the Assignee is assigned automatically as part of a create issue transition post function
 import com.atlassian.jira.component.ComponentAccessor
-import com.atlassian.jira.issue.fields.CustomField
 
-def projectComponentManager = ComponentAccessor.getProjectComponentManager()
 def customFieldManager = ComponentAccessor.getCustomFieldManager()
-def userUtil = ComponentAccessor.getUserUtil()
 def numberCf = customFieldManager.getCustomFieldObjectByName("Purchase Amount")
 def selectCf = customFieldManager.getCustomFieldObjectByName("Third Party Relationship")
 def purchaseAmount = issue.getCustomFieldValue(numberCf) as double
 def thirdPartyRelationship = issue.getCustomFieldValue(selectCf)
 
 if (purchaseAmount < 5000) {
-    issue.setAssigneeId('user1') // Change user1 to the appropriate user in JIRA
-} else if ((purchaseAmount >= 5000) && (purchaseAmount <= 10000)) {
-    if (thirdPartyRelationsip == 'value A') {
-        issue.setAssigneeId('user1') // Change user1 to the appropriate user in JIRA
-    } else {
-        issue.setAssigneeId("user2") // Change user2 to the appropriate user in JIRA
-    } 
+    issue.setAssigneeId('agrant')
 } else {
-    issue.setAssigneeId("user2") // Change user2 to the appropriate user in JIRA
+    if ((purchaseAmount >= 5000) && (purchaseAmount <= 10000)) {
+        if (thirdPartyRelationship == 'value A') {
+             issue.setAssigneeId('user1') // Change user1 to the appropriate user in JIRA
+        } else {
+            issue.setAssigneeId("user2") // Change user2 to the appropriate user in JIRA
+        }
+    } else { // purchaseAmount > 10,000 and thirdPartyRelationship should be irrelevant
+        issue.setAssigneeId("user2") // Change user2 to the appropriate user in JIRA
+    }
 }
Updated by Mark McCormack

File AutoAssign Modified

  • Ignore whitespace
  • Hide word diff
 // and the Third Party Relationship was chosen from a single select list
 // then the Assignee is assigned automatically as part of a create issue transition post function
 import com.atlassian.jira.component.ComponentAccessor
-import com.atlassian.jira.user.ApplicationUser
 import com.atlassian.jira.issue.fields.CustomField
 
 def projectComponentManager = ComponentAccessor.getProjectComponentManager()
 def customFieldManager = ComponentAccessor.getCustomFieldManager()
 def userUtil = ComponentAccessor.getUserUtil()
-def userCf = customFieldManager.getCustomFieldObjectByName("UserPicker")
 def numberCf = customFieldManager.getCustomFieldObjectByName("Purchase Amount")
 def selectCf = customFieldManager.getCustomFieldObjectByName("Third Party Relationship")
 def purchaseAmount = issue.getCustomFieldValue(numberCf) as double
+def thirdPartyRelationship = issue.getCustomFieldValue(selectCf)
 
 if (purchaseAmount < 5000) {
-    issue.setAssigneeId('user1')
+    issue.setAssigneeId('user1') // Change user1 to the appropriate user in JIRA
 } else if ((purchaseAmount >= 5000) && (purchaseAmount <= 10000)) {
-    if (selectCf == 'value A') {
-        issue.setAssigneeId('user1')
+    if (thirdPartyRelationsip == 'value A') {
+        issue.setAssigneeId('user1') // Change user1 to the appropriate user in JIRA
     } else {
-        issue.setAssigneeId("user2")
+        issue.setAssigneeId("user2") // Change user2 to the appropriate user in JIRA
     } 
 } else {
-    issue.setAssigneeId("user2")
+    issue.setAssigneeId("user2") // Change user2 to the appropriate user in JIRA
 }
Created by Mark McCormack

File AutoAssign Added

  • Ignore whitespace
  • Hide word diff
+// This was a request from a potential customer
+// The requirements were that the price was entered as a number
+// and the Third Party Relationship was chosen from a single select list
+// then the Assignee is assigned automatically as part of a create issue transition post function
+import com.atlassian.jira.component.ComponentAccessor
+import com.atlassian.jira.user.ApplicationUser
+import com.atlassian.jira.issue.fields.CustomField
+
+def projectComponentManager = ComponentAccessor.getProjectComponentManager()
+def customFieldManager = ComponentAccessor.getCustomFieldManager()
+def userUtil = ComponentAccessor.getUserUtil()
+def userCf = customFieldManager.getCustomFieldObjectByName("UserPicker")
+def numberCf = customFieldManager.getCustomFieldObjectByName("Purchase Amount")
+def selectCf = customFieldManager.getCustomFieldObjectByName("Third Party Relationship")
+def purchaseAmount = issue.getCustomFieldValue(numberCf) as double
+
+if (purchaseAmount < 5000) {
+    issue.setAssigneeId('user1')
+} else if ((purchaseAmount >= 5000) && (purchaseAmount <= 10000)) {
+    if (selectCf == 'value A') {
+        issue.setAssigneeId('user1')
+    } else {
+        issue.setAssigneeId("user2")
+    } 
+} else {
+    issue.setAssigneeId("user2")
+}
HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.