簡體   English   中英

使用Groovy JAVA在JIRA中設置customField值

[英]Set a customField Value in JIRA with Groovy JAVA

好的,也許我對此很陌生,但是我正在嘗試使用此代碼,並且它沒有更新自定義字段值。

知道為什么不這樣做嗎? 我想這是我的目標。 任何幫助是極大的贊賞

def rush = getCustomFieldValue("Rush?") 
if (rush=="Yes") { 
    def cal = new java.util.GregorianCalendar();
    cal.setTimeInMillis(customField.setCustomFieldValue("Rush Date", getTime())); 
    return new java.sql.Timestamp(cal.getTimeInMillis()); 
} 
else { 
    return null
}

解決了

import com.atlassian.jira.ComponentManager
import com.atlassian.jira.issue.customfields.manager.OptionsManager

def componentManager = ComponentManager.instance
def optionsManager = ComponentManager.getComponentInstanceOfType(OptionsManager.class)
def customFieldManager = componentManager.getCustomFieldManager()

def cf = customFieldManager.getCustomFieldObjectByName("Rush?")
def rush = issue.getCustomFieldValue(cf)
def paymentDate = new Date()

if (rush?.value=="Yes"){
if (paymentDate){ 
    def cal = new java.util.GregorianCalendar();

    cal.setTimeInMillis(paymentDate.getTime()); 
    cal.add(java.util.Calendar.DAY_OF_MONTH, 0);

    return new java.sql.Timestamp(cal.getTimeInMillis()); 
} 
else { 
    return null 
}}

就目前而言,您的代碼片段對我失敗,出現以下錯誤:

捕獲:groovy.lang.MissingMethodException:方法的無簽名:Custom.getTime()適用於參數類型:()值:[]

那里的getTime()未被任何對象調用。 我猜您只想在setCustomFieldValue中設置customField ,因此, cal.setTimeInMillis() ¹:

def customField
customField = [
    'Rush?':'Yes',
    setCustomFieldValue : { field, value -> customField[field] = value }
]

getCustomFieldValue = { customField[it] }

def rush = getCustomFieldValue("Rush?") 
def cal = new java.util.GregorianCalendar()

def parseRush = {
    if (rush=="Yes") { 
        customField.setCustomFieldValue("Rush Date", cal.getTime())
        return new java.sql.Timestamp(cal.getTimeInMillis())
    } 
    else { 
        return null
    }
}

assert parseRush() == new java.sql.Timestamp(cal.timeInMillis)
assert customField['Rush Date'] == cal.time

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM