use*_*r32 -1 string groovy compare jira
? 有一个 groovy 脚本,用于检查屏幕上字段值列表中的值(如果存在)。
import com.atlassian.jira.component.ComponentAccessor;
import org.apache.log4j.Logger
import org.apache.log4j.Level
import com.atlassian.jira.user.ApplicationUser;
import java.lang.Object
def groupManager = ComponentAccessor.getGroupManager();
def customFieldManager = ComponentAccessor.getCustomFieldManager();
def eManagerCF = customFieldManager.getCustomFieldObjectByName("Ek Manager")
def dedManagerCF = customFieldManager.getCustomFieldObjectByName("Ded Manager")
def depManagerCF = customFieldManager.getCustomFieldObjectByName("Dep Manager ")
String eManager = issue.getCustomFieldValue(eManagerCF)
String dedManager = issue.getCustomFieldValue(dedManagerCF)
String depManager = issue.getCustomFieldValue(depManagerCF)
if (eManager) {
eManager = eManager.trim()
}
if (dedManager) {
dedManager = dedManager.trim()
}
if (depManager) {
depManager = depManager.trim()
}
cfValues['2. Onay'] ? .value == null && cfValues['1.Adim '] ? .value != "Helpdesk" && cfValues['1. Onay '] ? .value == "Ilgili Yönetici " &&
(!groupManager.getUsersInGroup('ITSM Onaya Gitmeyecek Personeller ').contains(eManager) ||
!groupManager.getUserNamesInGroup('ITSM Onaya Gitmeyecek Personeller ').contains(dedManager) ||
!groupManager.getUsersInGroup('ITSM Onaya Gitmeyecek Personeller ').contains(depManager))
Run Code Online (Sandbox Code Playgroud)
所以我的问题是: String dedManager= issue.getCustomFieldValue(dedManagerCF) 返回 aaa.bbb@xx.com
groupManager.getUsersInGroup('ITSM Onaya Gitmeyecek Personeller) 返回包含 Aaa.Bbb@xx.com 等用户名的列表
所以方法 groupManager.getUsersInGroup('ITSM Onaya Gitmeyecek Personeller').contains(depManager)) 总是返回 false
你能帮忙吗?
简化您的问题:如何在忽略大小写的列表中查找字符串值。
def str = 'Aaa.Bbb@xx.com'
def list = ['xxx.yyy@zz.com','aaa.bbb@xx.com']
if( list.find{e-> e.equalsIgnoreCase(str)} ){
println "found"
}
Run Code Online (Sandbox Code Playgroud)
或者,如果您确定该列表始终包含小写项目,只需在应用之前将字符串转换为小写 contains
def str = 'Aaa.Bbb@xx.com'
def list = ['xxx.yyy@zz.com','aaa.bbb@xx.com']
str = str.toLowerCase()
if( str in list ){
println "found"
}
Run Code Online (Sandbox Code Playgroud)