2
我试图在生成新发票时向客户发送电子邮件。但要做到这一点,我需要获得发票和客户的ID。我的问题是,我正在使用以获取发票或客户的ID是给我的反应不一致的代码,我的意思是它的工作原理有时,有时一点儿也不没有在grails/java中始终获得对象ID
这里是有关的代码:
protected Map getObjectsMap(Map domainMap){
Map objectsMap = [:]
domainMap.each{key,value->
def dc = grailsApplication.domainClasses.find{it.getFullName().equals(key)}
def obj = dc.clazz.get(value)
if(!obj)
log.error "Could not find object of type $key with id=$value"
String objectName = key.substring(key.lastIndexOf(".")+1)
objectName = objectName.charAt(0).toLowerCase().toString() + objectName.substring(1)
objectsMap.put(objectName, obj)
}
return objectsMap
}
在我作为参数传递的域映射中,我传递类的完整名称和对象的ID作为映射。并使用上面的代码我想用该ID获得该类的对象,以便我可以获取其他属性来处理,并且我返回一个对象的映射图,并将它们的类名作为key。关于为什么它不是表现一贯。