User Tools

Site Tools


post_functions

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
post_functions [2018/02/02 14:09]
root [Add users to watch list on create or transition]
post_functions [2018/06/27 13:03] (current)
root
Line 72: Line 72:
     watchUsers(users)     watchUsers(users)
 } }
 +</code>
 +
 +=== Set custom text field value in field Approval Status with date/time & currentUser on POST transition ===
 +
 +<code java>
 +import com.atlassian.jira.component.ComponentAccessor
 +import com.atlassian.jira.issue.fields.CustomField
 +//Define cfm
 +def cfm = ComponentAccessor.getCustomFieldManager()
 +//Set custom text field for Text field called "Approval Status"
 +def cfApprovalStatus = cfm.getCustomFieldObjectByName("Approval Status")
 +def currentUser = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()
 +def currentDate = new Date().format( 'yyyy-MM-dd hh:mm a' )
 +def statusMessage = "Approved by "+currentUser+" at "+currentDate
 +issue.setCustomFieldValue(cfApprovalStatus,statusMessage)
 +</code>
 +
 +=== Set "Awaiting Approval" message in field "Approval Status" if there is a value in "Selected Approver" user picker field ===
 +<code java>
 +import com.atlassian.jira.component.ComponentAccessor
 +import com.atlassian.jira.issue.fields.CustomField
 +//define cfm
 +def cfm = ComponentAccessor.getCustomFieldManager()
 +
 +// get value for "Selected Approver"  and set status accordingly
 +def cfApprovalStatus = cfm.getCustomFieldObjectByName("Approval Status")
 +def SelApp = cfm.getCustomFieldObjectByName("Selected Approver")
 +def SelAppValue = issue.getCustomFieldValue(SelApp)
 +//If there is a value in the Selected Approver, set value in Approval Status
 +if (SelAppValue){
 + issue.setCustomFieldValue(cfApprovalStatus,"Awaiting Approval")
 +}
 +</code>
 +
 +=== Additional actions performed on Issue Clone post function ===
 +
 +<code java>
 +def cfD = customFieldManager.getCustomFieldObjects(issue).find {it.name == 'Deployers'}
 +def cfS = customFieldManager.getCustomFieldObjects(issue).find {it.name == 'Start Date'}
 +def cfE = customFieldManager.getCustomFieldObjects(issue).find {it.name == 'End Date'}
 +
 +issue.setCustomFieldValue(cfD, null)
 +issue.setCustomFieldValue(cfS, null)
 +issue.setCustomFieldValue(cfE, null)
 +
 +issue.summary = 'Available for use'
 +
 +import com.onresolve.scriptrunner.runner.util.UserMessageUtil
 +
 +UserMessageUtil.success('So... you think you can dance? :)')
 +</code>
 +
 +=== Update Select List (Drop Down) field Status with value Waiting Approval ===
 +
 +<code java>
 +import com.atlassian.jira.component.ComponentAccessor
 +def cfSelect = ComponentAccessor.customFieldManager.getCustomFieldObjectByName("Status")
 +def cfConfig = cfSelect.getRelevantConfig(issue)
 +def value = ComponentAccessor.optionsManager.getOptions(cfConfig)?.find {
 +    it.toString() == 'Waiting Approval'
 +}
 +issue.setCustomFieldValue(cfSelect, value)
 </code> </code>
post_functions.1517598564.txt.gz ยท Last modified: 2018/02/02 14:09 by root