Skip to content

Commit 00006f8

Browse files
committed
Add default values for date fields in Favourite and ImageSummary
1 parent b836eb2 commit 00006f8

File tree

4 files changed

+28
-3
lines changed

4 files changed

+28
-3
lines changed

core/model/src/main/kotlin/com/espressodev/gptmap/core/model/Favourite.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ data class Favourite(
1111
val placeholderImageUrl: String = "",
1212
val locationImages: List<LocationImage> = listOf(),
1313
val content: Content = Content(),
14-
val date: LocalDateTime
14+
val date: LocalDateTime = LocalDateTime.now()
1515
) {
1616
val placeholderTitle = "${content.city}, ${content.country}"
1717
val placeholderCoordinates = "${"%.4f".format(content.latitude)}°, ${"%.4f".format(content.longitude)}°"

core/model/src/main/kotlin/com/espressodev/gptmap/core/model/ImageSummary.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,5 @@ data class ImageSummary(
88
val id: String = "",
99
val imageUrl: String = "",
1010
val title: String = "",
11-
val date: LocalDateTime
11+
val date: LocalDateTime = LocalDateTime.now()
1212
)

core/mongodb/src/main/kotlin/com/espressodev/gptmap/core/mongodb/RealmSyncService.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,8 @@ interface RealmSyncService {
2525
suspend fun deleteImageAnalysis(imageAnalysisId: String): Result<Boolean>
2626

2727
suspend fun updateImageAnalysisText(imageAnalysisId: String, text: String): Result<Boolean>
28+
29+
suspend fun deleteFavourite(favouriteId: String): Result<Boolean>
30+
31+
suspend fun updateFavouriteText(favouriteId: String, text: String): Result<Boolean>
2832
}

core/mongodb/src/main/kotlin/com/espressodev/gptmap/core/mongodb/impl/RealmSyncServiceImpl.kt

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import io.realm.kotlin.UpdatePolicy
1515
import io.realm.kotlin.ext.query
1616
import kotlinx.coroutines.flow.Flow
1717
import kotlinx.coroutines.flow.map
18-
import kotlinx.coroutines.withContext
1918

2019
class RealmSyncServiceImpl : RealmSyncService {
2120

@@ -111,4 +110,26 @@ class RealmSyncServiceImpl : RealmSyncService {
111110
}
112111
true
113112
}
113+
114+
override suspend fun deleteFavourite(favouriteId: String): Result<Boolean> = runCatching {
115+
realm.write {
116+
val favouriteToDelete: RealmFavourite = query<RealmFavourite>("userId == $0 AND favouriteId == $1", realmUserId, favouriteId)
117+
.find()
118+
.first()
119+
delete(favouriteToDelete)
120+
}
121+
true
122+
}
123+
124+
override suspend fun updateFavouriteText(favouriteId: String, text: String): Result<Boolean> = runCatching {
125+
realm.write {
126+
val favouriteToUpdate: RealmFavourite = query<RealmFavourite>("userId == $0 AND favouriteId == $1", realmUserId, favouriteId)
127+
.find()
128+
.first()
129+
findLatest(favouriteToUpdate)?.let { realmFavourite ->
130+
realmFavourite.title = text
131+
}
132+
}
133+
true
134+
}
114135
}

0 commit comments

Comments
 (0)