Use behavior to set the issue type when you create a issue using ScriptRunner.
The id of the issuetype is not changed
But it doesn't work.
Can someone look at it for me!
Here is my code:
============
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.greenhopper.service.sprint.Sprint
import org.apache.log4j.Logger
import org.apache.log4j.Level
def log = Logger.getLogger("order-numerical-task")
log.setLevel(Level.DEBUG)
def prop = ComponentAccessor.getApplicationProperties()
import static com.atlassian.jira.issue.IssueFieldConstants.ISSUE_TYPE
if ("order-numerical-task" == getBehaviourContextId()) {
def issueManager = ComponentAccessor.getIssueManager()
def fieldManager = ComponentAccessor.getCustomFieldManager()
def contextIssue = issueManager.getIssueObject(getContextIssueId())
// issuetype
//def issueTypeField = getFieldById(ISSUE_TYPE).setFormValue('数值').setReadOnly(true)
//// only change the field label but id is not changed
getFieldById("issuetype-field").setFormValue("Task").setReadOnly(true)
//getFieldById("issuetype").setFormValue(10301L)
// project
getFieldById("project-field").setFormValue(contextIssue.getProjectObject().name).setReadOnly(true)
getFieldById("project").setFormValue(contextIssue.getProjectObject().id.toString()).setReadOnly(true)
log.debug "=====issuetypeId="+getFieldById("issuetype")
// summary
getFieldById("summary").setFormValue(contextIssue.summary)
// description
getFieldById("description").setFormValue(contextIssue.description)
getFieldById("issuelinks-linktype").setFormValue("relates to").setReadOnly(true)
getFieldById("issuelinks-issues").setFormValue(contextIssue.key).setReadOnly(true)
getFieldById("priority").setFormValue(contextIssue.priorityId)
getFieldById("components").setRequired(true)
getFieldById("reporter").setFormValue(contextIssue.getReporter().name)
getFieldById("issuelinks-issues").setHidden(true)
getFieldById("assignee").setHidden(true)
log.debug "=====end="
}