日报周报月报

This commit is contained in:
czz
2025-07-07 16:13:14 +08:00
parent a49075c2dd
commit 63305851cc
2 changed files with 36 additions and 9 deletions

View File

@@ -172,7 +172,7 @@ Widget MonthDataWidget(
},
),
],
tips: buildValueTexts(sleepReport['scoreList']['data'], '小时', 1),
tips: buildSleepValueTexts(sleepReport['csd']['data'], '小时', 1),
xCount: buildMonthlyChartData(sleepReport['scoreList'])['daysInMonth']
.toInt(),
yCount: sleepReport['csd']['yLable'].length,
@@ -560,6 +560,39 @@ List<String> buildValueTexts(
}).toList();
}
List<String> buildSleepValueTexts(
List<dynamic> data,
String unit,
int direction, // 0 左侧1 右侧
) {
if (data.isEmpty) return [];
return data.map((item) {
final dst = (item['dst'] ?? 0).toString();
final lst = (item['lst'] ?? 0).toString();
final slt = (item['slt'] ?? 0).toString();
final prefix = direction == 1 ? '' : unit;
final suffix = direction == 1 ? unit : '';
// 格式化日期(不带时间)
String dateStr = '';
if (item['st'] != null) {
final dt = DateTime.fromMillisecondsSinceEpoch(item['st']);
dateStr = "${dt.year}${dt.month.toString().padLeft(2, '0')}${dt.day.toString().padLeft(2, '0')}";
}
var q = [
"睡眠时长:$prefix$slt$suffix",
"深睡:$prefix$dst$suffix",
"浅睡:$prefix$lst$suffix",
dateStr,
].join("\n");
print(q);
return q;
}).toList();
}
Map<String, dynamic> buildMonthlyChartData(Map<String, dynamic> dyspData) {
final List<Map<String, dynamic>> data =
(dyspData['data'] as List?)?.whereType<Map<String, dynamic>>().toList() ??