From 97745e7ad15fb3d175f81dfdd2f24269e8fdfefd Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期四, 03 四月 2025 15:04:27 +0800
Subject: [PATCH] fix : 编译报错

---
 app/src/main/java/com/example/firstapp/database/dao/CodeDao.kt |   16 +++++++---------
 1 files changed, 7 insertions(+), 9 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 58bcc20..7572a45 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
@@ -92,10 +92,8 @@
 
     @Query("""
     WITH RECURSIVE dates(date_value) AS (
-        -- 从当前日期往前3周的周一开始
         SELECT date(datetime(:date/1000, 'unixepoch', 'localtime'), 'weekday 0', '-21 days') as date_value
         UNION ALL
-        -- 每次加7天,直到后2周
         SELECT date(date_value, '+7 days')
         FROM dates
         WHERE date_value < date(datetime(:date/1000, 'unixepoch', 'localtime'), 'weekday 0', '+14 days')
@@ -103,7 +101,7 @@
     SELECT 
         strftime('%Y-%m-%d', date_value) as date,
         COUNT(c.id) as count,
-        date_value as weekStart
+        strftime('%Y-%m-%d', date_value) as weekStart
     FROM dates d
     LEFT JOIN code c ON strftime('%Y-%m-%d', c.createTime) BETWEEN 
         strftime('%Y-%m-%d', d.date_value) 
@@ -172,7 +170,7 @@
         SELECT 
             strftime('%Y', year_start) as date,
             COUNT(code.id) as count,
-            year_start as week_start
+            strftime('%Y-%m-%d', year_start) as weekStart
         FROM years 
         LEFT JOIN code ON strftime('%Y', code.createTime) = strftime('%Y', years.year_start)
         GROUP BY years.year_start
@@ -208,9 +206,9 @@
             WHERE date < date(datetime(:date/1000, 'unixepoch', 'localtime'), 'start of month', '+1 month', '-1 day')
         )
         SELECT 
-            strftime('%d', days.date) || '' as date,  -- 确保 date 不为空
+            strftime('%d', days.date) || '' as date,
             COUNT(code.id) as count,
-            days.date as week_start
+            strftime('%Y-%m-%d', days.date) as weekStart
         FROM days 
         LEFT JOIN code ON date(code.createTime) = days.date
         GROUP BY days.date
@@ -229,7 +227,7 @@
         SELECT 
             strftime('%m', month_start) as date,
             COUNT(code.id) as count,
-            month_start as weekStart
+            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
@@ -250,7 +248,7 @@
     SELECT 
         strftime('%Y-%m-%d', days.date) as date,
         COUNT(code.id) as count,
-        days.date as weekStart
+        strftime('%Y-%m-%d', days.date) as weekStart
     FROM days 
     LEFT JOIN code ON date(code.createTime) = days.date
     GROUP BY days.date
@@ -263,7 +261,7 @@
     SELECT 
         strftime('%Y', datetime(:date/1000, 'unixepoch', 'localtime')) as date,
         COUNT(id) as count,
-        datetime(:date/1000, 'unixepoch', 'localtime') as weekStart
+        strftime('%Y-%m-%d', datetime(:date/1000, 'unixepoch', 'localtime')) as weekStart
     FROM code 
     WHERE strftime('%Y', createTime) = strftime('%Y', datetime(:date/1000, 'unixepoch', 'localtime'))
 """)

--
Gitblit v1.9.3