From f67cf3b81a00f732ca743431258ae6b78f5f40ab Mon Sep 17 00:00:00 2001
From: tj <1378534974@qq.com>
Date: 星期四, 17 四月 2025 15:05:28 +0800
Subject: [PATCH] 11、我的	切换头像  点击切换头像没有显示允许存储权限的窗口,华为的手机目前有 49、首页	实时刷新  点击全部取件或其他分类后,回到上一层,内容没有刷新(5个分类) 52、数据统计	数据统计  1.周月年的柱状图统计逻辑需要修改为只统计快递类的数据  2.按年的图形统计,右下方加上图示说明 53、首页	首页登录  点击用户协议、隐私政策无反应

---
 app/src/main/java/com/example/firstapp/database/dao/CodeDao.kt |   32 ++++++++++++++++++++------------
 1 files changed, 20 insertions(+), 12 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..e63ba6a 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
@@ -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