import com.yinjie.heating.common.entity.store.StoreInfo import com.yinjie.heating.common.entity.store.StorePlatform import org.apache.commons.lang3.StringUtils class GroovyExtensions { static void apply() { List.metaClass { findQuotedElement = { Map conditions -> delegate.find { element -> conditions.every { condition, value -> element[condition] == value } } } findQuotedElements = { Map conditions -> delegate.findAll { element -> conditions.every { condition, value -> element[condition] == value } } } } StoreInfo.metaClass { requireItem = { String platformCode, String requireCode -> def storeInfo = delegate as StoreInfo StorePlatform storePlatform = storeInfo.platformList.find { StringUtils.equalsIgnoreCase(it.platformCode, platformCode) } if (storePlatform == null) { return null } return storePlatform.requireList.find {StringUtils.equalsIgnoreCase(it.platformRequireCode, requireCode)} } } } }