code-style fix, fix db code structure

This commit is contained in:
2026-02-14 13:43:21 +03:00
parent 7dd3358dac
commit 49b5100987
10 changed files with 60 additions and 36 deletions

View File

@@ -19,7 +19,7 @@ class ScheduleRepositoryImpl @Inject constructor(
override suspend fun loadScheduleByGroup(number: String): NetworkResult<ScheduleEntity> {
val result = remote.loadScheduleByGroup(number).map(mapper::invoke)
if (result is NetworkResult.Success) {
local.save(ScheduleCacheKey.group(number), result.data)
local.saveSchedule(ScheduleCacheKey.group(number), result.data)
}
return result
}
@@ -27,7 +27,7 @@ class ScheduleRepositoryImpl @Inject constructor(
override suspend fun loadScheduleByTeacher(name: String): NetworkResult<ScheduleEntity> {
val result = remote.loadScheduleByTeacher(name).map(mapper::invoke)
if (result is NetworkResult.Success) {
local.save(ScheduleCacheKey.teacher(name), result.data)
local.saveSchedule(ScheduleCacheKey.teacher(name), result.data)
}
return result
}

View File

@@ -3,7 +3,7 @@ package ru.fincode.tsudesk.feature.schedule.data.datasource
import ru.fincode.tsudesk.feature.schedule.domain.model.ScheduleEntity
interface ScheduleLocalDataSource {
suspend fun save(key: String, schedule: ScheduleEntity)
suspend fun load(key: String): ScheduleEntity?
suspend fun clear(key: String)
suspend fun saveSchedule(key: String, schedule: ScheduleEntity)
suspend fun loadSchedule(key: String): ScheduleEntity?
suspend fun removeSchedule(key: String)
}

View File

@@ -11,18 +11,18 @@ class ScheduleLocalDataSourceImpl @Inject constructor(
private val dao: ScheduleDao
) : ScheduleLocalDataSource {
override suspend fun save(key: String, schedule: ScheduleEntity) {
override suspend fun saveSchedule(key: String, schedule: ScheduleEntity) {
val (scheduleCache, lessonsCache) = schedule.toCache(key)
dao.replaceSchedule(key, scheduleCache, lessonsCache)
}
override suspend fun load(key: String): ScheduleEntity? {
override suspend fun loadSchedule(key: String): ScheduleEntity? {
val schedule = dao.getSchedule(key) ?: return null
val lessons = dao.getLessons(key)
return schedule.toDomain(lessons)
}
override suspend fun clear(key: String) {
override suspend fun removeSchedule(key: String) {
dao.deleteLessonsByKey(key)
}
}

View File

@@ -2,13 +2,17 @@ package ru.fincode.tsudesk.feature.schedule.data.mapper
import ru.fincode.tsudesk.core.database.schedule.LessonCacheEntity
import ru.fincode.tsudesk.core.database.schedule.ScheduleCacheEntity
import ru.fincode.tsudesk.core.database.schedule.ScheduleDbConstants.GROUP_PRE_KEY
import ru.fincode.tsudesk.core.database.schedule.ScheduleDbConstants.TEACHER_PRE_KEY
import ru.fincode.tsudesk.feature.schedule.domain.model.LessonEntity
import ru.fincode.tsudesk.feature.schedule.domain.model.ScheduleEntity
object ScheduleCacheKey {
fun group(number: String) = "group:$number"
fun teacher(name: String) = "teacher:$name"
fun group(number: String) = "$GROUP_PRE_KEY$number"
fun teacher(name: String) = "$TEACHER_PRE_KEY$name"
}