From e103a70d2ac198ebbd7493eb657e2cd23089d028 Mon Sep 17 00:00:00 2001 From: cloudroam <cloudroam> Date: 星期五, 18 四月 2025 15:43:46 +0800 Subject: [PATCH] fix : 列表图标 --- app/src/main/java/com/example/firstapp/database/dao/CodeDao.kt | 34 +++++++++++++++++++++------------- 1 files changed, 21 insertions(+), 13 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 d8b0118..455c801 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 @@ -54,7 +54,7 @@ SELECT * FROM Code WHERE oneLevel LIKE '%' || :keyword || '%' AND pickup = '0' - ORDER BY time DESC + ORDER BY createTime DESC """) fun getByKeyword(keyword: String): List<Code> @@ -86,16 +86,16 @@ @Query(""" SELECT * FROM code WHERE substr(createTime, 1, 10) = - date(:date/1000, 'unixepoch', 'localtime') and pickup = 1 + date(:date/1000, 'unixepoch', 'localtime') and pickup = 1 and category='快递' ORDER BY createTime DESC """) - fun getPackagesByDayUnread(date: Long): Flow<List<Code>> + fun getPackagesByDayReaded(date: Long): Flow<List<Code>> @Query(""" SELECT oneLevel as courierName, COUNT(*) as count FROM code WHERE strftime('%Y-%W', substr(createTime, 1, 10)) = - strftime('%Y-%W', datetime(:date/1000, 'unixepoch', 'localtime')) + strftime('%Y-%W', datetime(:date/1000, 'unixepoch', 'localtime')) and category='快递' GROUP BY oneLevel ORDER BY count DESC """) @@ -135,7 +135,7 @@ SELECT oneLevel as courierName, COUNT(*) as count FROM code WHERE strftime('%Y-%m', substr(createTime, 1, 10)) = - strftime('%Y-%m', datetime(:date/1000, 'unixepoch', 'localtime')) + strftime('%Y-%m', datetime(:date/1000, 'unixepoch', 'localtime')) and category='快递' GROUP BY oneLevel ORDER BY count DESC """) @@ -145,7 +145,7 @@ SELECT oneLevel as courierName, COUNT(*) as count FROM code WHERE strftime('%Y', substr(createTime, 1, 10)) = - strftime('%Y', datetime(:date/1000, 'unixepoch', 'localtime')) + strftime('%Y', datetime(:date/1000, 'unixepoch', 'localtime')) and category='快递' GROUP BY oneLevel ORDER BY count DESC """) @@ -202,7 +202,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 and code.category='快递' GROUP BY dates.date ORDER BY dates.date """) @@ -237,12 +237,12 @@ ) SELECT strftime('%m', month_start) as date, - COUNT(code.id) as count, + COUNT(c.id) as count, strftime('%Y-%m-%d', month_start) as weekStart - FROM months - 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 + FROM months m + LEFT JOIN code c ON strftime('%Y-%m', c.createTime) = strftime('%Y-%m', m.month_start) and c.category='快递' + GROUP BY m.month_start + ORDER BY m.month_start ASC """) fun getYearMonthlyStats(date: Long): Flow<List<DailyStat>> @@ -335,9 +335,17 @@ COUNT(c.id) AS count, '' AS weekStart FROM dates d - LEFT JOIN code c ON date(c.createTime) = d.date_value + LEFT JOIN code c ON date(c.createTime) = d.date_value and c.category='快递' GROUP BY d.date_value ORDER BY d.date_value ASC """) fun getWeeklyStatsChart(startDateCur: String, endDateCur: String): Flow<List<DailyStat>> + + + @Query(""" + SELECT COUNT(1) + FROM code + WHERE date(createTime) BETWEEN date(:startDateCur) AND date(:endDateCur) and category =:type + """) + fun getDateStatsByType(startDateCur: String, endDateCur: String,type: String): Flow<Long> } -- Gitblit v1.9.3