forked from agzam/vyatsu-schedule
73 lines
2.6 KiB
Kotlin
73 lines
2.6 KiB
Kotlin
package agzam.vyatsu.data.local
|
|
|
|
import androidx.room.Dao
|
|
import androidx.room.Query
|
|
|
|
@Dao
|
|
interface PreferencesDao {
|
|
@Query("SELECT value FROM preferences WHERE key = 'selectedGroupId'")
|
|
suspend fun selectedGroupId(): String?
|
|
|
|
@Query(
|
|
"INSERT OR REPLACE INTO preferences(key, value) VALUES('selectedGroupId', :groupId)"
|
|
)
|
|
suspend fun setSelectedGroup(groupId: String)
|
|
|
|
@Query("DELETE FROM preferences WHERE key = 'selectedGroupId'")
|
|
suspend fun clearSelectedGroup()
|
|
|
|
@Query("SELECT value FROM preferences WHERE key = 'selectedWeekStart'")
|
|
suspend fun selectedWeekStart(): String?
|
|
|
|
@Query("INSERT OR REPLACE INTO preferences(key, value) VALUES('selectedWeekStart', :weekStart)")
|
|
suspend fun setSelectedWeekStart(weekStart: String)
|
|
|
|
@Query("SELECT value FROM preferences WHERE key = 'selectedDayDate'")
|
|
suspend fun selectedDayDate(): String?
|
|
|
|
@Query("INSERT OR REPLACE INTO preferences(key, value) VALUES('selectedDayDate', :date)")
|
|
suspend fun setSelectedDayDate(date: String)
|
|
|
|
@Query("SELECT value FROM preferences WHERE key = 'selectedTeacherId'")
|
|
suspend fun selectedTeacherId(): String?
|
|
|
|
@Query(
|
|
"INSERT OR REPLACE INTO preferences(key, value) VALUES('selectedTeacherId', :teacherId)"
|
|
)
|
|
suspend fun setSelectedTeacherId(teacherId: String)
|
|
|
|
@Query("SELECT value FROM preferences WHERE key = 'selectedTeacherWeekStart'")
|
|
suspend fun selectedTeacherWeekStart(): String?
|
|
|
|
@Query(
|
|
"INSERT OR REPLACE INTO preferences(key, value) VALUES('selectedTeacherWeekStart', :weekStart)"
|
|
)
|
|
suspend fun setSelectedTeacherWeekStart(weekStart: String)
|
|
|
|
@Query("SELECT value FROM preferences WHERE key = 'selectedTeacherDayDate'")
|
|
suspend fun selectedTeacherDayDate(): String?
|
|
|
|
@Query(
|
|
"INSERT OR REPLACE INTO preferences(key, value) VALUES('selectedTeacherDayDate', :date)"
|
|
)
|
|
suspend fun setSelectedTeacherDayDate(date: String)
|
|
|
|
@Query(
|
|
"DELETE FROM preferences WHERE key IN " +
|
|
"('selectedTeacherId', 'selectedTeacherWeekStart', 'selectedTeacherDayDate')"
|
|
)
|
|
suspend fun clearSelectedTeacher()
|
|
|
|
@Query("SELECT value FROM preferences WHERE key = 'autoUpdateEnabled'")
|
|
suspend fun autoUpdateEnabled(): String?
|
|
|
|
@Query("INSERT OR REPLACE INTO preferences(key, value) VALUES('autoUpdateEnabled', :enabled)")
|
|
suspend fun setAutoUpdateEnabled(enabled: String)
|
|
|
|
@Query("SELECT value FROM preferences WHERE key = 'autoUpdateAsked'")
|
|
suspend fun autoUpdateAsked(): String?
|
|
|
|
@Query("INSERT OR REPLACE INTO preferences(key, value) VALUES('autoUpdateAsked', :asked)")
|
|
suspend fun setAutoUpdateAsked(asked: String)
|
|
}
|