Commit f9956c3e4e324457c52ca185a8e92ff11e36d8fe

Authored by 常守达
1 parent 937eb04a

fix(today):恢复睡眠合并

... ... @@ -811,26 +811,26 @@ class _StressBarChartState extends State<_StressBarChart> {
..sort((a, b) => a.fromTime.compareTo(b.fromTime));
// 2. 合并相邻且间隔小于 2 小时的睡眠区间,避免因短暂醒来分段导致多个床图标或跨天首尾大面积相连
// final mergedList = <V2SleepTimeRange>[];
// for (final range in sortedList) {
// if (mergedList.isEmpty) {
// mergedList.add(range);
// } else {
// final lastRange = mergedList.last;
// if (range.fromTime - lastRange.toTime <= 2 * 3600) {
// mergedList[mergedList.length - 1] = V2SleepTimeRange(
// fromTime: lastRange.fromTime,
// toTime: range.toTime > lastRange.toTime
// ? range.toTime
// : lastRange.toTime,
// );
// } else {
// mergedList.add(range);
// }
// }
// }
// 2. 不合并睡眠段,直接使用排序后的列表
final mergedList = sortedList;
final mergedList = <V2SleepTimeRange>[];
for (final range in sortedList) {
if (mergedList.isEmpty) {
mergedList.add(range);
} else {
final lastRange = mergedList.last;
if (range.fromTime - lastRange.toTime <= 0.5 * 3600) {
mergedList[mergedList.length - 1] = V2SleepTimeRange(
fromTime: lastRange.fromTime,
toTime: range.toTime > lastRange.toTime
? range.toTime
: lastRange.toTime,
);
} else {
mergedList.add(range);
}
}
}
// // 2. 不合并睡眠段,直接使用排序后的列表
// final mergedList = sortedList;
// 3. 渲染合并后的睡眠区间 Positioned widgets
for (final range in mergedList) {
... ...