suspend coroutines
This commit is contained in:
@@ -11,13 +11,16 @@ class BudgetMapper(private val categoryMapper: CategoryMapper) : FromDocumentMap
|
||||
|
||||
|
||||
override fun fromDocument(document: Document): Budget {
|
||||
val spaceId = document.get("spaceDetails", Document::class.java)?.getObjectId("_id")?.toString()
|
||||
val categoriesList = document.getList("categories", Document::class.java).orEmpty()
|
||||
val incomeCategoriesList = document.getList("incomeCategories", Document::class.java).orEmpty()
|
||||
return Budget(
|
||||
id = document.getObjectId("_id").toString(),
|
||||
space = Space(id = document.get("spaceDetails", Document::class.java).getObjectId("_id").toString()),
|
||||
space = Space(id=spaceId),
|
||||
name = document.getString("name"),
|
||||
dateFrom = document.getDate("dateFrom").toInstant().atZone(ZoneId.systemDefault()).toLocalDate(),
|
||||
dateTo = document.getDate("dateTo").toInstant().atZone(ZoneId.systemDefault()).toLocalDate(),
|
||||
categories = document.getList("categories", Document::class.java).map { cat ->
|
||||
categories = categoriesList.map { cat ->
|
||||
val categoryDetailed = document.getList("categoriesDetails", Document::class.java).first {
|
||||
it.getObjectId("_id").toString() == cat.get("category", DBRef::class.java).id.toString()
|
||||
}
|
||||
@@ -26,7 +29,7 @@ class BudgetMapper(private val categoryMapper: CategoryMapper) : FromDocumentMap
|
||||
currentLimit = cat.getDouble("currentLimit")
|
||||
)
|
||||
}.toMutableList(),
|
||||
incomeCategories = document.getList("incomeCategories", Document::class.java).map { cat ->
|
||||
incomeCategories = incomeCategoriesList.map { cat ->
|
||||
val categoryDetailed =
|
||||
document.getList("incomeCategoriesDetails", Document::class.java).first { it ->
|
||||
it.getObjectId("_id").toString() == cat.get("category", DBRef::class.java).id.toString()
|
||||
|
||||
Reference in New Issue
Block a user