From 27bbd0435881e408f267c99e6a253d2e17873bcc Mon Sep 17 00:00:00 2001
From: tj <1378534974@qq.com>
Date: 星期五, 11 四月 2025 17:44:11 +0800
Subject: [PATCH] 1.2

---
 app/src/main/java/com/example/firstapp/database/repository/CodeRepository.kt |   34 +++++++++++++++++++++++++++++++++-
 1 files changed, 33 insertions(+), 1 deletions(-)

diff --git a/app/src/main/java/com/example/firstapp/database/repository/CodeRepository.kt b/app/src/main/java/com/example/firstapp/database/repository/CodeRepository.kt
index 915c13d..19aecf0 100644
--- a/app/src/main/java/com/example/firstapp/database/repository/CodeRepository.kt
+++ b/app/src/main/java/com/example/firstapp/database/repository/CodeRepository.kt
@@ -3,6 +3,8 @@
 import androidx.annotation.WorkerThread
 import com.example.firstapp.database.dao.CodeDao
 import com.example.firstapp.database.entity.Code
+import com.example.firstapp.model.DailyStat
+import com.example.firstapp.model.StationGroup
 import kotlinx.coroutines.flow.Flow
 
 
@@ -14,6 +16,9 @@
     @WorkerThread
     fun delete(id: Long) = codeDao.delete(id)
 
+    @WorkerThread
+    fun deleteAll() = codeDao.deleteAll()
+
     fun getAll() = codeDao.getAllCodes()
 
     fun getAllDesc() = codeDao.getAllCodesDesc()
@@ -23,7 +28,8 @@
         return codeDao.getByKeyword(keyword)
     }
 
-    fun queryByTypeAndCodeAndDate(content: String, code: String, dateString: String): Code {
+    @WorkerThread
+    fun queryByTypeAndCodeAndDate(content: String, code: String, dateString: String): Code? {
         return codeDao.queryByTypeAndCodeAndDate(content, code, dateString)
     }
 
@@ -34,6 +40,14 @@
     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 getPackagesUnread(date: Long, dateType: String): Flow<List<Code>> {
+        return when (dateType) {
+            "DAY" -> codeDao.getPackagesByDayUnread(date)
             "WEEK" -> codeDao.getPackagesByWeek(date)
             else -> codeDao.getPackagesByDay(date)
         }
@@ -70,4 +84,22 @@
 
     fun getYearMonthlyStats(date: Long) = codeDao.getYearMonthlyStats(date)
 
+
+    fun getCurrentWeekStats(date: Long) = codeDao.getCurrentWeekStats(date)
+
+    fun getCurrentYearStats(date: Long) = codeDao.getCurrentYearStats(date)
+
+    @WorkerThread
+    fun getStationsByType(type: String): List<StationGroup> {
+        return codeDao.getStationsByType(type)
+    }
+
+    @WorkerThread
+    fun getPackagesByTypeAndStation(type: String, stationName: String): List<Code> {
+        return codeDao.getPackagesByTypeAndStation(type, stationName)
+    }
+
+    fun getCurrentWeekStats2(startDateCur: String, endDateCur: String) = codeDao.getCurrentWeekStats2(startDateCur,endDateCur)
+    fun getWeeklyStatsChart(startDateCur: String, endDateCur: String): Flow<List<DailyStat>> = codeDao.getWeeklyStatsChart(startDateCur,endDateCur)
+
 }
\ No newline at end of file

--
Gitblit v1.9.3