我正在尝试在生成新发票时向客户发送电子邮件。但要做到这一点,我需要得到发票和客户的ID。我的问题是,我用来获取发票或客户的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
}
我在作为参数传递的domainMap中的我将类的完整名称和对象的id作为Map传递。并使用上面的代码我想得到该类的对象与该ID,以便我可以得到其他属性,我将返回一个对象的地图,其类名作为键。任何理由为什么它不是表现一致。
答案 0 :(得分:0)
我很困惑,您是在脚本中还是在应用程序中执行此操作?为什么不
def invoices = MyInvoiceDomainClass.findAll()
invoices.each{invoice->
invoice.whatever...
}