我有一系列的帐单,这些帐单的公司存储在单独的集合中。我需要遍历整个开票人列表,使用存储在开票人中的companyId获取公司信息,并将公司信息与开票人信息一起添加到我的回复中。
以前,我是使用awaitResult来完成此操作的,但很快就会弃用它,因此我希望有一种更好的方法。
fun parseBillers(billers:JsonArray):JsonArray{
billers.forEach { biller ->
biller as JsonObject
val companyId = biller.getString("companyId")
biller.put("companyList", getCompany(companyId))
}
return billers
}
fun getCompany(comapnyId:String):JsonObject{
val response = JsonObject()
vertx.eventBus().send<JsonObject>("db.Companies.findById",companyId){ h->
if(h.succeeded()){
response = h.result().body())
}else
{
println(h.cause())
}
}
return response
}