cloudroam
2025-03-04 2a117297daf83b2e1a104603e9641226d5beeba3
app/src/main/java/com/example/firstapp/database/repository/CodeRepository.kt
@@ -3,6 +3,9 @@
import androidx.annotation.WorkerThread
import com.example.firstapp.database.dao.CodeDao
import com.example.firstapp.database.entity.Code
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.withContext
class CodeRepository(private val codeDao: CodeDao) {
@@ -23,9 +26,30 @@
    }
    fun queryByTypeAndCodeAndDate(content: String, code: String, dateString: String): Code {
        return codeDao.queryByTypeAndCodeAndDate(content,code,dateString)
        return codeDao.queryByTypeAndCodeAndDate(content, code, dateString)
    }
    @WorkerThread
    fun pickup(id: Long) = codeDao.pickup(id)
    fun getPackages(date: Long, dateType: String): Flow<List<Code>> {
        return when (dateType) {
            "DAY" -> codeDao.getPackagesByDay(date)
            "WEEK" -> codeDao.getPackagesByWeek(date)
            else -> codeDao.getPackagesByDay(date)
        }
    }
    fun getCourierStats(date: Long) = codeDao.getCourierStatsByWeek(date)
    fun getDailyStats(date: Long) = codeDao.getDailyStatsByWeek(date)
    @WorkerThread
    fun getPackagesByDay(date: Long): List<Code> {
        return codeDao.getNewPackagesByDay(date)
    }
}