From 661a264fef5d1a23ba850c9f65ac79c0127b3d1d Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期二, 01 四月 2025 15:59:10 +0800
Subject: [PATCH] fix : 样式
---
app/src/main/java/com/example/firstapp/database/dao/CodeDao.kt | 76 +++++++++++++++++++++++++-------------
1 files changed, 50 insertions(+), 26 deletions(-)
diff --git a/app/src/main/java/com/example/firstapp/database/dao/CodeDao.kt b/app/src/main/java/com/example/firstapp/database/dao/CodeDao.kt
index e7dc073..58bcc20 100644
--- a/app/src/main/java/com/example/firstapp/database/dao/CodeDao.kt
+++ b/app/src/main/java/com/example/firstapp/database/dao/CodeDao.kt
@@ -10,6 +10,7 @@
import com.example.firstapp.model.CourierStat
import com.example.firstapp.model.DailyStat
import com.example.firstapp.model.HeatmapStat
+import com.example.firstapp.model.StationGroup
import io.reactivex.Completable
import kotlinx.coroutines.flow.Flow
@@ -35,7 +36,7 @@
@Query("SELECT * FROM Code")
fun getAllCodes(): List<Code>
- @Query("SELECT * FROM Code WHERE type = :type")
+ @Query("SELECT * FROM Code WHERE oneLevel = :type")
fun getCodesByType(type: String): List<Code>
@@ -48,37 +49,43 @@
@Query("""
SELECT * FROM Code
- WHERE type LIKE '%' || :keyword || '%'
+ WHERE oneLevel LIKE '%' || :keyword || '%'
AND pickup = '0'
ORDER BY time DESC
""")
fun getByKeyword(keyword: String): List<Code>
- @Query("SELECT * FROM Code WHERE type = :content and code= :code and createtime = :dateString LIMIT 1")
- fun queryByTypeAndCodeAndDate(content: String, code: String, dateString: String): Code
+ @Query("""
+ SELECT * FROM Code
+ WHERE category = :category
+ AND code = :code
+ AND substr(createTime, 1, 10) = substr(:dateString, 1, 10)
+ LIMIT 1
+ """)
+ fun queryByTypeAndCodeAndDate(category: String, code: String, dateString: String): Code?
@Query("update Code set pickup = '1' , pickuptime = CURRENT_TIMESTAMP where id=:id")
fun pickup(id: Long)
//查询当天包裹信息
- @Query("SELECT * FROM code WHERE date(createtime) = date(:date/1000, 'unixepoch', 'localtime') ORDER BY createtime DESC")
+ @Query("SELECT * FROM code WHERE date(createTime) = date(:date/1000, 'unixepoch', 'localtime') ORDER BY createTime DESC")
fun getNewPackagesByDay(date: Long): List<Code>
@Query("""
SELECT * FROM code
- WHERE substr(createtime, 1, 10) =
+ WHERE substr(createTime, 1, 10) =
date(:date/1000, 'unixepoch', 'localtime')
- ORDER BY createtime DESC
+ ORDER BY createTime DESC
""")
fun getPackagesByDay(date: Long): Flow<List<Code>>
@Query("""
- SELECT type as courierName, COUNT(*) as count
+ SELECT oneLevel as courierName, COUNT(*) as count
FROM code
- WHERE strftime('%Y-%W', substr(createtime, 1, 10)) =
+ WHERE strftime('%Y-%W', substr(createTime, 1, 10)) =
strftime('%Y-%W', datetime(:date/1000, 'unixepoch', 'localtime'))
- GROUP BY type
+ GROUP BY oneLevel
ORDER BY count DESC
""")
fun getCourierStatsByWeek(date: Long): Flow<List<CourierStat>>
@@ -98,7 +105,7 @@
COUNT(c.id) as count,
date_value as weekStart
FROM dates d
- LEFT JOIN code c ON strftime('%Y-%m-%d', c.createtime) BETWEEN
+ LEFT JOIN code c ON strftime('%Y-%m-%d', c.createTime) BETWEEN
strftime('%Y-%m-%d', d.date_value)
AND strftime('%Y-%m-%d', date(d.date_value, '+6 days'))
GROUP BY d.date_value
@@ -109,28 +116,28 @@
@Query("""
SELECT * FROM code
- WHERE substr(createtime, 1, 10) =
+ WHERE substr(createTime, 1, 10) =
date(:date/1000, 'unixepoch', 'localtime')
- ORDER BY createtime DESC
+ ORDER BY createTime DESC
""")
fun getPackagesByWeek(date: Long): Flow<List<Code>>
@Query("""
- SELECT type as courierName, COUNT(*) as count
+ SELECT oneLevel as courierName, COUNT(*) as count
FROM code
- WHERE strftime('%Y-%m', substr(createtime, 1, 10)) =
+ WHERE strftime('%Y-%m', substr(createTime, 1, 10)) =
strftime('%Y-%m', datetime(:date/1000, 'unixepoch', 'localtime'))
- GROUP BY type
+ GROUP BY oneLevel
ORDER BY count DESC
""")
fun getCourierStatsByMonth(date: Long): Flow<List<CourierStat>>
@Query("""
- SELECT type as courierName, COUNT(*) as count
+ SELECT oneLevel as courierName, COUNT(*) as count
FROM code
- WHERE strftime('%Y', substr(createtime, 1, 10)) =
+ WHERE strftime('%Y', substr(createTime, 1, 10)) =
strftime('%Y', datetime(:date/1000, 'unixepoch', 'localtime'))
- GROUP BY type
+ GROUP BY oneLevel
ORDER BY count DESC
""")
fun getCourierStatsByYear(date: Long): Flow<List<CourierStat>>
@@ -148,7 +155,7 @@
// COUNT(code.id) as count,
// month_start as week_start
// FROM months
-// LEFT JOIN code ON strftime('%Y-%m', code.createtime) = strftime('%Y-%m', months.month_start)
+// LEFT JOIN code ON strftime('%Y-%m', code.createTime) = strftime('%Y-%m', months.month_start)
// GROUP BY months.month_start
// ORDER BY months.month_start ASC
// """)
@@ -167,7 +174,7 @@
COUNT(code.id) as count,
year_start as week_start
FROM years
- LEFT JOIN code ON strftime('%Y', code.createtime) = strftime('%Y', years.year_start)
+ LEFT JOIN code ON strftime('%Y', code.createTime) = strftime('%Y', years.year_start)
GROUP BY years.year_start
ORDER BY years.year_start ASC
""")
@@ -186,7 +193,7 @@
CAST(strftime('%W', dates.date) AS INTEGER) as weekOfYear,
COUNT(code.id) as count
FROM dates
- LEFT JOIN code ON date(code.createtime) = dates.date
+ LEFT JOIN code ON date(code.createTime) = dates.date
GROUP BY dates.date
ORDER BY dates.date
""")
@@ -205,7 +212,7 @@
COUNT(code.id) as count,
days.date as week_start
FROM days
- LEFT JOIN code ON date(code.createtime) = days.date
+ LEFT JOIN code ON date(code.createTime) = days.date
GROUP BY days.date
ORDER BY days.date ASC
""")
@@ -224,7 +231,7 @@
COUNT(code.id) as count,
month_start as weekStart
FROM months
- LEFT JOIN code ON strftime('%Y-%m', code.createtime) = strftime('%Y-%m', months.month_start)
+ LEFT JOIN code ON strftime('%Y-%m', code.createTime) = strftime('%Y-%m', months.month_start)
GROUP BY months.month_start
ORDER BY months.month_start ASC
""")
@@ -245,7 +252,7 @@
COUNT(code.id) as count,
days.date as weekStart
FROM days
- LEFT JOIN code ON date(code.createtime) = days.date
+ LEFT JOIN code ON date(code.createTime) = days.date
GROUP BY days.date
ORDER BY days.date ASC
""")
@@ -258,7 +265,24 @@
COUNT(id) as count,
datetime(:date/1000, 'unixepoch', 'localtime') as weekStart
FROM code
- WHERE strftime('%Y', createtime) = strftime('%Y', datetime(:date/1000, 'unixepoch', 'localtime'))
+ WHERE strftime('%Y', createTime) = strftime('%Y', datetime(:date/1000, 'unixepoch', 'localtime'))
""")
fun getCurrentYearStats(date: Long): Flow<List<DailyStat>>
+
+ @Query("""
+ SELECT oneLevel as stationName, COUNT(*) as count
+ FROM Code
+ WHERE category = :type AND pickup = '0'
+ GROUP BY oneLevel
+ ORDER BY createTime DESC
+ """)
+ fun getStationsByType(type: String): List<StationGroup>
+
+ @Query("""
+ SELECT * FROM Code
+ WHERE category = :type AND pickup = '0'
+ AND oneLevel = :stationName
+ ORDER BY createTime DESC
+ """)
+ fun getPackagesByTypeAndStation(type: String, stationName: String): List<Code>
}
--
Gitblit v1.9.3